Linux 23 (Puppet & Ansible)

다원·2023년 2월 4일
0
post-custom-banner

Puppet Ansible

puppet은 일괄적으로 중앙에서 관리해주는 도구
puppet master:서버의 역할을 하는 머신
puppet client: master 머신을 통해 여러 대의 puppet agent로 불림
master는 agent의 상태를 수집 가능
agent는 일정시간마다 maser에 접속하여 자신의 서버 정보와 비교해서 업데이트 된 부분 발견 시 agent 스스로 업데이트

Puppet master 서버에서 ~.pp 명세 파일(manifest file)에 작업 지시 등을 필요한 것을 설정해두면, agent 노드들에 일괄적으로 적용되어 client 관리에 우수
버전으로 관리하는 것으로, 클라우드에서는 Ansible을 이용하여 관리함

manifest file: agent에 일괄적으로 적용할 작업 지시 등을 설정
class: 명세 파일 안에 설정 할 리소스가 많을 경우 그롭화

puppet도 인증서를 기반으로 사용하므로 certname이 중요함

Puppet file, package, service

manifest file: agent에 일괄적으로 적용할 작업 지시 등을 설정
class: 명세 파일 안에 설정 할 리소스가 많을 경우 그롭화
include: 리소스들을 묶어서 class로 정의하면 include 로드 모듈도 명세파일에서 정희 될 수 있음
facter: 명세 파일 설정된 상황의 원격

install & Server Setting

rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
yum -y install puppet-server(master)

  • hosts 수정 후 sleav1과 sleav2 전송

  • puppet.conf > main

dns_alt_names = master.kahn.edu master
certname = master

  • systemctl start puppetmaster

clinet Setting

rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
yum -y install puppet

  • puppet.conf > agent
    server = master
    certename = slave1
    runinterval = 60 (runinterval: 서버의 명세 파일에서 접속할 때 사용할 interval)
  • sysconfig/puppet
    MASTER 설정

master에서 agent와의 보안 연결

agent에서 인증서 확인

server_명세 파일 설정

명세 파일에서 group 생성

Ansible

puppet이 manifest 파일을 통해서 작업을 지시하는 것처럼 playbook을 통해서 작업을 지시
서버에서만 작업하고 클라이언트에 설정할 필요는 없음

설치 후 /ansible/hosts 파일 설정
ansible_client 구문을 추가

sample.yml 파일을 생성하고

ansible은 palybook을 이용하여 작업을 지시함

-k옵션:
clinet에서 localhost를 확인해보면 sample.yml 파일의 내용 출력

profile
공부일지,
post-custom-banner

0개의 댓글