2017년 3월 26일 일요일

salt-ssh를 이용한 salt minion 자동설치

salt-ssh의 작동방식

일반적으로 salt는 master와 minion이 zeroMQ를 이용하여 통신
이렇게 하려면 관리하려는 모든 서버에 minion이 설치되어야 함

salt-ssh는 minion 없이 서버를 관리할 수 있는 기능을 제공

salt-ssh 대신 salt-minion을 사용하는가?

minion을 이용하는 것이 수행 속도가 더 빠르고, 자원을 적게 소모함
보안적인 요건에 따라서 ssh로 접근하기 어려운 경우가 많음 (DMZ 같은 경우)

새로운 서버가 salt의 관리 영역에 들어올 수 있도록 minion을 설치 하는데 사용할 것임

salt-ssh 시작하기

설치는  master 서버에 salt-ssh 패키지를 설치하면 됨 (공식 가이드에 따를 것)
대상 연결 - 연결 대상 서버의 정보를 roster 파일에 등록
/etc/salt/rotster
 id:
  host: 1.1.1.1
  user:  root

연결할 대상의 ip와 사용자 계정으로 간단한 목록을 작성
만약 root가 아닌 다른 유저를 사용하고 싶다면, 일반유저로 등록하고 sudo를 사용하도록 함

id:
  host: 1.1.1.1
  user:  myuser
  sudo: True
sudo 옵션을 사용하기 위해서는 sudoers에 NOPASSWD:ALL 설정이 되어 있어야 함

/etc/sudoers.d/myuser
myuser ALL=(ALL) NOPASSWD:ALL

ssh key를 이용한 연결

sudo salt-ssh '*' --priv=private-key-file -i test.ping

패스워드를 이용한 연결

sudo salt-ssh '*' --passwd=passwd -i test.ping

minion에 파이선 2.7 설치되지 않았을 때는 -r옵션을 이용해서 명령을 수행함

sudo salt-ssh '*' --priv=key -i -r 'sudo apt-get -y install python'

salt-ssh를 이용한 salt minion 자동설치

salt-ssh의 작동방식 일반적으로 salt는 master와 minion이 zeroMQ를 이용하여 통신 이렇게 하려면 관리하려는 모든 서버에 minion이 설치되어야 함 salt-ssh는 minion 없이 서버를 관리할 수 있는 기능을 제공...