반응형
  1. 노드의 Firewall을 AWX로 시작하기
  2. RESOURCES > Templates에서 를 눌러 신규 Template를 하기와 같이 작성 후 저장
    • NAME : Firewall Start
    • JOB TYPE : Run
    • INVENTORY : AWX_TEST
    • PROJECTS : awx_test
    • PLAYBOOK : startFirewall.yml
    • CREDENTIAL : AWX_CRED
    • -
  3. 저장 후 확인
    • ACTIVITY는 실행 후 정상이면 로 표시되며, 실행시 마다 우측으로 밀림
    • -
  4. Firewall Start의 실행을 위한 nodeVM의 프로세스 확인
    • 실행결과 확인을 위하여 nodeVM에서 firewall 프로세스를 확인
    • #ps -ef | grep firewall
    • Node1 VM
    • Node2 VM
    • firewall을 기동 시키는 테스트이므로 기존 firewall 서비스를 중지
    • #systemctl stop firewalld
    • Node1 VM
    • Node2 VM
    • 두개의 Node에 모두 Firewall 중지 확인
    • -
  5. AWX에서 Firewall Start를 수행
    • 를 눌러 Template를 수행
    • 다음과 같이 결과가 화면에 표시 됨
    • 실패 시 원인을 찾아 조치 수행 
    • -
  6. Node VM에서 firewall 기동 확인
    • Node1 VM 최종 결과 (상위작업 내역 포함)
    • Node2 VM 최종 결과 (상위작업 내역 포함)
    • -
  7. 목표
    • AWX를 이용하여 Node단 방화벽 기동


반응형
  1. Templates 생성
    • RESOURCES > Templates를 클릭
    • 우측 화면의 를 선택하면 이 표시되며 이중 Job Template를 선택
    • Workflow Template 는 추후 업데이트 필요
    • NAME : HelloWorld
    • JOB TYPE : Run
    • INVENTORY : AWX_TEST (Inventories에서 생성)
    • PROJECT : awx_test (Projects에서 생성)
    • PLAYBOOK : helloworld.yml (yaml에서 생성)
    • CREDENTIAL : AWX_CRED (Credentials에서 생성, 미 선택시 Node VM과 통신이 실패하여 Template 실행 시 Failed가 됨)
    • 나머지는 기본으로 두고 를 눌러 저장
  2. 저장 이후 기능들이 활성화 됨
  3. 실행
    • 저장하면 하단에 신규 Template가 표시됨
    • 테스트를 위하여 를 클릭하면 Template가 실행 됨
    • 화면이 전환되며, 실행 결과가 다음과 같이 표현 됨
  4. 목표
    • Template의 생성과 실행


반응형
  1. yaml이란
    • YAML Ain't Markup Language의 약어
    • 구조화된 데이터나 오브젝트를 문자열로 변환 및 관리하기 위한 데이터 형식의 한 종류
    • 사람이 쉽게 읽을 수 있는 데이터 직렬화 양식
    • JSON이나 XML과 유사하나 가독성이 뛰어남
    • JSON과 상위 호환
    • 확장자는 대부분 .yml로 표기 (8.3 포맷의 경우)
    • 공백문자의 갯수로 상위와 구분 (탭문자는 사용할 경우 디버깅의 문제가 발생함)
    • 특수문자는 \(역슬래쉬)키와 함께 사용 됨 (c 코딩 패턴과 유사)
  2. yaml 방식 비교
    • 구분
      소스 (단순 비교를 위한 코드임)
      XML<keys>
        <key1> <value>value1</value>
      </key1>   <key2> <value>1</value> <value>2</value> <value>3</value>
      </key2> 

        <key3> <keys> <keys3-1> <value>1</value> </keys3-1> <keys3-2> <value>4</value> <value>5</value> <value>6</value> </keys3-2> </keys>
      </key2>  </keys>
      JSON
      {"key1":"value1","key2":[1,2,3]","key3":{"key3-1":"value3-1","key3-2":"value":[4,5,6]}}
      YAML---
      key1: value1
      key2: [1,2,3]
      key3:
       key3-1: value3-1
       key3-2: [4,5,6]
  3. 샘플 코드 작성
    • 하기 샘플 코드는 다른 명령어로도 가능하나 기본적인 테스트를 위해 작성 됨
    • HOST VM에 접속하여 샘플 코드를 /var/lib/awx/projects/awxtest에 각각 작성하여 저장
    • vi 명령어는 VI명령어 를 참조
    • 주의 : 모든 소스의 들여쓰기는 맞추어야 함(우측 이미지 참고, 탭 사용 금지)
    • helloworld.yml 작성
    • ---
      - name: Hello World!
      hosts: all

      tasks:
      - name: Hello World!
      shell: echo "Hi! It is working"

    • firewall 서비스 시작 (startFirewall.yml)
    • ---
      - name: Turn on the FireWall in system
      hosts: all

      tasks:
      - name: execute command for firewall
      shell: systemctl start firewalld

    • firewall 서비스 중지 (stopFirewall.yml)

    • ---
      - name: Turn on the FireWall in system
      hosts: all

      tasks:
      - name: execute command for firewall
      shell: systemctl stop firewalld

    • 작성 후 최종 화면 (read 권한 확인)
    • -
  4. 목표
    • yaml 파일 생성