여기 참조

 

왜사용?

하나의 서버에서 다른 서버들을 원격으로 관리하면서, 배포같은 작업을 수행하고자 할 때 편함

ansible 내부적으로 원격으로 다른 서버를 조작하는데는 ssh가 쓰임

ansible설치는 하나의 서버에만 하면됨. (조작을 당하는 서버에는 ansible설치 필요 없음)

python으로 만들어진듯

 

할수 있는 일

설치 yum, apt-get, ...

다운로드 git, get_url, ...

실행 shell, task, ...

 

 

설치

centos기준  $sudo yum install ansible

 

host설정

원격으로 관리할 서버들을 지정해준다.

sudo vi /etc/ansible/hosts를 열어서 열거해주면 된다. 그룹도 지원.

예를들면 다음과 같이 써준다.

1
2
3
[myhome]
127.0.0.1
 
cs

 

host별로 ssh-key복사해주기

여기보고 따라하면 된다.

$ ssh-keygen -t rsa -C "userid@127.0.0.1" 이걸로 ssh-key만들어주고

$ ssh-copy-id userid@127.0.0.1 이걸로 host마다 복사해주면됨

 

ping날려보기

host설정이 잘된지 확인하기 위해 다음 명령어를 날려볼 수 있다.

$ ansible myhome -m ping

전반적인 single line, adhoc command에 대해서는 여기 참조 < 강추.. 하나씩 따라해보자

 

playbook사용해서 여러줄 동시에 실행하기

여기, 여기, 여기 참조 < 이것도 두번째 링크 강추 

 

 

 

playbook은 yaml 문법을 사용하고, jinja문법으로 분기등 약간의 프로그래밍이 가능하다, 

 

로깅

/etc/ansible/ansible.cfg에 log_path를 정해준대로 로깅이 된다.

 

 

task만으로도 playbook을 돌릴 수 있는데, role이 별도로 필요한 이유는 뭘까?

jenkins와의 차이점은 뭐지?

 

 

Agentless automation tool?

Ansible does not add a database, and there will be no daemons to start or keep running.

 

play book을 yaml을 사용해서 기술

반응형

'Programming > Linux' 카테고리의 다른 글

vimdiff  (0) 2021.04.07
X Window System(X11) - 여러 호스트에서 ssh로 붙어서 사용하기  (0) 2021.01.08
tmux and byobu  (0) 2020.09.21
vim  (0) 2020.09.20
리눅스 퍼미션 개념(파일 권한 관련)  (0) 2020.04.10

+ Recent posts