真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

運維工具SaltStack之二常見模塊及API-創(chuàng)新互聯(lián)

運維工具SaltStack之二常見模塊及API

成都創(chuàng)新互聯(lián)公司成立10多年來,這條路我們正越走越好,積累了技術(shù)與客戶資源,形成了良好的口碑。為客戶提供成都網(wǎng)站制作、成都做網(wǎng)站、網(wǎng)站策劃、網(wǎng)頁設(shè)計、國際域名空間、網(wǎng)絡(luò)營銷、VI設(shè)計、網(wǎng)站改版、漏洞修補等服務(wù)。網(wǎng)站是否美觀、功能強大、用戶體驗好、性價比高、打開快等等,這些對于網(wǎng)站建設(shè)都非常重要,成都創(chuàng)新互聯(lián)公司通過對建站技術(shù)性的掌握、對創(chuàng)意設(shè)計的研究為客戶提供一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進步。

1.Archive模塊:實現(xiàn)系統(tǒng)層面的壓縮包調(diào)用,支持gzip、gunzip、rar、tar、unrar、unzip等

例子:

#salt 'minion01' archive.g
zip test.txt   #采用gzip壓縮test.txt文件

2.cmd模塊:實現(xiàn)遠程的命令行調(diào)用執(zhí)行(默認具備root操作權(quán)限)

例子:

#salt 'minion01' cmd.run 'fdisk -l'  #獲取被控主機硬盤信息
#salt 'minion01' cmd.script salt://script/test.py   #該命令首先同步test.py到minion客戶端的cache目錄并運行該腳本。其中script/test.py存放在file_roots指定的目錄(默認在/srv/salt(需要新建),在/etc/salt/master文件中定義)

3.cp模塊:遠程文件、目錄的復(fù)制

例子:

#salt 'minion01' cp.get_dir salt://script/ /opt/minion/  #將Master端file_roots指定位置下(默認在/srv/salt)的目錄復(fù)制到minion01主機/opt/minion/目錄下

4.cron模塊:minion端主機的crontab操作

例子:

# salt 'minion01' cron.set_job root '*' '*' '*' '*' 1 /home/timesyc.sh  #minion01端主機root用戶添加任務(wù)作業(yè)

5.dnsutil模塊:Minion主機通用DNS操作

例子:

#salt 'minion01' dnsutil.hosts_append /etc/hosts 192.168.2.71 www.test.com  #添加192.168.2.71 www.test.com到minion01端/etc/hosts下

6.file模塊:常見的文件操作,包括文件讀寫、權(quán)限、查找等

例子:

#salt 'minion01' file.chown /mydata/data root root   #修改minion01主機/mydata/data文件的屬組、用戶權(quán)限,等價于chown root:root /mydata/data
#salt 'minion01' file.copy /mydata/data /home/data  #minion01主機復(fù)制/mydata/data文件到本地的/home/data目錄
#salt 'minion01' file.get_mode /mydata/data   #獲取minion01主機/mydata/data的權(quán)限mode,如:755,644
#salt '*' file.mkdir /home/test   #所有Minion端主機創(chuàng)建/home/test
#salt '*' file.set_mode /home/test 0755  #所有Minion端主機/home/test的權(quán)限mode為0755
#salt 'minion01' file.remove /home/test  #刪除minion01主機的/home/test文件

7.iptables模塊:主機的iptables支持

例子:

salt '*' iptables.append filter INPUT rule='-m state --state RELATED,ESTABLISHED -j ACCEPT'
salt '*' iptables.insert filter INPUT position=3 rule='-m state --state RELATED,ESTABLISHED -j ACCEPT'

說明:在所有Minion主機端追加(append)、插入(insert)iptables規(guī)則,其中INPUT為輸入鏈

salt '*' iptalbes.delete filter INPUT position=3
salt '*' iptables.delete filter INPUT rule='-m state --state RELATEC,ESTABLISHED -j ACCEPT'

說明:在所有Minion主機刪除指定鏈編號為3(position=3)或指定存在的規(guī)則

8.network模塊:返回Minion主機的網(wǎng)絡(luò)信息

例子:

#salt 'minion01' network.ping www.baidu.com   #minion01主機ping域名信息

9.pkg包管理模塊:程序包管理,如:yum安裝

例子:

#salt '*' pkg.install httpd  #所有Minion主機安裝等價于yum -y install httpd,pkg.remove為移除

10.service服務(wù)模塊:程序包服務(wù)管理(如:開機自動啟動,服務(wù)重啟等)

例子:

#salt '*' service.enable httpd    #所有Minion主機httpd服務(wù)開機自啟動腳本,service.disable為禁用
#salt '*' service.restart httpd   #所有Minion主機httpd服務(wù)重啟,service.reload(加載)、service.start(啟動)、service.stop(停止)、service.status(狀態(tài))

注:saltstack還提供了user(系統(tǒng)用戶模塊)、group(系統(tǒng)組模塊)、partition(系統(tǒng)分區(qū)模塊)、puppet(puppet管理模塊)、system(系統(tǒng)重啟、關(guān)機模塊)、timezone(時區(qū)管理模塊)、nginx(nginx管理模塊)、mount(文件系統(tǒng)掛載模塊)等等。

11.可以通過Python擴展模塊,使用API。通過調(diào)用master client模塊,實例化一個LocalClient對象,再調(diào)用cmd()方法來實現(xiàn)

如:API實現(xiàn)archive.gzip

#vim /root/archive_gzip.py
import salt.client
client = salt.client.LocalClient()
ret = client.cmd('*','archive.gzip','/root/test.txt')
print ret

執(zhí)行結(jié)果返回一個字典

{'minion01': '/root/test.txt.gz'}

12.遠程執(zhí)行目標(biāo)(target)

常見命令參數(shù):

globbing  #默認指定id進行匹配

L     #以主機ID列表形式匹配,不同主機id名稱使用逗號隔開

E     #基于id的正則表達式進行匹配

G     #基于grains信息進行匹配過濾

I     #基于master賦給minion的pillar信息進行匹配

N     #基于master配置文件中的分組名稱匹配

S     #基于minion的IP地址或者IP子網(wǎng)匹配

C     #復(fù)合匹配,以上參數(shù)可以組合使用

#salt 'minion01'  test.ping
#salt -L 'minion01,minion02'  test.ping
#salt -E '.*01' test.ping
#salt 'minion01'   grains.items
#salt 'minion01' grains.get os
#salt -S '192.168.2.71' test.ping
#salt -C 'E@m.*01 or G@id:minion02' test.ping
#salt '*'  pillar.get mysql

13.State內(nèi)置模塊

state是Saltstack最核心的功能。通過預(yù)先定制好的SLS描述了(支持YAML語法)系統(tǒng)的目標(biāo)狀態(tài)(程序包(pkg)、文件(file)、網(wǎng)絡(luò)配置(network)、系統(tǒng)服務(wù)(service)、系統(tǒng)用戶(user)等),由格式簡單的數(shù)據(jù)構(gòu)成。這經(jīng)常被稱作配置管理。

state的入口文件與pillar一樣,文件名都是top.sls,但state要求sls文件必須存放在Saltstack base定義的目錄下(默認為/srv/salt)。

state描述配置*.sls支持jinjia模板、grains及pillar引用等,在state的邏輯層次定義完成后,再通過salt '*' state.highstate執(zhí)行生效。

可用執(zhí)行命令

#salt '*' state.highstate    #所有Minion到Master上取SLS定義,然后在本地調(diào)用對應(yīng)的state module(user,pkg,service等)來達到SLS描述的狀態(tài)。
#salt-call state.highstate -l debug  #輸出debug信息,便于調(diào)試。

如:

apache: #ID聲明,state名稱:apache
  pkg: #管理對象類型states:pkg,進行軟件安裝(yum、apt)
    - installed #pkg要執(zhí)行的方法:install,如未安裝就進行安裝
  service: #管理對象類型states:service,管理系統(tǒng)守護進程
    - running #service要執(zhí)行的方法:running,如未運行就進行啟動
    - require: #關(guān)鍵字require,確保apache服務(wù)只有在成功安裝軟件包后才會啟動
      - pkg: apache

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


名稱欄目:運維工具SaltStack之二常見模塊及API-創(chuàng)新互聯(lián)
文章URL:http://weahome.cn/article/dpdhcd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部