SaltSack 입문 (4) Salt 상용 모듈 사용

다음은 salt 에서 자주 사용 하 는 모듈 을 실례 를 들 어 설명 하고 salt 의 사용 을 더욱 익히다.
모듈 참조 주소:http://docs.saltstack.cn/zh_CN/latest/ref/states/all/index.html
pkg 모듈:
1. 소프트웨어 설치
vim:
  pkg.installed:
    - name: vim-enhanced

2. 여러 소프트웨어 설치
vim:
  pkg.installed:
    - names:            #    ,      ,names
      - vim-enhanced
      - lrzsz

서비스 모듈:
1. apache 를 설치 하고 시작 합 니 다.
httpd:
  pkg.installed:
    - name: httpd
  service.running:
    - enable: True
    - require:         
    #    ,           ,  httpd     ,   service.running  
      - pkg: httpd     # pkg        

2. 설정 파일 을 apache 서버 에 배포 합 니 다.
file.managed:
  - name: /etc/httpd/conf/httpd.conf
  - source: salt://apache/conf/httpd.conf

3. apache 설정 파일 에 변동 이 있 으 면 설정 을 다시 불 러 옵 니 다.
httpd:
  pkg.installed:
    - name: httpd
  file.managed:
    - name: /etc/httpd/conf/httpd.conf
    - source: salt://test/httpd.conf
    - require:
      - pkg: httpd
  service.running:
    - enable: True
    - reload: True
    - watch:             
    #  httpd.confp        ,      httpd  
      - file: /etc/httpd/conf/httpd.conf
    - require: 
      - pkg: httpd

cmd 모듈:
1. 컴 파일 설치 nginx
nginx_source:
  file.managed:
    - name: /tmp/nginx-1.6.2.tar.gz
    - unless: test -f /tmp/nginx-1.6.2.tar.gz    
    #      unless,       ,         ,       nginx_source ID,    
    - source: salt://test/nginx-1.6.2.tar.gz
nginx_unzip:
  cmd.run:
    - cwd: /tmp
    - names: tar zxf nginx-1.6.2.tar.gz
    - unless: test -d /tmp/nginx-1.6.2
    - require:
      - file: nginx_source
nginx_pkg:
  pkg.installed:
    - names:
      - gcc
      - make
      - openssl-devel
      - pcre-devel
      - zlib-devel
nginx_install:
  cmd.run:
    - cwd: /tmp/nginx-1.6.2
    - name: ./configure --prefix=/usr/local/nginx1.6 && make && make install && /usr/local/nginx1.6/sbin/nginx   
    #        names ,    ,           ,            ,       。
    - require:     
    #    ID  ,      /tmp/nginx-1.6.2    ,    gcc、make、pcre      ,   nginx_install  ID
      - cmd: nginx_unzip                
      - pkg: nginx_pkg
    - unless: test -d /usr/local/nginx1.6

컴 파일 링 설치 nginx 사 고 를 소개 합 니 다. 그 중에서 file, cmd. run, pkg 모듈 을 사 용 했 습 니 다.
file 모듈:
1. 서류 배포
file_cp:
  file.managed:
   - name: /etc/httpd/conf/httpd.conf
   - source: salt://test/httpd.conf

2. 목록 배포
tmp_cp:
  file.recurse:
    - name: /tmp
    - source: salt://tmp

3. 디 렉 터 리 를 만 들 고 권한 부여
/opt/tmp:
  file.directory:
    - user: nginx
    - group: nginx
    - file_mode: 744
    - makedirs: True

user 모듈:
1. 사용자 nginx 만 들 기
create_user:
  user.present:  #        ,        
    - name: nginx
    #- uid: 1501
    #- gid: 1501
    - createhome: False
    - shell: /sbin/nologin
    #- groups:
    #  - nginx

2. 사용자 nginx 삭제
del_user:
  user.absent:
    - name: abc

그룹 모듈:
1. 그룹 abc 만 들 기
create_group:
  group.present:
    - name: abc
    #- gid: 1501
    - addusers:     #         
      - user1
      - user2
    #- delusers:     #          
    #  - u1
    #  - u2

2. 그룹 abc 삭제
del_group:
  group.absent:
    - name: abc

cron 모듈:
1. 정시 퀘 스 트 계획 추가
script_cron:
  cron.present:
    - name: /bin/bash /opt/tmp/test.sh
    - user: root
    - minute: 01
    - hour: 0

주: minute: 분
시간
daymonth: 일
달: 달
주간

좋은 웹페이지 즐겨찾기