SaltSack入門(四)Salt常用模組使用

2021-09-05 08:23:40 字數 3736 閱讀 2835

以下用一些例項說明salt一些常用的模組,進一步熟悉salt使用。

pkg模組:

1、安裝乙個軟體

vim:

pkg.installed:

- name: vim-enhanced

2、安裝多個軟體

vim:

pkg.installed:

- names:            #多個值時,要修改為複數,names

- vim-enhanced

- lrzsz

service模組:

1、安裝apache,並啟動

#乙個宣告,用於定義狀態之間的依賴,說明httpd如果安裝了,才執行service.running模組

- pkg: httpd     # pkg代表用的什麼模組2、將配置檔案分發到apache伺服器

- pkg: httpdcmd模組:

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、檔案分發

- source: salt://test/httpd.conf2、目錄分發

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

group模組:

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:分

hour:時

daymonth:日

month:月

dayweek:周

SaltSack入門(一)安裝及簡單使用

為什麼要用自動化配置管理工具?由於企業不斷發展,傳統運維已經跟不上步伐,現在都在招運維開發工程師,薪資也高不少,像我們這傳統的運維顯然遇到了瓶頸,薪資也是提不上去,所以要面臨轉型。時不我待,轉起大腦,向devops邁進,首先熟練使用乙個自動化配置管理工具,憑自己的了解,這樣的工具有puppet sa...

指標入門(四)

指標與函式 函式用來運算元據,改變程式的執行狀態。指標用來根據位址訪問變數,函式名稱本身也是位址,因此你將函式和指標的結合,就能夠實現將複雜資料用指標傳遞和用指標返回,達到動態控制函式執行流的目標。函式和指標的結構,需要通過程式棧的作用。函式和指標的結構主要有兩種方式 1 將指標作為引數,傳遞給函式...

OpenGL入門學習(四)

opengl支援兩種顏色模式 一種是rgba,一種是顏色索引模式。無論哪種顏色模式,計算機都必須為每乙個畫素儲存一些資料。不同的是,rgba模式中,資料直接就代表了顏色 而顏色索引模式中,資料代表的是乙個索引,要得到真正的顏色,還必須去查索引表。1.rgba顏色 rgba模式中,每乙個畫素會儲存以下...