Ansible-base 2.10(오프라인 설치)

Ansible-base 2.10(오프라인 설치)

2022-10-03 last update

6 minutes reading pip3 Ansible-base Ansible

0. 소개



Ansible2.10부터 기존의 Ansible2.9와 달리, 모듈의 대부분이 ansible-galaxy에 집계되어 최소한의 모듈이 이용 가능한 ansible-base의 제공이 개시된다.
다만, Ansible2.10의 인스톨 형식에는 이하의 2종류가 있다.
①Ansible-base
Ansible-base만 제공. 최소한의 모듈과 플러그인 만 포함되기 때문에 필요한 모듈은 ansible-galaxy에서 가져옵니다.
②Ansible
기존의 배포 형태와 마찬가지로 Ansible-base에 모듈이나 plugin이 바인드된 형식.

이번 기사에서는 ②Ansible의 오프라인 인스톨을 실시.
※②Ansible 2.10에 대해서는 다른 기사를 참조

1. ansible-base 설치용 파일 다운로드



pip 명령으로 ansibl-base 설치 파일을 다운로드합니다.
실행 결과는 다음과 같습니다.
# pip3.9 download -d ansible ansible-base
# ls -ltr
合計 9288
-rw-r--r--. 1 root root 5836841 12月 5 16:23 ansible-base-2.10.3.tar.gz
-rw-r--r--. 1 root root  125774 12月 5 16:23 Jinja2-2.11.2-py2.py3-none-any.whl
-rw-r--r--. 1 root root  269377 12月 5 16:23 PyYAML-5.3.1.tar.gz
-rw-r--r--. 1 root root 2606314 12月 5 16:23 cryptography-3.2.1-cp35-abi3-manylinux2010_x86_64.whl
-rw-r--r--. 1 root root   35858 12月 5 16:23 packaging-20.7-py2.py3-none-any.whl
-rw-r--r--. 1 root root   19151 12月 5 16:23 MarkupSafe-1.1.1.tar.gz
-rw-r--r--. 1 root root  405977 12月 5 16:23 cffi-1.14.4-cp39-cp39-manylinux1_x86_64.whl
-rw-r--r--. 1 root root   10963 12月 5 16:23 six-1.15.0-py2.py3-none-any.whl
-rw-r--r--. 1 root root   67842 12月 5 16:23 pyparsing-2.4.7-py2.py3-none-any.whl
-rw-r--r--. 1 root root  112041 12月 5 16:23 pycparser-2.20-py2.py3-none-any.whl

2. 설치



1. 절차에 따라 다운로드한 리소스를 오프라인 환경에 배치합니다.
다음 명령을 실행하여 ansible-base를 설치합니다.
# pip3.9 install <パッケージ名>

설치되었는지 확인합니다.
# ansible --version
ansible 2.10.3
  config file = None
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/python390/lib/python3.9/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.9.0 (default, Dec 5 2020, 16:14:32) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]

※이하, 필요에 따라 실시
"ansible"로 실행할 수 있도록 심볼릭 링크 만들기
# ln -s /usr/local/python390/bin/ansible /usr/bin/ansible

3. 테스트용 playbook 실행



아래 테스트용 playbook을 작성하여 가동 확인
---
  - hosts: localhost

    tasks:
      - file:
          path: /tmp
          state: directory


실행 결과는 다음과 같습니다. ansible-base가 정상적으로 움직이고 있는 것을 확인할 수 있었다.
# ansible-playbook test.yml
[WARNING]: No inventory was parsed, only implicit localhost is available
[WARNING]: provided hosts list is empty, only localhost is available. Note that
the implicit localhost does not match 'all'

PLAY [localhost] ***************************************************************

TASK [Gathering Facts] *********************************************************
ok: [localhost]

TASK [file] ********************************************************************
ok: [localhost]

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