본문 바로가기
반응형

IT Knowledge/Ansible16

Ansible Python 버전 업그레이드 2.7 to 3.6 Ansible 2.5 이상의 버전에서는 Python 3에서 작동하는 것이 기본이 되었습니다. 그로인해 python 2.7 에서 3버전으로 업그레이드를 진행합니다. 단순히 Python만 2.7 > 3.5 버전으로 업그레이드 한다고 해서 "Ansible이 사용하는 Python 버전"이 변경되지 않습니다. Ansible이 사용하는 Python 버전 3버전으로 변경하려면... Ansible Python 3 지원 페이지의 지침에 따라, 기존 설치된 Ansible을 제거한 후, 다음의 pip3를 사용하여 ansible 재설치 해야합니다. [현재 ansible 버전 확인] $ ansible --version Ansible 2.9.23 버전(python 2.7.5 버전 사용) [Python 버전 업그레이드] 2021... 2021. 8. 10.
Python upgrade 2.7 to 3.6(CentOS 7) Ansible 2.5 이상의 버전에서는 기본적으로 Python 3 에서 작동하는 것이 기본이 되었으며, Ansible AWX를 사용하려면, Python 3.6 버전 이상이 필요하여, Python의 업그레이드 필요하게 되었습니다. 작업절차 1) Python 3 설치 2) Python 타겟버전 변경(2.7 > 3.6) 3) PIP 최신버전 업그레이드 작업환경 - CentOS 7.9 - 현재 Python 2.7 [Python 현재버전 확인] 현재 Python 2.7.5 버전 사용중 [Yum List를 통해 Python3 버전확인] (현재 3.6 버전을 설치할 수 있다.) [Python 3 설치] $ yum install python3 [Python3 설치 결과] Python2.7과 Python3.6이 공존하는.. 2021. 8. 10.
Ansible Role 개요 및 사용법 Ansible의 role(롤)은 Playbook(플레이북)을 여러 파일로 분할하는 메커니즘이다. 여러 파일로 분할함으로써 플레이북을 간단하게 작성할 수 있고, 재사용이 쉬워 진다. [Role의 Default Path] Default path : /etc/ansible/roles Default Path 재정의 방법 Ansible.cfg 파일 수정 [default] roles_path = ~/ansible_roles [Role의 구조] 각 역할들을 정의하고, 이들을 Directory별로 분리한다. Example 롤 Directory 설명 Roles/example/tasks/main.yml 테스크 Roles/example/files/ 호스트에 업로드할 파일 Roles/example/templates/ Jinj.. 2021. 7. 31.
Ansible Playbook Handler 사용법 유의사항 핸들러(Handler) 앤서블이 지원하는 '조건부 형식' 중에 하나 입니다. Task에서 notify를 이용하여 handler의 name 을 매개변수로 전달하여 알린다. 조건부 형식이라 함은. if 앞의 테스크를 동작하면 or 조건에 맞는다면.! handler를 실행한다! Example) 인증서 파일을 복사하면, nginx를 재시작해야 한다. - name : copy TLS key copy : src=files/nginx.key dest={{ key_file }} owner=root mode=0600 notify : restart nginx handlers: - name: restart nginx service: name=nginx state=restarted 핸들러 유의사항 모든 태스크가 모두 실행된 .. 2021. 7. 26.
Ansible Playbook YAML 작성방법 [PlayBook에서 사용되는 YAML] 1. 파일의 시작 --- 2. 주석 주석기호 : # 3. 문자열 YAML문자열은 따옴표로 묶을필요는 없지만, 원한다면 따옴표를 묶어도 된다. 문자열에 공백이 있어도 따옴표를 굳이 추가 할 필요가 없다. ex) this is String 4. Boolean 하단의 "※ Ansible의 True & False사용법" 참조 5. List(=Sequence) 하이픈으로 구분된다. - My ABC - This is String - The Stock is good Ex) Json에서는 [ "My ABC", "This is String", "The Stock is good" ] 6. Dictionaries(딕셔너리)(=mapping) address: 254 hannam-lo .. 2021. 7. 26.
Ansible Playbook(플레이북) 설명 및 예시 앤서블의 진정한 능력은 스크립팅 능력에 있다. 앤서블에서 스크립트를 플레이북 이라고 부르는데, YAML 파일에서 표현된다. (앤서블은 표준 YAML파서를 사용한다) 플레이북(playbook) = 플레이(play) 들의 모음 모든 플레이 = 호스트(Host) + 테스크(Task) (누구(Host)에게 무슨 작업(Task)을 할것인가!) 플레이북은 크게 3개의 부분으로 나뉜다. 타깃 부분 : 실행 장비, 어떤사용자 등 변수 부분 : 사용 가능한 변수 정의 태스크 부분 : 실행하고 싶은 액션 [타깃 부분] 줄의 처음은 대시( - ) 로 시작해야 한다. 플레이가 실행될 장비는 hosts의 값으로 설정 앤시블 플레이북에 장비에 연결할 사용자가 누구인지 알린다. [변수 부분] 전체 플레이에 적용할 변수를 정의 하는.. 2021. 7. 26.
반응형