states是saltstack中的配置語言,在日常進行配置管理時需要編寫大量的states檔案。比如我們需要安裝乙個包,然後管理乙個配置檔案,最後保證某個服務正常執行。這裡就需要我們編寫一些states sls檔案(描述狀態配置的檔案)去描述和實現我們的功能。編寫的states sls檔案都是yaml語法,states sls檔案也支援使用python語言編寫。
所謂的狀態就是希望系統執行某些命令之後的結果。描述狀態使用yaml格式的檔案。sls:salt state
舉例安裝apache,如下:
解釋說明:
apache:id宣告,在base下全域性唯一
pkg:狀態模組
.:引用關係
installed:模組中的方法
::代表層級關係
name:可以理解為引數,後面跟的是引數值
file.managed:檔案管理模組,必須要有source指定檔案的**路徑
user、group、mode:分別指定檔案的所屬者,所屬組和許可權
以上的檔案還可以使用分id的寫法:
存在指定多個配置檔案,還可以使用一下寫法:(不適用name作為引數傳遞時,id就是name)
saltstack 模組學習之 state
入口檔案top.sls 三要素 環境 通過file roots指定 目標主機 可以使用萬用字元 配置檔案路徑 路徑分割符為.比如a.mysql 表示在環境指定的路徑下有個a目錄,a目錄下有個mysql.sls檔案 每個相同要素下的元素為並列關係,使用列表 source salt hello etc ...
saltstack之virt模組建立虛擬機器分析之二
那今天說下第2種,命令執行格式如下 salt kvm.tiancity.com virt.init web20 4 512 nic nics disk system 在這裡,我們需要注意下對與kvm qemu不允許使用profile,我們需要將virt.py改下 這樣,就允許我的試驗環境了。我的想法...
saltstack之virt模組建立虛擬機器分析之二
那今天說下第2種,命令執行格式如下 salt kvm.tiancity.com virt.init web20 4 512 nic nics disk system 在這裡,我們需要注意下對與kvm qemu不允許使用profile,我們需要將virt.py改下 這樣,就允許我的試驗環境了。我的想法...