Ansible 제어 노드 설정
Ansible 제어 노드를 설정하려면 SUSE Manager Web UI에서 다음 단계를 실행합니다.
|
클라이언트를 Ansible 제어 노드로 구성하려면 해당 시스템에 Ansible 패키지를 설치해야 합니다. 일반적으로 Ansible 패키지는 운영 체제 공급업체의 공식 리포지토리에서 구해야 합니다. 예를 들어, SUSE Linux Enterprise 15 SP6 및 SP7에서는 [literal] |
Only for older SUSE Linux Enterprise 15 clients, Ansible is available through SLES 15 Client tools but there it will be dropped in the future.
-
SUSE Manager Web UI에서 으로 이동하여 [literal]
SUSE Linux Enterprise Server 15 SP6 x86_64(또는 상위 버전)와 [literal]Systems Management Module및 필수 [literal]Python 3 Module이 선택되고 동기화되었는지 확인합니다. -
SUSE Linux Enterprise 15 SP6(또는 상위 버전) 클라이언트를 배포합니다.
-
SUSE Manager Web UI에서 클라이언트의 페이지로 이동합니다. 을 선택하고 클라이언트를
SUSE Linux Enterprise Server 15 SP6 x86_64(또는 상위 SP 버전) 및Systems Management Module과Python 3 Module채널을 구독합니다. -
클라이언트의 을 선택합니다.
Add-On System Types목록에서Ansible 제어 노드를 활성화한 후 속성 업데이트를 클릭합니다. -
클라이언트 개요 페이지로 이동하여 를 선택하고 Highstate 적용을 클릭합니다.
-
이벤트 탭을 선택하고 highstate의 상태를 확인합니다.
|
최신 Ansible을 SUSE Linux Enterprise 15 SP4 또는 SP5 클라이언트에 설치하려면 |
|
최신 버전의 Ansible은 더 이상 오래된 Python 버전을 통한 노드 관리를 지원하지 않습니다. 관리형 노드가 여전히 기존 Python 버전으로 기본 설정되어 있는 경우 플레이북 실행 중에 연결 오류가 발생하거나 실패할 수 있습니다. 이 문제를 해결하려면 가능한 경우 관리형 노드에서 Python을 업그레이드하고 Ansible 인벤토리 또는 구성에서 올바른 Python 인터프리터를 설정해야 합니다. |
1. Ansible 인벤토리 파일 생성
Ansible Integration 도구는 플레이북을 인벤토리 파일로 배포합니다. _테이블 1_에 나열된 각 운영 체제에 대해 인벤토리 파일을 하나씩 생성합니다.
-
Ansible에서 관리할 인벤토리 파일에 호스트를 생성 및 추가합니다. Ansible 인벤토리의 기본 경로는
/etc/ansible/hosts입니다.Listing 1. 인벤토리 예시client240.mgr.example.org client241.mgr.example.org client242.mgr.example.org client243.mgr.example.org ansible_ssh_private_key_file=/etc/ansible/some_ssh_key [mygroup1] client241.mgr.example.org client242.mgr.example.org [mygroup2] client243.mgr.example.org [all:vars] ansible_ssh_private_key_file=/etc/ansible/my_ansible_private_key
-
SUSE Manager Web UI의
Ansible탭에서 로 이동하여 제어 노드에 인벤토리 파일을 추가합니다. -
Playbook Directories섹션에서Add a Playbook Directories필드에/usr/share/scap-security-guide/ansible을 추가한 후 저장을 클릭합니다. -
인벤토리에서인벤토리 파일 추가필드에 인벤토리 파일 위치를 추가하고 저장을 클릭합니다.Listing 2. 예시/etc/ansible/sles15 /etc/ansible/sles12 /etc/ansible/centos7
더 많은 플레이북 예시는 https://github.com/ansible/ansible-examples에서 확인할 수 있습니다.
2. Ansible 노드와 통신 설정하기
-
인벤토리에서 사용 중인 SSH 키를 생성합니다.
ssh-keygen -f /etc/ansible/my_ansible_private_key
-
생성된 SSH 키를 Ansible 관리 클라이언트에 복사합니다. 예시는 다음과 같습니다.
ssh-copy-id -i /etc/ansible/my_ansible_private_key root@client240.mgr.example.org
-
/etc/ansible/ansible.cfg에 다음과 같이 개인 키를 선언합니다.private_key_file = /etc/ansible/my_ansible_private_key
my_ansible_private_key를 개인 키가 포함된 파일의 이름으로 바꿉니다. -
제어 노드에서 다음 명령을 실행하여 Ansible 작동 여부를 테스트하십시오.
ansible all -m ping ansible mygroup1 -m ping ansible client240.mgr.example.org -m ping
이제 수정을 실행할 수 있습니다. 자세한 내용은 코드형 규정 준수에서 확인할 수 있습니다.