Ansible: Playbook 개발을 위한 YAML 설정

Ansible Playbook 개발을 위한 YAML 설정

Ansible은 인프라스트럭처 관리를 위한 최신의 도구 중 하나입니다. Ansible을 사용하면 IT 인프라 구성 및 배포 작업을 자동화할 수 있으므로, 시간과 비용을 절약하고, 효율성을 높일 수 있습니다. 이를 위해 Ansible Playbook(앤서블 플레이북)라는 것을 사용하게 됩니다. Ansible Playbook은 YAML로 작성된 파일입니다.

이번 글에서는 Ansible Playbook 개발을 위한 YAML 에디터 설정을 알아보겠습니다. 앞서 언급한 것처럼, Ansible Playbook은 YAML 파일로 구성됩니다. 그러므로 자신이 사용하고 있는 텍스트 에디터가 YAML 파일을 지원해야합니다. YAML 작업을 편리하게 하기 위해서는, YAML 문법 하이라이팅, 알림 표시(인디케이터) 및 Ctrl + Space로 YAML 태그 및 속성을 자동 완성 기능을 제공하는 YAML 에디터를 사용하는 것이 좋습니다.

개발자마다 사용하는 도구에 대한 선호도가 다르므로, 여러 가지 YAML 에디터를 비교하여 사용하려는 목적에 가장 적합한 것을 선택하는 것이 중요합니다.

1. VS Code YAML 형식 구문 강조 기능 설정

VS Code는 현재 가장 널리 사용되는 텍스트 에디터 중 하나입니다. 하지만 기본 설정으로는 YAML 파일의 구문 강조가 제대로 되지 않기 때문에, YAML 파일 내 문법을 편하게 확인하기 어려운 상태입니다. 그러므로, YAML 형식 구문 강조 기능을 설정해주어야 하는데, 이는 다음과 같이 처리합니다.

  1. VS Code를 설치합니다.
  2. VS Code에서 YAML 파일을 선택하여 엽니다.
  3. Command + Shift + P(Windows에서는 Ctrl + Shift + P)를 눌러 메뉴창을 엽니다.
  4. ‘Preferences: Configure Language Specific Settings’를 검색하고 선택합니다.
  5. 두 개의 파일이 표시됩니다. 하나는 ‘Plain Text’이고, 다른 하나는 ‘YAML’입니다. YAML 파일을 선택합니다.
  6. YAML 설정을 입력합니다.
"[yaml]": { "editor.insertSpaces": true, "editor.tabSize": 2, "editor.quickSuggestions": true, "editor.snippetSuggestions": "top", "editor.wordBasedSuggestions": true, "editor.suggestOnTriggerCharacters": true, "editor.formatOnType": true, "files.autoSave": "onFocusChange", "yaml.trace.server": "off", "yaml.schemas": { "http://json-schema.org/schema#": "/path/to/schema.json" } }
  1. VS Code를 재시작합니다. YAML 파일내 구문 강조가 제대로 적용되는 것을 확인할 수 있습니다.

VS Code는 매우 유연하며, 사용자 설정 파일에서 각종 YAML 에디터 확장을 설치할 수 있습니다.

2. Atom YAML 형식 구문 강조 기능 설정

Atom도 현재 매우 인기 있는 텍스트 에디터입니다. 이를 활용할 경우에는, ‘linter’ 패키와 ‘linter-yaml’ 패키를 설치하여 YAML 메타 데이터를 사용 합니다. YAML 파일에 대한 멋진 문법 강조 기능을 제공합니다.

  1. Atom을 설치합니다.
  2. 플러그인 패널을 엽니다.
  3. Packages 탭을 선택합니다.
  4. 검색 상자에 ‘linter’를 입력하고 설치합니다.
  5. 패키지 탭에서 ‘linter-yaml’ 패키지를 설치합니다.
  6. YAML 파일을 선택하여 엽니다.
  7. Alt + Ctrl + Shift + S키를 눌러 ‘Settings View’ 모드로 전환합니다.
  8. 검색 상자에 ‘yaml’을 입력한 후 결과를 선택 합니다.
  9. 아래 코드를 붙여 넣기합니다.
'*':
  'linter-yaml':
      useBuiltinParser: false
'.source.yaml':
  'language-yaml':
    'autocomplete-plus': true
    'editor.tabLength': 2
  1. Atom을 재시작합니다. YAML 파일을 열면, 멋진 높조 강조 기능으로 구문을 강조하는 것을 확인할 수 있습니다.

3. Sublime Text YAML 형식 구문 강조 기능 설정

Sublime Text는 또 다른 인기 있는 텍스트 에디터로, YAML 파일을 구문 강조하는 능력을 기본적으로 갖추고 있으며, ‘YAML’이라는 이름으로 패키지를 설치하여 YAML 문법 강조 기능을 확장할 수 있습니다.

  1. Sublime Text를 설치합니다.
  2. YAML 파일을 선택하여 엽니다.
  3. View > Syntax > Open all with current extension as…> YAML를 선택합니다.
  4. Alt+ Shift+ P를 눌러 “Editor Config: Create Editor Config File”을 선택합니다.
  5. .editorconfig 파일을 열고 indent_size, indent_style, end_of_line, trim_trailing_whitespace, insert_final_newline 및 isort를 설정합니다. 다음은 예입니다.
root = true
[*]
indent_size = 2
indent_style = space
end_of_line = lf
trim_trailing_whitespace = true
insert_final_newline = true
[*.html] 
indent_style = force_indent
isort = true
  1. YAML 파일을 다시 선택하여 엽니다. YAML 파일이 제대로 구문 강조되는 것을 확인할 수 있습니다.

본 가이드에서, 여러 가지 YAML 에디터를 비교하여 사용하려는 목적에 가장 적합한 것을 선택하는 방법을 설명하였습니다. 에디터를 선택하더라도, YAML 작업에서 일관성 있고 정확한 결과를 얻을 수 있도록 학습하고 개선해 나가는 것이 중요합니다.