'전체 글'에 해당되는 글 120건

  1. 2019.01.29 ansible-vault를 이용한 암호화
  2. 2019.01.29 ansible source build
  3. 2019.01.29 fail module 사용법 정리
posted by 귀염둥이채원 2019. 1. 29. 18:18

Ansible Vault는 패스워드, 키와 같은 보안에 민감한 파일들을 암복호화해주는 기능이다.
Ansbile에서 사용하는 모든 구조화된 데이터 파일을 암호화 할수 있다.
참고로 ansible을 설치하면 ansible-vault도 설치가 된다.

# ansible-vault 

 Usage: ansible-vault [create|decrypt|edit|encrypt|encrypt_string|rekey|view] [options] [vaultfile.yml]

encryption/decryption utility for Ansible data files

Options:
--ask-vault-pass ask for vault password
-h, --help show this help message and exit
--new-vault-id=NEW_VAULT_ID
the new vault identity to use for rekey
--new-vault-password-file=NEW_VAULT_PASSWORD_FILES
new vault password file for rekey
--vault-id=VAULT_IDS the vault identity to use
--vault-password-file=VAULT_PASSWORD_FILES
vault password file
-v, --verbose verbose mode (-vvv for more, -vvvv to enable
connection debugging)
--version show program's version number and exit

See 'ansible-vault <command> --help' for more information on a specific




# 암호화된 파일을 생성하기
$ ansible-vault create foo.yml

# 암호화된 파일 수정하기
$ ansible-vault edit foo.yml

# 암호화된 파일의 패스워드 변경하기
$ ansible-vault rekey foo.yml

# 암호화되지 않은 파일을 암호화
$ ansible-vault encrypt foo.yml

# 암호화된 파일의 복호화
$ ansible-vault decrypt foo.yml

# 암호화된 파일의 내용 보기
$ ansible-vault view foo.yml


# ansible-vault를 사용해보기
1. hosts 파일을 암호화
[test@1ff25a8ed818 dse]$ ls
common_vars files group_vars hosts play.yml README.md roles


[test@1ff25a8ed818 dse]$ ansible-vault encrypt hosts

New Vault password: test
Confirm New Vault password: test
Encryption successful


2. 암호화된 hosts 파일 내용 확인
[test@1ff25a8ed818 dse]$ ansible-vault encrypt hosts
New Vault password: test
Confirm New Vault password: test
Encryption successful
[test@1ff25a8ed818 dse]$ ansible-vault view hosts


3. playbook 실행하기
ansible-playbook 실행시 --ask-vault-pass 옵션을 넣어주면 된다.
[test@1ff25a8ed818 dse]$ ansible-playbook --ask-vault-pass -i hosts play.yml -t install
Vault password:

파일에 vault password를 저장해서 사용이 가능하다.
[test@1ff25a8ed818 dse]$ cat vault_pass.txt
test
[test@1ff25a8ed818 dse]$ ansible-playbook -i hosts play.yml -t install --vault-password-file=vault_pass.txt


# 참고 사이트
https://docs.ansible.com/ansible/2.5/user_guide/vault.html

'Tool > ansible' 카테고리의 다른 글

ansible role template 생성하기  (0) 2019.02.01
ansible handler란?  (0) 2019.02.01
serial keyword를 이용한 rolling update  (0) 2019.01.29
ansible source build  (0) 2019.01.29
fail module 사용법 정리  (0) 2019.01.29
posted by 귀염둥이채원 2019. 1. 29. 18:15

CentOS에서 ansible source build 방법을 정리한다.


$ yum install epel-release
$ yum install python-pip
$ pip install paramiko PyYAML jinja2 httplib2
$ git clone https://github.com/ansible/ansible.git --recursive
$ cd ./ansible
$ git checkout tags/v2.4.2.0-1
$ source ./hacking/env-setup


# 참고 사이트
https://docs.ansible.com/ansible/2.7/installation_guide/intro_installation.html
https://www.lesstif.com/pages/viewpage.action?pageId=22052879

'Tool > ansible' 카테고리의 다른 글

ansible role template 생성하기  (0) 2019.02.01
ansible handler란?  (0) 2019.02.01
serial keyword를 이용한 rolling update  (0) 2019.01.29
ansible-vault를 이용한 암호화  (0) 2019.01.29
fail module 사용법 정리  (0) 2019.01.29
posted by 귀염둥이채원 2019. 1. 29. 18:14

when 조건에 만족하는 경우,

message에 정의된 내용을 출력해준다.


# example

# Example playbook using fail and when together

- fail:

    msg: "The system may not be provisioned according to the CMDB status."

  when: cmdb_status != "to-be-staged" 


- name: fail the play if the previous command did not succeed

  fail:

    msg: "the command failed"

  when: "'FAILED' in command_result.stderr" 


# 참고 사이트

https://docs.ansible.com/ansible/latest/modules/fail_module.html

https://docs.ansible.com/ansible/latest/user_guide/playbooks_error_handling.html

https://ansible-manual.readthedocs.io/en/v1.8.4-doc/playbooks_error_handling.html

'Tool > ansible' 카테고리의 다른 글

ansible role template 생성하기  (0) 2019.02.01
ansible handler란?  (0) 2019.02.01
serial keyword를 이용한 rolling update  (0) 2019.01.29
ansible-vault를 이용한 암호화  (0) 2019.01.29
ansible source build  (0) 2019.01.29