您好,登錄后才能下訂單哦!
1. 狀態相關模塊
1.1 pkg
1.2 file
1.3 service
1.4 requisites
2. 實際應用
狀態模塊:pkg
功能:管理軟件包狀態
常用方法:
pkg.installed # 確保軟件包已安裝,如果沒有安裝則安裝
pkg.latest # 確保軟件包是最新版本,如果不是,則進行升級
pkg.remove # 確保軟件包已卸載,如果之前已安裝,則進行卸載
pkg.purge # 除remove外,也會刪除其配置文件
官方文檔:
https://docs.saltstack.com/en/latest/ref/states/all/salt.states.pkg.html
狀態模塊:file
功能:管理文件狀態
常用方法:
file.managed # 保證文件存在并且為對應的狀態
file.recurse # 保證目錄存在并且為對應狀態
file.absent # 確保文件不存在,如果存在則刪除
官方文檔:
https://docs.saltstack.com/en/latest/ref/states/all/salt.states.file.html
狀態模塊:service
功能:管理服務狀態
常用方法:
service.running #確保服務處于運行狀態,如果沒有運行則啟動
service.enabled # 確保服務開機自動啟動
service.disabled # 確保服務開機不自動啟動
service.dead # 確保服務當前沒有運行,如果運行則停止
官方文檔:
https://docs.saltstack.com/en/latest/ref/states/all/salt.states.service.html
狀態模塊:requisites
功能:處理狀態間關系
常用方法:
require # 我依賴某個狀態(要求、需要)
require_in # 我被某個狀態依賴(被要求、被需要)
watch # 我關注某個狀態(監控)
watch_in # 我被某個狀態關注(被監控)
官方文檔:
https://docs.saltstack.com/en/latest/ref/states/requisites.html
[root@salt-master112 salt]# cat /srv/salt/dev/lamp.sls
lamp-pkg-install:
pkg.installed:
- names:
- php
- php-fpm
- mysql
- php-mysql
- php-pdo
apache-service:
pkg.installed:
- name: httpd
file.managed:
- name: /etc/httpd/conf/httpd.conf
- source:
- salt://files/httpd.conf
- user: root
- group: root
- mode: 644
- require:
- pkg: apache-service
service.running:
- name: httpd
- enable: True
- reload: True
- watch:
- file: apache-service
mysql-service:
pkg.installed:
- name: mysql-server
- require_in:
- file: mysql-service
file.managed:
- name: /etc/my.cnf
- source:
- salt://files/my.cnf
- user: root
- group: root
- mode: 644
- watch_in:
- service: mysql-service
service.running:
- name: mysqld
- enable: True
php-fpm-service:
service.running:
- name: php-fpm
- enable: True
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。