1 service|systemd(centos7推薦用systemd模組)
name:name.service(類似mysqld,nginx等)
state:started|stoped|reloaded|restarted(動作+ed)
enabled: yes (代表加入開機啟動)
daemon_reload:systemd(systemd獨有)
示例- name: start nginx
service:
name: nginx
state: started
2 yum:(安裝軟體)
name: service_name|"}"(安裝的包名稱|多個包迴圈)
state: present(如果已存在,則不會更新)
loop: (這裡是迴圈才加)
- name1
- name2
示例- name: install | dependency package
yum:
name: "}"
state: present
loop:
- gcc
- make
- openssl
- zlib
3 wait_for:(檢測服務健康)
port:service_port(檢測的埠)
delay:time(在做下乙個動作之前的延時時間,直到埠存在則返回)
示例- name: check | check nginx status
wait_for:
port: 8080
delay: 3
4 selinux相關
state=disabled(關閉selinux)
示例-name: selinxu close
selinux:
state=disabled
5 replace(配置檔案進行替換調整-會全部進行替換)
path:資料檔案路徑
regexp:正規表示式匹配
replace:替換值
示例- name: configure | setup worker_connections 100
replace:
path: "/etc/nginx/nginx.conf"
regexp: '^(\s*worker_connections).+$'
replace: '\1 };
6 lineinfile:(和replace類似,但是不同點在於確保存在這個行2是只會更改匹配的最後一行)
示例- name: configure | setup worker_processes 4
lineinfile:
path: "/etc/nginx/nginx.conf"
regexp: '^\s*worker_processes\s'
line: "worker_processes };"
7 unarchive:(遠端推送並解壓)
remote_src: yes(遠端推送)
src: 要推送的軟體包
dest: 解壓到目標位置,需要是乙個目錄
creates:指定乙個檔名,當該檔案存在時,則解壓指令不執行,目的是防止覆蓋
owner: 預設陣列
group:
示例- name: unarchive python bin files.
unarchive:
remote_src: yes
src: "}"
dest: /usr/local
creates:}/bin/mysql
8 file:(檔案和資料夾模組)
path: file|dir
recurse: true(如果是目錄需要遞迴進行)
state: touch/directory/absent(刪除)
示例- name: "file模組在目標伺服器上建立檔案"
file:
path: /opt/filemodule/filemodulesetup.txt
state: touch
owner: root
group: root
mode: 755
- name: "file模組在目標伺服器上建立要刪除的檔案"
file:
path: /opt/filemodule/filemoduledelete.txt
state: touch
owner: root
group: root
mode: 755
- name: "file模組在目標伺服器上刪除檔案"
file:
path: "/opt/filemodule/filemoduledelete.txt"
state: absent
11 shell:(執行命令)
shell: 具體命令多個記得用;間隔開來
12 template模組-配置檔案模板推送
src:template_file_name
dest:目錄檔案(絕對路徑)
- name: copy configfile to nodes
template:
src: test.j2
dest: /tmp/test.conf
13 debug模組-列印輸出
var 將某個任務執行的輸出作為變數傳遞給debug模組,debug會直接將其列印輸出
msg 除錯輸出的訊息
- name: display all variables/facts known for a host
debug:
var: hostvars[inventory_hostname]
verbosity: 4
- debug:
msg: "system } has gateway }"
when: ansible_default_ipv4.gateway is defined
ansible 基礎常用模組
修改 etc ansible hosts中新增組 a 192.168.122.60 192.168.122.68檢視模組用法 ansible doc s 模組名 ansible doc s copy ansible doc s fetchshell模組 file模組 在file模組中,path na...
Ansible常用基礎模組
command模組 shell模組 script模組 copy模組 lineinfile replace模組 yum模組 service模組 setup模組 ping模組 ansible all m ping ping測試連通性ansible all m command a uptime 檢視所有機...
Ansible常用模組
1.ping模組2.ansible command模組是ansible預設模組,主要用於執行linux基礎命令,可以執行遠端伺服器命令執行 任務執行等操作。但command模組不支援變數 重定向 管道符等,這些操作需要用shell模組執行 command模組使用詳解 chdir 執行命令前,切換到目...