Ansible의 원격 작업에 프록시 환경 전달하기
인벤터리의 프록시 변수를 재사용하고, 이를 필요로 하는 원격 작업에 명시적으로 적용합니다.
재사용 가능한 프록시 매핑을 적절한 group_vars 파일에 저장합니다:
proxy_env:
http_proxy: http://gateway.example:8080
https_proxy: http://gateway.example:8080이를 원격 작업에 적용합니다:
- name: Download the managed artifact
ansible.builtin.get_url:
url: https://downloads.example/artifact.txt
dest: /tmp/artifact.txt
mode: '0644'
environment: "{{ proxy_env }}"인증되지 않은 공용 중계자를 허용하는 경로의 공용 아티팩트 예시에서는 HTTP 프록시 목록에서 후보 HTTP 프록시 URL을 가져오고 아티팩트 URL은 별도로 설정합니다. 모듈은 실제 실행 컨텍스트에서 환경을 받습니다. get_url의 문서화된 use_proxy는 의도적으로 직접 실행하는 작업에 대해 환경에서 파생된 프록시를 비활성화할 수 있습니다. 대화형 .bashrc의 export는 동일한 입력을 보장하지 않습니다. 작업이 빈 매핑을 본다면 play 변수가 인벤터리 값을 덮어쓰는지 확인하십시오.
같은 정책을 같은 사용자로서 더 많은 작업에 적용해야 할 때는 block/play 환경을 사용합니다. 그 범위는 컨트롤러 조회, 필터 플러그인 또는 Ansible 자체 연결을 다시 구성하지 않습니다.
지속적인 로그인 또는 서비스 기본 설정은 별도로 관리합니다. 작업의 환경은 해당 작업과 함께 끝납니다. 나중에 시작하는 서비스는 자체 시작 구성에서 환경을 가져옵니다.