yaml 편집에 대한 설정

*들여쓰기에 대한 공백은 무관하지만 2칸을 보편적으로 사용한다.


$HOME/.vimrc

  • ts: tab 키를 눌렀을때 두칸 들여씀.
  • sw: 다음줄을 자동으로 들여스고, 탭을 공백으로 확장함.
  • paste: 복사한 내용을 붙여넣기 할경우에 적용.

autocmd Fileype yaml setlocal ai ts=2 sw=2 et paste

다중 플레이 작성

---
- name: first play
  hosts: webservers
  remote_user: devops
  become: true
  tasks:
    - yum:
        name: htpd
    - service:
        enabled: true


- name: second play
  hosts: dvservers
  tasks:
    - yum:
      name: mariadb
    - service:
        enabled: true

모듈 유지 관리

  • stableinterface : 모듈의 매개 변수가 안정적이며, 매개 변수를 제거하거나 의미를 변경하지 않도록 모든 노력을 기울입니다.
  • preview: 모듈이 기술 프리뷰에 있고 불안정할 수 있으며, 해당 매개 변수가 변경되거나 호환되지 않는 변경의 영향을 받는 라이브러리 또는 웹서비스가 필요할 수 있습니다.
  • deprecated: 모듈이 사용되지 않으며, 일부는 향후 릴리즈에서 더 이상 사용할 수 없습니다.
  • removed: 모듈이 릴리즈에서 제거되었지만 이전 사용자가 새 모듈로 마이그레이션하는 데 도움이 되도록 스텀이 설명서 용도로 존재합니다.
[student@workstation basic-playbook]$ ansible-doc yum
> YUM    (/usr/lib/python2.7/site-packages/ansible/modules/packaging/os/yum.py)


~~~~~~~~~~~~~
METADATA:
        Status: ['stableinterface']
        Supported_by: core

호스트 관리 작업 - 플레이북

  • 플레이북 구현
    • 플레이북을 사용하여 관리 대상 호스트에서 관리 작업을 구성하고 수행합니다.
    • 플레이북을 구성하고 실행하여 관래 대상 호스트에 웹서비스 및 데이터베이스 서비스를 설치, 구성하고 해당 상태를 확인 할 수 있습니다.
ansible.cfg
[student@workstation imp-lab]$ cat ansible.cfg 
[defaults]
inventory=inventory
remote_user=devops

[privilege_escalation]
become=False
become_method=sudo
become_user=root
become_ask_pass=False
[student@workstation imp-lab]$ 
inventory
[student@workstation imp-lab]$ cat inventory 
serverb.lab.example.com
[student@workstation imp-lab]$ cat internet.yml 
---
- name: check package
  hosts: serverb.lab.example.com
  become: yes
  tasks:
    - name: laest enabled and running
      yum:
        name:
          - firewalld
          - httpd
          - php
          - php-mysql
          - mariadb-server
        state: latest
  
    - name: firewalld enabled and running
      service:
        name: firewalld
        enabled: true
        state: started


    - name: firewalld permits http service
      firewalld:
        service: http
        permanent: true
        state: enabled
        immediate: yes

    - name: httpd enabled and running
      service:
        name: httpd
        enabled: true
        state: started

    - name: mariadb enabled and running
      service:
        name: mariadb
        enabled: true
        state: started

    - name: test php page is installed
      get_url:
        url: "http://materials.example.com/grading/var/www/html/index.php"
        dest: /var/www/html/index.php
        mode: 0644

- name: Test internet web server
  hosts: localhost
  become: no

  tasks:
    - name: connect to internet web server
      uri:
        url: http://serverb.lab.example.com
        status_code: 200



  • No labels
Write a comment…