Ansible - 용어집 - 2 > Ansible 자료실

본문 바로가기
사이트 내 전체검색

Ansible 자료실

운영 Ansible - 용어집 - 2

페이지 정보

profile_image
작성자 snow
댓글 0건 조회 74회 작성일 24-09-13 10:00

본문

1. Ansible 용어 설명

이 게시글에서는 Ansible 용어에 대한 문서를 살펴보고, 예시만 안내드리는 글입니다. Ansible은 여러 시스템을 효율적으로 관리할 수 있는 도구로, 용어들을 이해하는 것이 필수적입니다. 시니어 OS 엔지니어로서 Ansible 용어들을 숙지하면 인프라 관리에 큰 도움이 됩니다.


1.1 실행기(Executor)

Ansible에서 실행기는 각 태스크를 실행하는 핵심 구성 요소로, /usr/bin/ansible과 직접 연결되어 있습니다. 이는 Ansible의 핵심 부분 중 하나이며, 사용자가 태스크를 관리할 때 자주 언급됩니다.


1.2 필터 플러그인(Filter Plugin)

필터 플러그인은 Jinja2 템플릿에서 사용되는 플러그인으로, 대부분의 사용자에게는 깊게 알 필요가 없는 부분입니다. 하지만 새로운 필터를 생성하려면 Jinja2 필터에 대한 이해가 필요합니다.


1.3 포크(Forks)

Ansible은 여러 시스템과 병렬로 작업을 처리하는데, 병렬 처리의 수는 --forks 옵션을 통해 조절할 수 있습니다. 기본값을 변경하면 처리 속도에 큰 영향을 줄 수 있어 적절한 설정이 중요합니다.

터미널 명령:

```bash

ansible-playbook site.yml --forks 10

```

해당 명령을 실행할 시 10개의 호스트에 병렬로 태스크가 실행됩니다.


1.4 사실 수집(Gather Facts)

사실 수집은 Ansible이 원격 호스트의 정보를 자동으로 수집하는 과정입니다. 하지만 상황에 따라 이를 건너뛰고 싶다면, 플레이북에서 gather_facts: False로 설정할 수 있습니다.

터미널 명령:

```bash

ansible-playbook site.yml --extra-vars "gather_facts=False"

```

해당 명령을 실행하면 사실 수집 없이 플레이북이 실행됩니다.


1.5 글로빙(Globbing)

글로빙은 호스트 이름에 와일드카드를 사용하여 여러 호스트를 선택하는 방법입니다. 이를 통해 쉽게 많은 호스트를 한 번에 관리할 수 있습니다.

터미널 명령:

```bash

ansible "www*" -m ping

```

해당 명령을 실행할 시, 'www'로 시작하는 모든 호스트에 ping 테스트를 수행합니다.


1.6 그룹(Group)

그룹은 여러 호스트를 묶어 함께 관리할 수 있는 단위입니다. 특정 호스트들에게 공통 변수를 할당할 때 그룹을 활용하면 편리합니다.


1.7 그룹 변수(Group Vars)

그룹 변수는 특정 그룹에 변수를 할당하는 방식으로, 여러 호스트에서 공통 변수를 효율적으로 사용할 수 있게 해줍니다.


1.8 호스트(Host)

호스트는 Ansible이 관리하는 원격 머신을 의미하며, 각 호스트는 고유한 변수를 가질 수 있습니다. 그룹으로 묶여 관리될 수도 있습니다.


1.9 호스트 지정자(Host Specifier)

Ansible에서 `hosts:` 지시문은 플레이가 적용될 시스템을 지정하는 데 사용됩니다. 여러 호스트를 특정할 때 매우 유용한 기능입니다.


1.10 호스트 변수(Host Vars)

호스트 변수는 각 호스트에 개별적으로 할당할 수 있는 변수를 말하며, 인벤토리 파일에서 정의할 수 있습니다.


1.11 멱등성(Idempotency)

Ansible의 중요한 특성 중 하나인 멱등성은 동일한 작업을 여러 번 실행하더라도 그 결과가 변하지 않는 것을 의미합니다. 이 특성 덕분에 시스템이 예상대로 유지됩니다.


1.12 인클루드(Includes)

인클루드는 플레이북에서 다른 태스크 목록을 불러오는 기능입니다. 이를 통해 코드의 재사용성과 가독성을 높일 수 있습니다.


1.13 인벤토리 스크립트(Inventory Script)

외부 리소스에서 호스트 정보를 검색하는 프로그램입니다. 이를 통해 동적 인벤토리를 사용할 수 있습니다.


1.14 Jinja2

Jinja2는 Ansible에서 가장 많이 사용되는 템플릿 언어로, 파일 내 변수 치환에 매우 유용합니다.


1.15 JSON

Ansible은 JSON 형식을 사용하여 모듈의 출력 데이터를 처리합니다. 이는 시스템 간 데이터 전달에 적합한 방식입니다.


1.16 지연 평가(Lazy Evaluation)

Ansible은 플레이북 내에서 변수를 가능한 한 마지막 순간에 평가하는 방식으로 동작합니다. 이는 플레이북이 동적으로 변수를 처리하는 데 도움을 줍니다.


1.17 라이브러리(Library)

라이브러리는 Ansible에서 사용할 수 있는 모듈들의 집합을 의미합니다. 다양한 모듈을 통해 시스템 관리가 용이해집니다.


1.18 제한 그룹(Limit Groups)

특정 그룹으로 플레이북 실행을 제한하여, 필요한 시스템에만 태스크를 적용할 수 있습니다.


1.19 로컬 작업(Local Action)

Ansible에서는 원격 시스템이 아닌 로컬 시스템에서 작업을 수행할 수 있습니다. 이때 `local_action` 지시문을 사용합니다.


1.20 로컬 연결(Local Connection)

로컬 호스트에서 실행할 때는 connection: local을 사용하여 로컬 연결을 설정할 수 있습니다.


1.21 조회 플러그인(Lookup Plugin)

외부 데이터 소스에서 Ansible로 데이터를 가져오는 플러그인입니다. 주로 동적 변수 처리에 사용됩니다.


1.22 반복(Loops)

Ansible에서는 태스크를 여러 항목에 대해 반복 실행할 수 있으며, 이를 통해 코드의 간결성을 유지할 수 있습니다.


1.23 멀티 티어(Multi-Tier)

IT 시스템이 단일 시스템이 아니라 여러 시스템 간의 상호작용을 통해 관리되는 것을 멀티 티어라고 합니다. Ansible은 이러한 시스템에서도 효과적으로 작동합니다.


1.24 알림(Notify)

태스크가 완료되면 핸들러에 알림을 보내 특정 작업을 수행할 수 있습니다. 예를 들어, 서비스 재시작을 핸들러로 설정할 수 있습니다.


1.25 오케스트레이션(Orchestration)

여러 시스템 간의 작업을 체계적으로 관리하는 것이 오케스트레이션입니다. Ansible은 이를 통해 다수의 시스템을 효율적으로 제어할 수 있습니다.


1.26 플레이북(Playbooks)

Ansible의 플레이북은 시스템 오케스트레이션, 구성, 배포 작업을 자동화하는 데 사용됩니다. YAML 형식으로 작성되며, 직관적이고 가독성이 높습니다.

터미널 명령:

```bash

ansible-playbook /path/to/playbook.yml

```

해당 명령을 실행하면 플레이북에 정의된 태스크가 순서대로 실행됩니다.

Ansible 용어에 대해 이해하면, 복잡한 인프라 환경에서도 효과적으로 시스템을 관리할 수 있습니다. 각 용어의 특성을 잘 파악하여 Ansible을 효율적으로 활용하시길 바랍니다.

댓글목록

등록된 댓글이 없습니다.

회원로그인

회원가입

사이트 정보

회사명 : (주)리눅스데이타시스템
대표이사 : 정정모
본사 : 강남구 봉은사로 114길 40 홍선빌딩 2층
- tel : 02-6207-1160
대전지사 : 유성구 노은로174 도원프라자 5층
- tel : 042-331-1161

접속자집계

오늘
737
어제
1,804
최대
3,935
전체
1,023,959
Copyright © www.linuxdata.org All rights reserved.