溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

centos7如何安裝與配置ansible

發(fā)布時(shí)間:2021-06-17 10:43:28 來源:億速云 閱讀:404 作者:小新 欄目:編程語言

這篇文章主要介紹了centos7如何安裝與配置ansible,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

ansible
環(huán)境
centos 7
server : 192.168.8.23
host1  : 192.168.8.24
host2  : 192.168.8.25
  • 安裝

# https://www.cnblogs.com/soymilk2019/p/11173203.html

# 每個(gè)節(jié)點(diǎn)安裝ansible
yum install epel-release -y
yum install ansible -y

# server 免密訪問各host
ssh-keygen
ssh-copy-id root@192.168.8.24
ssh-copy-id root@192.168.8.25

# 添加ansible客戶機(jī)組 /etc/ansible/hosts
 [group1]
 192.168.8.24
 192.168.8.25
  • 模塊

# https://www.cnblogs.com/keerya/p/7987886.html
# 主機(jī)連通性測試
ansible group1 -m ping

# command模塊(該模塊不支持| 管道命令)
ansible group1 -m command -a 'ss -ntl'

# shell模塊(在遠(yuǎn)程主機(jī)上調(diào)用shell解釋器運(yùn)行命令)
ansible group1 -m shell -a 'ss -ntl |grep LISTEN'

# file模塊
ansible group1 -m file -a "file=/root/c.sh state=touch mode=644"
ansible group1 -m file -a "path=/root/c state=directory mode=644"
ansible group1 -m file -a "path=/root/c/c.txt state=touch mode=644"
ansible group1 -m file -a "path=/root/c state=absent force=yes"

# copy模塊
# 修改文件內(nèi)容
ansible group1 -m copy -a 'content="ls /" dest=/root/c.sh mode=755'
# 拷貝文件到host
ansible group1 -m copy -a "src=/root/c.sh dest=/root"
# 拷貝目錄到host(覆蓋之前把源文件備份,備份文件包含時(shí)間信息)
ansible group1 -m copy -a "src=/root/d dest=/root backup=yes"

# fetch模塊(該模塊用于從遠(yuǎn)程某主機(jī)獲?。◤?fù)制)文件到本地)
ansible group1 -m fetch -a 'src=/root/a.txt dest=/root'

# script模塊(該模塊用于將本機(jī)的腳本在被管理端的機(jī)器上運(yùn)行)
# 在各host中執(zhí)行server端/root/c.sh腳本
ansible group1 -m script -a '/root/c.sh'

# setup模塊(該模塊主要用于收集信息,是通過調(diào)用facts組件來實(shí)現(xiàn)的)
ansible group1 -m setup -a 'filter="*mem*"'
# 保存到server的/tmp/facts中
ansible group1 -m setup -a 'filter="*mem*"' --tree /tmp/facts

# yum模塊
ansible group1 -m yum -a "name=htop state=present"

# cron 模塊(該模塊適用于管理cron計(jì)劃任務(wù)的)
# user模塊
# group模塊
# service模塊(該模塊用于服務(wù)程序的管理)
  • playbook

# https://blog.csdn.net/vanvan_/article/details/99354186

Hosts: 運(yùn)行指定任務(wù)的目標(biāo)主機(jī),也可以是主機(jī)組,支持正則表達(dá)式
Tasks: 任務(wù)列表,一個(gè)playbook配置文件只能有一個(gè)tasks,一個(gè)tasks下可以編排多個(gè)任務(wù)
Varniables: 變量
Templates: 模板,使用templates可以針對不同的主機(jī)定制不同參數(shù)
Handlers: 由特定條件觸發(fā)的任務(wù),監(jiān)控資源改變時(shí)才會觸發(fā),需要配合notify使用
Roles: Playbook的按固定目錄結(jié)構(gòu)組成

# index.html
<h>Hello world.</h>

# a.yml
---
-  hosts: group1
   remote_user: root
   tasks:
     - name: install httpd
       yum:
         name: httpd
         state: present

     - name: copy index.html
       copy:
         src: index.html
         dest: /var/www/html/index.html

     - name: start httpd
       service:
         name: "{{ item }}"
         state: started
       loop:
         - httpd

   handlers:
     - name: restart httpd
       service:
         name: httpd
         state: restarted

$ ansible-playbook a.yml

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“centos7如何安裝與配置ansible”這篇文章對大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI