2016-10-21 5 views
1

제 시나리오는 localhost, host2 및 host3의 세 가지 시스템으로 구성됩니다. host2에서 host3으로 전환하지 않고 host2에서 여전히 재생중인 동안 host3에서 일부 작업/명령을 실행하고 싶습니다. 가능합니까? local_action 모듈을 사용할 수는 있지만 localhost에서 작업을 실행하지만 host2에있는 동안 host3에서 명령을 실행하고 싶습니다. 어떤 사람이 포인터를 줄 수 있다면 좋을 것입니다. 아래는 내가 달성하기 위해 노력하고 무엇을 설명 할 수 있습니다원격 호스트에서 가능한 작업을 실행하고 싶습니다

- name: Playing host2 
    hosts: host2 
    become: yes 
    tasks: 
    - name: run following commands on host3 
     local_action: command <command1 for host3> 
     local_action: command <command2 for host3> 
    - name: continue to run host2 
     command: <command for host2> 

내가 host3에게상의하지 127.0.0.1에 명령을 실행할 수 있도록 local_action에 대한 대체가 있습니까?

많은 덕분에, 디팍

답변

2

당신은이 경우 delegate_to를 사용할 수 있습니다. 당신은 단순히 다른 컴퓨터에 특정 명령을 위임 할 delegate_to를 사용할 수 있습니다 또한

- name: Playing host2 
    hosts: host2 
    become: yes 
    tasks: 
    - name: run following commands on localhost. 
     shell: hostname 
     delegate_to: 127.0.0.1 

    - name: continue to run host2 
     shell: hostname 

대상 목록 : 경우에 당신은 ("호스트"단일 호스트에서 언급) 단일 호스트에서 플레이를 실행 , delegate_to과 함께 그 경우에, 당신은뿐만 아니라 run_once를 사용해야합니다 ("호스트"에 지정된 그룹) : 노드 그룹이

- name: Playing on group of hosts. 
    hosts: someGroup 
    become: yes 
    tasks: 
    - name: run following commands on localhost. 
     shell: hostname 
     delegate_to: 127.0.0.1 
     run_once: true 

    - name: continue to run on group hosts. 
     shell: hostname 

편집 :에서 host3에게에 연결하는 동안는 암호없이 인증이 사용됩니다 localhost. 따라서 키 기반 인증을 이미 구성했는지 확인하십시오.

참고 : 항상 한 장의 연극에 여러 개의 연극을 넣을 수 있습니다. 따라서 host2에서 실행할 명령 집합을 가지고 있고 host3에서 실행할 명령 집합을 가지고 있다면 하나의 플레이 북에서 여러 개의 재생을 사용하는 것이 좋습니다.

+0

답장을 보내 주셔서 감사합니다. @ Shasha99. –

+0

내 경우에는 로컬 호스트를 사용하여 나의 플레이 북을 사용하는 안전한 호스트로 사용하고 있습니다. 어느 날 새로운 호스트를 생성합니다 (host2 및 host3). host3에서 명령을 실행하고 host2로 돌아가고 싶습니다. 나는 delegate_to : host3을 사용하여 시도했지만 그 다음에는 ssh를 통해 호스트에 연결하지 못했습니다. localhost에서 명령을 실행하고 싶지 않습니다. 당신이 언급 한 예제는 localhost에 작업을 위임하고 싶지만 내 경우에는 locahost에 위임하기를 원하지 않는다고 생각합니다. 어떤 생각을 내가 어떻게 ssh 오류 없애 수있는이 경우 점점? Thanks Again –

+0

'-name : playing host2 –

관련 문제