IBM Cloud Virtual Server for Classic에서 Red Hat Enterprise Linux 8에 Ansible 설치

IBM Cloud Virtual Server for Classic에서 Red Hat Enterprise Linux 8에 Ansible 설치

2022-10-06 last update

8 minutes reading redhat Ansible ibmcloud

Red Hat Enterprise Linux 8 확인



IBM Cloud Virtual Server for Classic에서 Red Hat Enterprise Linux 8이 2020년 7월 26일에 출시되었습니다.

htps : // c ぉ d. 이 bm. 코 m / 겐 1 / 인 f 등 st 루트 c 꼬임 / 이마 게 mp ぁ s


프로비저닝한 결과 위에서 설명한 대로 버전이 8.2로 확인되었습니다.

[[email protected] ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux release 8.2 (Ootpa)

파이썬 없음



8.x에서는 기본적으로 python 명령을 실행할 수 없는 상태이므로 설치합니다.

[[email protected] ~]# python
-bash: python: コマンドが見つかりません
[[email protected] ~]# python2
-bash: python2: コマンドが見つかりません
[[email protected] ~]# python3
-bash: python3: コマンドが見つかりません

Python 설치


yum 대신 dnf 를 사용하여 python 를 설치합니다.

dnf install python38 -y
python3 -V

패키지 관리 시스템이 DNF를 기반으로 Yum v4로 변경되었습니다.
yum 명령은 dnf 명령으로 변경됩니다. 현재 yum 명령도 후방 호환으로 남아 있지만, 어느 쪽도 폐지 될 예정입니다.
패키지 관리에 자사의 운영 스크립트를 사용하는 경우에는 앞으로를 살펴보고 dnf 명령을 지원하는 것이 좋습니다.

참고 : 개인적으로 신경이 쓰인 RHEL 8의 변경 |

pip 설치



앞으로는 이와 같이 python3 -m pip 와 실행하는 것이 추천인 것 같습니다.

python3 -m pip install --upgrade pip
python3 -m pip --version

Ansible 설치



pip를 사용하여 Ansible 설치

python3 -m pip install ansible

최신판을 도입할 수 있었습니다.
릴리스 노트는 Release and maintenance에서 확인할 수 있습니다.

[[email protected] ~]# ansible --version
ansible 2.9.13
  config file = None
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/lib/python3.8/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.8.0 (default, Mar  9 2020, 18:02:46) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]

SSH 키 등록



이어서 Controle Node에서 SSH 키를 생성하고 Target Node에 등록합니다.

ssh-keygen

ssh-copy-id -i $HOME/.ssh/id_rsa.pub localhost

ssh-copy-id -i $HOME/.ssh/id_rsa.pub [email protected] # target node ip address

Ansible 트레일 맵 MOUNT YAML STEP3


핑 확인


localhost 로의 ping 실행을 확인할 수 있습니다.

mkdir /etc/ansible/test1
cd /etc/ansible/test1

cat <<EOF > inventory.ini
[test_servers]
localhost
EOF

[[email protected] test1]# ansible -i inventory.ini test_servers -m ping
localhost | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": false,
    "ping": "pong"
}

디렉토리 생성 및 파일 복사 확인



Target Node에 디렉토리 작성 및 파일 복사를 확인할 수 있습니다.

mkdir /etc/ansible/test2
cd /etc/ansible/test2

cat <<EOF > inventory.ini
[test_servers]
10.192.109.187
EOF

cat <<EOF > playbook.yml
---
- hosts: test_servers
  tasks:
  - name: create directory
    file:
       path: /root/tmp
       state: directory 
       owner: root
       mode: 0755

  - name: copy file
    copy:
       src: /etc/hosts
       dest: /root/tmp/hosts
       owner: root
       mode: 0644
EOF

[[email protected] test2]# ansible-playbook -i inventory.ini playbook.yml 

PLAY [test_servers] **********************************************************************************************************************************************************************************

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

TASK [create directory] ******************************************************************************************************************************************************************************
changed: [10.192.109.187]

TASK [copy file] *************************************************************************************************************************************************************************************
changed: [10.192.109.187]

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

사이고에게



이제 IBM Cloud의 Red Hat Enterprise Linux 8에서 Ansible을 사용할 준비가 되었습니다.
IBM Cloud에서도 Ansible을 사용해 보십시오.

참고


  • 9장 Python 사용 Red Hat Enterprise Linux 8 | Red Hat Customer Portal
  • shkitayama/ansible_practical_guide · GitLab