Ansible 파이썬 인터프리터 경고 해결하기

AnsibleBeginner
지금 연습하기

소개

이번 챌린지에서는 파이썬 인터프리터와 관련된 흔한 Ansible 설정 문제를 다룹니다. Ansible 명령을 실행할 때 기본 파이썬 인터프리터에 대한 경고 메시지가 나타날 수 있습니다. 여러분의 과제는 Ansible 을 적절하게 설정하여 이러한 경고를 해결하는 것입니다. 이 과정에서 Ansible 설정 파일을 이해하고, 환경을 최적화하기 위해 필요한 조정을 수행하는 능력을 테스트하게 됩니다.

올바른 파이썬 인터프리터를 사용하도록 Ansible 설정하기

사전 설정된 Ansible 환경이 제공되었습니다. 간단한 Ansible 명령을 실행하려고 하면 파이썬 인터프리터에 관한 경고가 발생합니다. 여러분은 이 경고를 해결하고 인터프리터 관련 문제 없이 Ansible 명령이 실행되도록 조치해야 합니다.

경고 메시지를 확인하려면 터미널에서 다음 명령을 실행하세요:

ansible all -m ping

다음과 유사한 출력이 나타날 것입니다:

[DEPRECATION WARNING]: Distribution ubuntu 22.04 on host localhost should use /usr/bin/python3, but is using /usr/bin/python for backward compatibility with prior Ansible releases. A future Ansible release will default to using the discovered platform python for this host. See
https://docs.ansible.com/ansible/2.10/reference_appendices/interpreter_discovery.html for more information. This feature will be removed in version 2.12. Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
localhost | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
}
[DEPRECATION WARNING]: Distribution ubuntu 22.04 on host web1 should use /usr/bin/python3, but is using /usr/bin/python for backward compatibility with prior Ansible releases. A future Ansible release will default to using the discovered platform python for this host. See
https://docs.ansible.com/ansible/2.10/reference_appendices/interpreter_discovery.html for more information. This feature will be removed in version 2.12. Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
web1 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
}

목표는 이러한 경고를 제거하고 Ansible 이 Python 3 를 사용하도록 보장하는 것입니다.

과제

  • Ansible 명령 실행 시 발생하는 파이썬 인터프리터 경고를 확인합니다.
  • 올바른 파이썬 인터프리터를 지정하기 위한 Ansible 설정 파일을 생성합니다.
  • 명령을 다시 실행하여 경고가 해결되었는지 확인합니다.

요구 사항

  1. 모든 작업은 /home/labex/project 디렉토리에서 수행해야 합니다.
  2. /home/labex/project 디렉토리에 ansible.cfg라는 이름의 Ansible 설정 파일을 생성하세요.
  3. 적절한 설정 옵션을 사용하여 파이썬 인터프리터를 /usr/bin/python3으로 설정하세요.
  4. 인벤토리 파일은 이미 /etc/ansible/hosts에 구성되어 있습니다 (초기 설정에 포함됨).

예시

Ansible 을 올바르게 설정한 후 명령을 실행하면 파이썬 인터프리터 경고가 나타나지 않아야 합니다. 출력 결과는 다음과 같아야 합니다:

localhost | SUCCESS => {
    "changed": false,
    "ping": "pong"
}
web1 | SUCCESS => {
    "changed": false,
    "ping": "pong"
}

요약

이번 챌린지에서는 파이썬 인터프리터와 관련된 일반적인 Ansible 설정 문제를 해결하는 방법을 배웠습니다. 더 이상 권장되지 않는 파이썬 인터프리터 사용에 대한 경고를 확인하고, 대신 Python 3 를 사용하도록 Ansible 을 구성하는 방법을 익혔습니다. Ansible 설정 파일 (ansible.cfg) 을 생성하고 interpreter_python 옵션을 사용하여 올바른 경로를 지정함으로써, Ansible 이 적절한 파이썬 버전을 사용하도록 보장했습니다. 이 실습은 시스템의 파이썬 환경과 Ansible 이 원활하게 연동되도록 설정하는 것의 중요성을 잘 보여주며, 이는 불필요한 경고를 방지하고 자동화 명령을 안정적으로 실행하는 데 필수적입니다.

✨ 솔루션 확인 및 연습