IaC/Ansible

[Ansible] Ansible 명령어 옵션

nayoungs 2022. 4. 13. 23:04
728x90

📌INDEX



✔️ Ansible 옵션

SSH 접속 옵션

  • -u REMOTE_USER, --user REMOTE_USER : SSH 접속 계정(기본: 현재 사용자)
  • -k, --ask-pass : 옵션 사용 SSH 패스워드 인증
    • 옵션 사용하지 않으면 --> SSH 키 인증

ansible의 기본 인증 방법: SSH 키 인증

 

권한 상승 옵션

  • -b, --become : 권한 상승
    • 옵션 사용하지 않으면 --> 권한상승 하지 않음
  • --become-method <sudo|su>
    • sudo: 기본값
    • su
  • --become-user : 어떤 사용자?
    • root: 기본값
  • -K, --ask-become-pass : sudo 패스워드 묻기
    • 옵션 사용하지 않으면 --> Passwordless sudo

 

설정 파일

[defaults]
remote_user=<SSH_USER>
ask_pass=<True|False>
host_key_checking=<True|False>

[privilege_escalation]
become=<True|False>
become_ask_pass=<True|False>
become_method=<sudo|su>
become_user=<SUDO_USER>
  • ask_pass 기본값: false
  • host_key_checking 기본값: true
  • become 기본값: false
  • become_ask_pass 기본값: false
  • become_method 기본값: sudo



✔️ ansible-config 명령

  • ansible-config 명령으로 설정 파일을 검증, 확인할 수 있음
  • 해당 명령으로 디버깅도 가능

 

ansible-config list

ansible-config list

 

ansible-config dump

ansible-config dump
  • 모든 설정의 기본 값 및 변경 값 표시(항목 확인)
  • 초록색 : 이상 없고 변경 사항 없을 때
  • 노란색 : 변경 되었을 때
  • 빨간색 : 실행이 안되었을 때, 문제가 있을 때

 

ansible-config view

  • 현재 적용되는 설정 파일의 내용 표시
[vagrant@controller ~]$ ansible-config view
[defaults]
inventory=./inventory.ini



✔️ 모듈

ansible-doc -l
  • 모듈 상세 정보
ansible-doc <MODULE_NAME>



✔️ ad-hoc 명령

ansible <HOST_PATTERN> -m <MODULE> -a <PARAMETER>

 

예시

  • 아래 인벤토리 파일로 진행
[vagrant@controller ~]$ cat inventory.ini
192.168.100.11
192.168.100.12

[web]
weba
webb

[db]
weba
dba
dbb
[vagrant@controller ~]$ ansible '192.168.100.*' --list-hosts
  hosts (2):
    192.168.100.11
    192.168.100.12
[vagrant@controller ~]$ ansible 192.168.100.11,192.168.100.12 --list-hosts
  hosts (2):
    192.168.100.11
    192.168.100.12
  • 합집합
[vagrant@controller ~]$ ansible web:db --list-hosts 
  hosts (4):
    weba
    webb
    dba
    dbb
  • 교집합
[vagrant@controller ~]$ ansible 'web:&db' --list-hosts 
  hosts (1):
    weba
  • 차집합
[vagrant@controller ~]$ ansible 'web:!db' --list-hosts
  hosts (1):
    webb

but, 패턴은 문제 발생 소지가 있으므로 되도록이면 사용하지 않는 것이 좋음

교집합과 같은 경우도 차라리 그룹을 새로 생성하는 것이 좋음

 

 

 

728x90