웹사이트 검색

CentOS/RHEL 8에 Ansible 자동화 도구를 설치하는 방법


Ansible은 시스템 관리자가 노드에 에이전트를 설치할 필요 없이 중앙 서버에서 수백 개의 노드를 구성하고 제어할 수 있는 무료 오픈소스 자동화 도구입니다.

SSH 프로토콜을 사용하여 원격 노드와 통신합니다. PuppetChef와 같은 다른 관리 도구에 비해 Ansible은 사용 편의성과 설치 측면에서 가장 선호되는 도구입니다.

이 튜토리얼에서는 RHEL/CentOS 8 Linux 배포판에 Ansible 자동화 도구를 설치하고 구성하는 방법을 알아봅니다.

중요: CentOS 8의 경우 ansible은 전통적으로 EPEL 저장소를 통해 배포되었지만 아직 공식 패키지는 없습니다. 하지만 작업 중입니다. 따라서 우리는 표준 PIP(Python 패키지 관리자)를 사용하여 CentOS 8에 Ansible을 설치하고 있습니다.

RHEL 8에서 이 문서에 표시된 대로 설치하려는 해당 Ansible 버전에 대해 공식 Red Hat 저장소를 활성화합니다. RHEL 8에서는 PIP를 사용하지 마세요!.

1단계: Python3 설치

일반적으로 RHEL 8CentOS 8에는 기본적으로 Python3이 이미 설치되어 있습니다. 그러나 어떤 이유로 Python3이 설치되지 않은 경우 다음 dnf 명령을 사용하여 설치하세요. Sudo 권한이 있는 일반 사용자로 로그인해야 합니다.

su - ravisaive
sudo dnf update
sudo dnf install python3

실제로 python3이 설치되어 있는지 확인하려면 명령을 실행하세요.

python3 -V

2단계: PIP 설치 - Python 패키지 설치 프로그램

Pip는 사전 설치되어 제공되는 Python의 패키지 관리자이지만 시스템에 Pip이 없는 경우 명령을 사용하여 설치하세요.

sudo dnf install python3-pip

3단계: Ansible 자동화 도구 설치

모든 전제조건이 충족되면 CentOS 8에서 명령을 실행하여 ansible을 설치합니다.

pip3 install ansible --user

RHEL 8에서 Ansible Engine 저장소를 활성화하여 그림과 같이 해당 Ansible 버전을 설치합니다.

subscription-manager repos --enable ansible-2.8-for-rhel-8-x86_64-rpms
dnf -y install ansible

Ansible 버전을 확인하려면 다음을 실행하세요.

ansible --version

완벽한! 보시다시피 설치된 Ansible 버전은 Ansible 2.8.5입니다.

4단계: Ansible 자동화 도구 테스트

ansible을 테스트하려면 먼저 ssh가 실행 중인지 확인하세요.

sudo systemctl status sshd

다음으로, 호스트 시스템을 정의하기 위해 /etc/ansible 디렉토리에 hosts 파일을 생성해야 합니다.

sudo mkdir /etc/ansible  
cd /etc/ansible
sudo touch hosts

파일의 호스트는 모든 원격 노드가 있는 인벤토리가 됩니다.

이제 선호하는 편집기로 hosts 파일을 열고 그림과 같이 원격 노드를 정의하세요.

[web]
192.168.0.104

다음으로 공개 키를 원격 노드에 복사할 SSH 키를 생성합니다.

ssh-keygen

생성된 SSH 키를 원격 노드에 복사하려면 명령을 실행합니다.

ssh-copy-id [email 

이제 Ansible을 사용하여 표시된 대로 원격 노드를 핑합니다.

ansible -i /etc/ansible/hosts web -m ping  

RHEL/CentOS 8 Linux 배포판에 Ansible을 성공적으로 설치하고 테스트했습니다. 질문이 있으시면 아래 댓글 섹션에서 공유해 주세요.