2017-09-13 3 views
2
에있는 모든 호스트에 대한 기본 변수를 정의하는

답변

2

하면 그들은 단지 다른 이름을 가지고 ansible.cfg에이 값을 정의, 그래서 the manual 사전을 참조 할 수 있습니다 :

  • ansible_shell_type하면 ansible.cfgexecutable로 정의 할 수 있습니다
  • ansible_userremote_user
  • ansible_ssh_common_args으로 지정하면

구성 파일에 설정된 값은 특정 설정으로 덮어 쓰지 않는 한 모든 호스트에 적용됩니다.

3

변수를/group_vars/all로 이동하여 지원되는 방식으로 동일하게 만들 것을 고려하십시오.

3

ansible.cfg은 구성 파일이며 인벤토리가 아니므로 여기에 변수를 넣을 수 없습니다.

[all:vars]은 인벤토리 파일 내에 그룹 (이 경우 특수 그룹 all)에 대한 그룹 변수를 정의하는 구문입니다.

기본 인벤토리 파일에서 변수 정의를 분리하려면 (바람직한 방법인데!)이 장 (Splitting Out Host and Group Specific Data)을 읽을 수 있습니다.

발췌 : 재고 파일에 직접 변수를 저장하는 것 외에도

호스트 그룹 변수 명세 파일 경로를 가정하면 명세 파일

개별 파일에 대하여 저장 될 수있다

:

/etc/ansible/hosts 

호스트 이름이 'foosball'이고 그룹 'raleigh'및 'webservers'인 경우 다음 위치의 YAML 파일 변수가 사용 가능하게됩니다. 오 호스트 : 물론

/etc/ansible/group_vars/raleigh # can optionally end in '.yml', '.yaml', or '.json' 
/etc/ansible/group_vars/webservers 
/etc/ansible/host_vars/foosball 
+0

같은 질문에 대해 여러 가지 대답이있을 수있는 이유가 바로 그 때문입니다. OP의 주요 목표가 무엇인지 누가 압니까? 일반 그룹 변수에 대한 질문을 볼 수 있습니다. 구성 가능한 변수에 대한 질문을 볼 수 있습니다. 당신의 대답을 upvoting. –