Linux系統運維之ansible遠端批量管理控制

2021-10-24 05:35:16 字數 2768 閱讀 3483

ansible是乙個用來遠端管理伺服器的工具軟體,遠端批量部署主機上的服務,這裡遠端主機指的是任何可以通過ssh登入的主機(複製檔案,安裝服務,服務啟動停止管理,配置管理等)。

注意:使用ansible的前提是配置好了ssh服務,而且也給遠端節點的主機發了金鑰,能夠連線,或者在配置檔案中說明使用者和密碼。

ssh金鑰認證:

安裝:yum install sshpass -y

生成金鑰:ssh-keygen -f ~/.ssh/id_rsa -p 『』 -q

將金鑰分發給將要連線到的主機:

sshpass-copy-id -i ~/.ssh/id_rsa.pub 172.16.1.*(將要分發的主機位址)

安裝ansible:

yum install epel-release -y

yum install ansible -y

模組查詢命令:

ansible-doc-l

檢視某個模組的引數幫助:

ansible-doc -s command

ansible的配置檔案

功能說明:執行乙個命令在遠端節點上(在遠端主機上執行命令)

範例:ansible oldboy -m comand -a 「free -m」 (oldboy是主機的總模組名稱,command)

ansible oldboy -m comand -a 「df -h」

ansible oldboy -m comand -a 「ls /root」

ansible oldboy -m comand -a 「ifconfig」

功能說明:把本地檔案或者目錄複製到遠端節點上

引數選項說明

src本地檔案複製到遠端伺服器,可以是絕對路徑也可以是相對路徑,如果路徑是乙個目錄將會遞迴複製

dest

檔案應該被拷貝到的遠端節點的絕對路徑資訊

owner

定義所有擁有檔案或目錄的所屬使用者名稱,類似於chown命令

group

定義所擁有檔案或目錄的所屬組的名稱,也類似於chown命令

mode

定義檔案或目錄的許可權資訊,類似於chmod命令

backup

建立備份檔案幷包含時間戳資訊,以便能夠還原回原檔案(預設配置為no,指定的配置資訊為yes或者no)

範例:ansible oldboy -m copy -a 「src=/date dest=/home/date owner=root group=root backup=yes」

把date目錄下的東西拷貝到遠端主機oldboy模組下的/home/date目錄下,檔案的屬主和屬組都是root,並且備份

功能說明:在遠端節點上執行本地指令碼模組

引數說明

creates

定義乙個檔案是否存在,如果不存在,則執行相應的命令,如果存在跳過此驟

free_form(必有引數)

引數資訊中可以輸入任何系統命令資訊,實現遠端管理

removes

定義乙個檔案是否存在,如果存在則執行相應的命令,如果不存在跳過測步驟

範例:ansible oldboy -m script -a 「/server/scripts/bak.sh」

oldboy模組下的主機都執行這個指令碼

功能說明:執行乙個命令在遠端節點

引數說明:

引數說明

chdir

在執行命令之前cd到指定的目錄中

creates

定義乙個檔案是否存在,如果不存在,則執行相應的命令,如果存在跳過此驟

free_form(必有引數)

引數資訊中可以輸入任何系統命令資訊,實現遠端管理

removes

定義乙個檔案是否存在,如果存在則執行相應的命令,如果不存在跳過測步驟

注意:shell為基本命令模組,可以執行指令碼檔案,當相應指令碼檔案需要存在與遠端主機節點上,並且shell模組不受類似變數$home和引數"","

「,」;","&"的影響,都可以進行識別

範例:ansible oldboy -m shell -a 「sh /server/scripts/bak.sh」

oldboy模組下的主機執行bak.sh指令碼

功能說明:設定檔案屬性

引數說明:

引數說明

src要鏈結的檔案路徑(只能應用state=link),建立鏈結檔案時使用

path

檔案路徑管理:別名方式:dest,name

owner

定義所有擁有檔案或目錄的所屬使用者名稱,類似於chown命令

group

定義所擁有檔案或目錄的所屬組的名稱,也類似於chown命令

mode

定義檔案或目錄的許可權資訊,類似於chmod命令

state

如果指定引數directory,所有不存在的子目錄都會被建立;如果指定引數為file,如果檔案不存在將不能被建立;如果指定引數為link,符號鏈結將被建立或者更改;如果指定引數為hard,便會建立出硬鏈結;如果指定引數為absent,目錄將會被遞迴刪除以及檔案,而且將會被取消鏈結;如果指定引數為touch,路徑不存在的話將建立乙個空檔案,路徑或者檔案存在的話將會更新檔案訪問和修改時間

Linux系統運維之運維監控 pdf格式

linux系統運維之運維監控 本文是系統運維工程師的實用手冊 主要講解基於 linux 平台運維工作中需要掌握的監控知識 本文全部基於實際應用 部署步驟詳細 可以直接複製用於生產環境的安裝配置 幫助剛剛接觸 linux運維的朋友們,迅速搭建企業級的監控平台。本文共分為五個部分 第一部分簡單的介紹了監...

Linux系統運維

linux系統運維 本書作者劉遄 liu chu n 從事於linux運維技術行業,高中時期便因興趣的驅使而較早地接觸到了linux系統並開始學習運維技術,並且在2012年獲得紅帽工程師rhce 6版本證書,在2015年初又分別獲得紅帽工程師rhce 7版本證書與紅帽架構師認證rhca頂級證書。儘管...

運維子系統之運維節點

運維子系統是通用平台重要的基礎構件,運維節點則是運維子系統最重要,最基礎的構成部分。運維節點被部署在每台伺服器上,維護該台伺服器上所有的運維任務。運維節點功能上篇已經描述,本篇簡介運維節點實現上相關要點。1.守護功能 守護功能作為乙個7x24小時執行系統而言是必不可少的,再穩定服務也有發生異常的時候...