본문 바로가기

리눅스

ansible-galaxy 명령어

728x90

ansible-galaxy 명령어

ansible-galaxy 명령어는 Ansible Galaxy와 관련된 작업을 수행하는 데 사용됩니다. 주요 기능으로는 역할(Role)의 설치, 제거, 초기화, 업데이트 등이 있습니다.

 

Ansible Galaxy 설치

sudo apt-get install ansible-galaxy

1. 역할 설치하기

  • Ansible Galaxy에서 지정한 username과 role_name에 해당하는 역할을 설치합니다.
ansible-galaxy install username.role_name

2. 역할 제거하기

  • 지정된 역할을 제거합니다.
ansible-galaxy remove username.role_name

3. 역할 초기화하기

  • 현재 디렉토리에 새로운 Ansible 역할을 생성합니다.
ansible-galaxy init role_name

4. 역할 업데이트하기

  • 이미 설치된 역할을 업데이트합니다. -f 옵션은 기존 역할을 강제로 재설치하라는 의미이며, -p 옵션은 역할을 설치할 디렉토리를 지정합니다.
ansible-galaxy install -f -p ./roles/ username.role_name

5. 역할 목록 보기

  • 설치된 역할의 목록을 표시합니다.
ansible-galaxy list

6. 요구사항 파일 생성하기

  • requirements.yml 파일을 기반으로 필요한 모든 역할을 설치합니다.
ansible-galaxy install -r requirements.yml

7. 역할 검색하기

  • 특정 키워드로 Ansible Galaxy에서 역할을 검색합니다.
ansible-galaxy search keyword
728x90
  • ansible-galaxy 사용법
$ ansible-galaxy
sage: ansible-galaxy [-h] [--version] [-v] TYPE ...
ansible-galaxy: error: the following arguments are required: TYPE

usage: ansible-galaxy [-h] [--version] [-v] TYPE ...

Perform various Role and Collection related operations.

positional arguments:
  TYPE
    collection   Manage an Ansible Galaxy collection.
    role         Manage an Ansible Galaxy role.

options:
  --version      show program's version number, config file location, configured module search path, module location, executable location and exit
  -h, --help     show this help message and exit
  -v, --verbose  Causes Ansible to print more debug messages. Adding multiple -v will increase the verbosity, the builtin plugins currently evaluate up to -vvvvvv. A reasonable level to
                 start is -vvv, connection debugging might require -vvvv.

Ansible Galaxy를 사용하여 chrony를 설치하고 설정하는 방법

  • chrony 패키지를 설치하고 기본적인 설정을 수행합니다.

1. Ansible Galaxy에서 chrony 역할 설치

ansible-galaxy install geerlingguy.chrony

 

2. Ansible 플레이북 작성

geerlingguy.chrony 역할을 사용하여 chrony를 설치하고 설정하는 간단한 Ansible 플레이북입니다.

vim install_chrony.yml
---
- name: Install and configure chrony using Ansible Galaxy role
  hosts: servers
  become: true

  roles:
    - geerlingguy.chrony

 

3. 플레이북 실행

플레이북을 실행합니다.

ansible-playbook -i inventory/hosts.ini install_chrony.yml --limit servers

inventory/hosts.ini는 대상 서버를 정의하는 Ansible inventory 파일의 경로입니다. --limit 옵션은 실행 대상을 제한합니다.

 

  • nginx 역할 검색
ansible-galaxy role search nginx

nginxinc.nginx_controller

 

  • nginxinc.nginx_controller 컬렉션 설치
ansible-galaxy collection install nginxinc.nginx_controller

 

namespaces_nginxinc

 

728x90