본문 바로가기

리눅스

[리눅스] 우분투에서 최신 버전의 ansible을 설치하는 방법

728x90

우분투에서 최신 버전의 ansible을 설치하는 방법

테스트 환경

$ lsb_release -d
Description:    Ubuntu 22.04.2 LTS

우분투에서 apt를 사용하여 최신 버전의 ansible을 설치하려면 다음과 같은 단계를 따르면 됩니다.

 

1. 패키지 관리자의 패키지 목록을 업데이트합니다.

sudo apt update

 

2. Ansible PPA 저장소를 추가합니다.

sudo apt-add-repository ppa:ansible/ansible

 

3. 저장소를 업데이트하고 Ansible을 설치합니다.

sudo apt update
sudo apt install -y ansible

 

4. 설치를 확인하기 위해 Ansible 버전을 확인합니다.

ansible --version
$ ansible --version
ansible [core 2.14.5]
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3/dist-packages/ansible
  ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/bin/ansible
  python version = 3.10.6 (main, Mar 10 2023, 10:55:28) [GCC 11.3.0] (/usr/bin/python3)
  jinja version = 3.0.3
  libyaml = True

 

5. ac-hoc 명령어로 ping 테스트하는 방법

ansible -m ping localhost
$ ansible -m ping localhost
localhost | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python3"
    },
    "changed": false,
    "ping": "pong"
}
728x90

 

6. ansible-playbook 명령어로 ping 테스트하는 방법

  • hosts.ini 파일 생성
$ cat inventory/hosts.ini 
[all]

[local]
localhost ansible_connection=local
  • 인벤토리 목록 확인
$ ansible-inventory -i inventory/hosts.ini --graph                 
@all:
  |--@ungrouped:
  |--@local:
  |  |--localhost
  • ping.yml 파일 생성
$ cat ping.yml
---
- name: Ping all hosts
  hosts: all
  gather_facts: no

  vars:
    ansible_python_interpreter: /usr/bin/python3

  tasks:
    - name: Ping test
      ping:
  • 플레이북 문법 검사
ansible-playbook -i inventory/hosts.ini ping.yml --syntax-check
$ ansible-playbook -i inventory/hosts.ini ping.yml --syntax-check

playbook: ping.yml
  • 플레이북 실행
ansible-playbook -i inventory/hosts.ini ping.yml --limit local
$ ansible-playbook -i ../inventory/hosts.ini ping.yml --limit local

PLAY [Ping all hosts] ***********************************************************************************************

TASK [Ping test] ****************************************************************************************************
ok: [localhost]

PLAY RECAP **********************************************************************************************************
localhost                  : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

 

728x90