본문 바로가기

Ansible

[Ansible] 사용자 계정 설정 (에티버스러닝-멀티 클라우드 엔지니어 교육)

에티버스러닝의 K-Digital Training 멀티 클라우드 엔지니어 교육을 수강한지 벌써 거의 2달이 다 되어간다. 

지금 수업을 담당하고 계시는 강사님은 다음 주까지만 일정이 잡혀 있으셔서, 벌써 아쉽다는 생각이 든다. 

이번 주 수업 주제는 '컨테이너, 쿠버네티스와 Openshift'이다. 그래서 저번 주까지 배운 ansible을 복습하는 용도로 글을 작성했다. 

 

 

 

 

ansible을 사용하기 전에는 ansible이 설치가 되어 있어야 한다. 

 

[Ansible] ansible의 설치와 시작 (tistory.com)

 

[Ansible] ansible의 설치와 시작

ansible의 설치 yum install -y epel-release epel yum install -y ansible inventory 생성 /etc/ansible/hosts가 기본 파일이므로 이곳에 inventory를 생성한다. inventory란? 통신할 수 있는 대상을 지정하는 것 /etc/ansible/hosts [a

cloud-mi.tistory.com

여기에 설치 명령어를 적어놓았다. 

 

또한 ansible은 ssh를 사용하기 때문에 그와 관련된 설정도 필요하다. 

 

 


 

 

1. 애드훅(Ad-Hoc) 명령어 사용

adhoc: playbook을 작성하지 않고 command-line에서 직접 모듈을 호출하여 실행한다. 

사용법은 다음과 같다. 

 

- 기존에 사용하던 inventory 파일(/etc/ansible/hosts)을 사용하는 경우

ansible [인벤토리] -m [모듈명] -a [모듈 옵션]

 

- inventory 파일을 따로 만든 경우

ansible -i [인벤토리 파일명] [인벤토리] -m [모듈명] -a [모듈 옵션]

 

 

사용자 계정을 설정하는 애드훅 명령어를 command 창에 입력해보았다. 

Inven.lst라는 인벤토리 파일에서 test 라는 인벤토리에 모듈을 적용한다. 

사용하는 모듈의 이름은 user이다. name은 a로 password는 It1로 sha512를 암호화 방식으로 지정한다. 

 

확인

/etc/shadow 파일에서 비밀번호가 설정된 것을 확인할 수 있다. 

 

 

 

 

2. yaml 파일 만들기

위와 같은 user.yaml 파일을 만든다.

 

 

ansible-playbook -i inven.lst user.yml -v

그리고 command-line에 위의 명령어를 입력한다. 

이때, -v는 상세하게 보겠다는 옵션이다. 만약 더 상세하게 보고 싶다면 v를 5개까지 쓸 수 있다.