반응형

playbook을 import 하여 실행 하는 방법

  1. Command : import_playbook
    • 아래와 같이 merge_task.yml을 만들고 저장
    • 설명
      • host: local     # inventory 파일에 [local] 추가
      • import_playbook: ./makeoriginaltar.yml      # makeoriginaltar.yml을 실행
    • 기타 사항
      • 유사한 문법으로 include가 있으나, include는 사용하지 말고 import_task를 사용하라는 메시지가 나옴
      • include는 추후 deprecated 될 수 있음
    • 실행 결과
      • SSH 관련 오류 발생 시
        • Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). 라는 메시지 발생 함
        • 사유 : local(127.0.0.1)로 설정하였으나, 내부적으로도 ssh 연결을 하는 듯 함 (추후 확인 필요)
        • 내부에 authorized_keys 생성 필요

        • 사용자 계정(HOME)에 .ssh 디렉토리에 id_rsa.pub을 authorized_keys로 복사
        • #cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
        • -
      • 성공 
        • 중간 로그 생략
        • 각 노드 확인
  2. 전체 소스
    • hosts.inv
    • -
    • merge_task.yml
    • -
    • makeoriginaltar.yml
    • -
    • deploytar2.yml
    • -
  3. 실행 명령
    • ansible-playbook
    • -
  4. 전체 소스 
  5. 추가 목표
    • 외부 변수 등을 받아 처리하는 방법