国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具)

這篇具有很好參考價(jià)值的文章主要介紹了Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

計(jì)算機(jī)系統(tǒng)

5G云計(jì)算

第一章 LINUX ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具)

一、概述

Ansible是一個(gè)基于Python開(kāi)發(fā)的配置管理和應(yīng)用部署工具,現(xiàn)在也在自動(dòng)化管理領(lǐng)域大放異彩。它融合了眾多老牌運(yùn)維工具的優(yōu)點(diǎn),Pubbet和Saltstack能實(shí)現(xiàn)的功能,Ansible基本上都可以實(shí)現(xiàn)

Ansible能批量配置、部署、管理上千臺(tái)主機(jī)。比如以前需要切換到每個(gè)主機(jī)上執(zhí)行的一或多個(gè)操作,使用Ansible只需在固定的一臺(tái)Ansible控制節(jié)點(diǎn)上去完成所有主機(jī)的操作

Ansible是基于模塊工作的,它只是提供了一種運(yùn)行框架,它本身沒(méi)有完成任務(wù)的能力,真正執(zhí)行操作的是Ansible的模塊, 比如copy模塊用于拷貝文件到遠(yuǎn)程主機(jī)上,service模塊用于管理服務(wù)的啟動(dòng)、停止、重啟等

Ansible其中一個(gè)比較鮮明的特性是Agentless,即無(wú)Agent的存在,它就像普通命令一樣,并非C/S軟件,也只需在某個(gè)作為控制節(jié)點(diǎn)的主機(jī)上安裝一次Ansible即可,通常它基于ssh連接來(lái)控制遠(yuǎn)程主機(jī),遠(yuǎn)程主機(jī)上不需要安裝Ansible或其它額外的服務(wù)

使用者在使用時(shí),在服務(wù)器終端輸入命令或者playbooks,會(huì)通過(guò)預(yù)定好的規(guī)則將playbook拆解為play,再組織成ansible可以識(shí)別的任務(wù),調(diào)用模塊和插件,根據(jù)主機(jī)清單通過(guò)SSH將臨時(shí)文件發(fā)給遠(yuǎn)程的客戶(hù)端執(zhí)行并返回結(jié)果,執(zhí)行結(jié)束后自動(dòng)刪除

Ansible的另一個(gè)比較鮮明的特性是它的絕大多數(shù)模塊都具備冪等性(idempotence)。所謂冪等性,指的是無(wú)論執(zhí)行多少次同樣的運(yùn)算,結(jié)果都是相同的,即一條命令,任意多次執(zhí)行所產(chǎn)生的影響均與一次執(zhí)行的影響相同。比如執(zhí)行 systemctl stop xxx 命令來(lái)停止服務(wù),當(dāng)發(fā)現(xiàn)要停止的目標(biāo)服務(wù)已經(jīng)處于停止?fàn)顟B(tài),它什么也不會(huì)做, 所以多次停止的結(jié)果仍然是停止,不會(huì)改變結(jié)果,它是冪等的,而 systemctl restart xxx 是非冪等的

Ansible的很多模塊在執(zhí)行時(shí)都會(huì)先判斷目標(biāo)節(jié)點(diǎn)是否要執(zhí)行任務(wù),所以,可以放心大膽地讓Ansible去執(zhí)行任務(wù),重復(fù)執(zhí)行某個(gè)任務(wù)絕大多數(shù)時(shí)候不會(huì)產(chǎn)生任何副作用。

二、ansible 環(huán)境安裝部署
管理端:192.168.58.60			ansible
被管理端:192.168.58.61
被管理端:192.168.58.62
被管理端:192.168.58.63

###管理端安裝 ansible
yum install -y epel-release			###先安裝 epel 源
yum install -y ansible

//ansible 目錄結(jié)構(gòu)
/etc/ansible/
├── ansible.cfg			#ansible的配置文件,一般無(wú)需修改
├── hosts				#ansible的主機(jī)清單,用于存儲(chǔ)需要管理的遠(yuǎn)程主機(jī)的相關(guān)信息
└── roles/				#公共角色目錄

###配置主機(jī)清單
cd /etc/ansible
vim hosts       
[webservers]			#配置組名
192.168.58.61			#組里包含的被管理的主機(jī)IP地址或主機(jī)名(主機(jī)名需要先修改/etc/hosts文件)
192.168.58.62

[dbservers]
192.168.58.63

###配置密鑰對(duì)驗(yàn)證
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

yum install -y sshpass
sshpass -p '123' ssh-copy-id -o StrictHostKeyChecking=no root@192.168.58.61
sshpass -p '123' ssh-copy-id -o StrictHostKeyChecking=no root@192.168.58.62 
sshpass -p '123' ssh-copy-id -o StrictHostKeyChecking=no root@192.168.58.63 

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

三、ansible 命令行模塊
命令格式:ansible <組名> -m <模塊> -a <參數(shù)列表>

ansible-doc -l				#列出所有已安裝的模塊,按q退出

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

1.command 模塊
###在遠(yuǎn)程主機(jī)執(zhí)行命令,不支持管道,重定向等shell的特性。
ansible-doc -s command		#-s 列出指定模塊的描述信息和操作動(dòng)作

ansible 192.168.58.61 -m command -a 'date'		#指定 ip 執(zhí)行 date
ansible webservers -m command -a 'date'			#指定組執(zhí)行 date
ansible dbservers -m command -a 'date'       
ansible all -m command -a 'date'				#all 代表所有 hosts 主機(jī)
ansible all -a 'ls /'							#如省略 -m 模塊,則默認(rèn)運(yùn)行 command 模塊

###常用的參數(shù):
chdir:在遠(yuǎn)程主機(jī)上運(yùn)行命令前提前進(jìn)入目錄
creates:判斷指定文件是否存在,如果存在,不執(zhí)行后面的操作
removes:判斷指定文件是否存在,如果存在,執(zhí)行后面的操作

ansible all -m command -a "chdir=/home  ls ./"

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

2.shell 模塊
###在遠(yuǎn)程主機(jī)執(zhí)行命令,相當(dāng)于調(diào)用遠(yuǎn)程主機(jī)的shell進(jìn)程,然后在該shell下打開(kāi)一個(gè)子shell運(yùn)行命令(支持管道符號(hào)等功能)
ansible-doc -s shell

ansible dbservers -m shell -a 'echo 123456 | passwd --stdin test"'
ansible dbservers -m shell -a 'echo $(ifconfig ens33 | awk "NR==2 {print $2}") | cut -d " " -f2'
ansible dbservers -m shell -a 'echo $(ifconfig ens33 | awk "NR==2 {print \$2}")'

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

3.cron 模塊
###在遠(yuǎn)程主機(jī)定義任務(wù)計(jì)劃。其中有兩種狀態(tài)(state):present表示添加(可以省略),absent表示移除。
ansible-doc -s cron				#按 q 退出

###常用的參數(shù):
minute/hour/day/month/weekday:分/時(shí)/日/月/周
job:任務(wù)計(jì)劃要執(zhí)行的命令
name:任務(wù)計(jì)劃的名稱(chēng)
user:指定計(jì)劃任務(wù)屬于哪個(gè)用戶(hù),默認(rèn)是root用戶(hù)

ansible webservers -m cron -a 'minute="*/1" job="/bin/echo helloworld" name="test crontab"'
ansible webservers -a 'crontab -l'
ansible webservers -m cron -a 'name="test crontab" state=absent'

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

4.user 模塊
###用戶(hù)管理的模塊
ansible-doc -s user

###常用的參數(shù):
name:用戶(hù)名,必選參數(shù)
state=present|absent:創(chuàng)建賬號(hào)或者刪除賬號(hào),present表示創(chuàng)建,absent表示刪除
system=yes|no:是否為系統(tǒng)賬號(hào)
uid:用戶(hù)uid
group:用戶(hù)基本組
groups: 用戶(hù)所屬附加組
shell:默認(rèn)使用的shell
create_home=yse|no: 是否創(chuàng)建家目錄
password:用戶(hù)的密碼,建議使用加密后的字符串
remove=yes|no:當(dāng)state=absent時(shí),是否刪除用戶(hù)的家目錄

ansible dbservers -m user -a 'name="test01"'				#創(chuàng)建用戶(hù)test01
ansible dbservers -m command -a 'tail /etc/passwd'
ansible dbservers -m user -a 'name="test01" state=absent'	#刪除用戶(hù)test01

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

5.group 模塊
###用戶(hù)組管理的模塊
ansible-doc -s group

ansible dbservers -m group -a 'name=mysql gid=306 system=yes'	#創(chuàng)建mysql組
ansible dbservers -a 'tail /etc/group'
ansible dbservers -m user -a 'name=test01 uid=306 system=yes group=mysql'	#將test01用戶(hù)添加到mysql組中
ansible dbservers -a 'tail /etc/passwd'
ansible dbservers -a 'id test01'    

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

6.copy 模塊
###用于復(fù)制指定主機(jī)文件到遠(yuǎn)程主機(jī)的
ansible-doc -s copy

###常用的參數(shù):
dest:指出復(fù)制文件的目標(biāo)及位置,使用絕對(duì)路徑,如果源是目錄,指目標(biāo)也要是目錄,如果目標(biāo)文件已經(jīng)存在會(huì)覆蓋原有的內(nèi)容
src:指出源文件的路徑,可以使用相對(duì)路徑或絕對(duì)路徑,支持直接指定目錄,如果源是目錄則目標(biāo)也要是目錄
mode:指出復(fù)制時(shí),目標(biāo)文件的權(quán)限 
owner:指出復(fù)制時(shí),目標(biāo)文件的屬主
group:指出復(fù)制時(shí),目標(biāo)文件的屬組
content:指出復(fù)制到目標(biāo)主機(jī)上的內(nèi)容,不能與src一起使用

ansible dbservers -m copy -a 'src=/etc/fstab dest=/opt/fstab.bak owner=root mode=640'
ansible dbservers -a 'ls -l /opt'
ansible dbservers -a 'cat /opt/fstab.bak'

ansible dbservers -m copy -a 'content="helloworld" dest=/opt/hello.txt'  #將helloworld寫(xiě)入/opt/hello.txt文件中
ansible dbservers -a 'cat /opt/hello.txt' 

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

7.file 模塊
###設(shè)置文件屬性
ansible-doc -s file

ansible dbservers -m file -a 'owner=test01 group=mysql mode=644 path=/opt/fstab.bak'	#修改文件的屬主屬組權(quán)限等
ansible dbservers -m file -a 'path=/opt/fstab.link src=/opt/fstab.bak state=link'    #設(shè)置/opt/fstab.link為/opt/fstab.bak的鏈接文件
ansible dbservers -m file -a "path=/opt/abc.txt state=touch"			#創(chuàng)建一個(gè)文件
ansible dbservers -m file -a "path=/opt/abc.txt state=absent"			#刪除一個(gè)文件

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

8.hostname 模塊
###用于管理遠(yuǎn)程主機(jī)上的主機(jī)名
ansible dbservers -m hostname -a "name=mysql01"

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

9.ping 模塊
###檢測(cè)遠(yuǎn)程主機(jī)的連通性
ansible all -m ping

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

10.yum 模塊
###在遠(yuǎn)程主機(jī)上安裝與卸載軟件包
ansible-doc -s yum

ansible webservers -m yum -a 'name=httpd'					#安裝服務(wù)
ansible webservers -m yum -a 'name=httpd state=absent'		#卸載服務(wù)

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

11.service/systemd 模塊
###用于管理遠(yuǎn)程主機(jī)上的管理服務(wù)的運(yùn)行狀態(tài)
ansible-doc -s service

###常用的參數(shù):
name:被管理的服務(wù)名稱(chēng)
state=started|stopped|restarted:動(dòng)作包含啟動(dòng)關(guān)閉或者重啟
enabled=yes|no:表示是否設(shè)置該服務(wù)開(kāi)機(jī)自啟
runlevel:如果設(shè)定了enabled開(kāi)機(jī)自啟去,則要定義在哪些運(yùn)行目標(biāo)下自啟動(dòng)

ansible webservers -a 'systemctl status httpd'			#查看web服務(wù)器httpd運(yùn)行狀態(tài)
ansible webservers -m service -a 'enabled=true name=httpd state=started'			#啟動(dòng)httpd服務(wù)

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

12.script 模塊
###實(shí)現(xiàn)遠(yuǎn)程批量運(yùn)行本地的 shell 腳本
ansible-doc -s script

vim test.sh
#!/bin/bash
echo "hello ansible from script" > /opt/script.txt

chmod +x test.sh
ansible webservers -m script -a 'test.sh'
ansible webservers -a 'cat /opt/script.txt'

vim test.sh
#!/bin/bash
echo $1 > /opt/test.txt
echo s2 >> /opt/test .txt

ansible dbservers -m script -a 'test.sh abc 123!'

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

13.mount 模塊
###掛載文件系統(tǒng)
ansible-doc -s mount

###常用的參數(shù):
src:定義掛載設(shè)備的路徑
path:定義掛載到哪個(gè)目錄,必須指定
fstype:指定掛載文件的系統(tǒng)類(lèi)型,必須指定,xfs、iso9660、nfs...
opts:定義掛載的參數(shù),defaults、rw、ro...
state:定義掛載的狀態(tài),mounted(進(jìn)行掛載,修改/etc/fstab信息)、absent(永久性卸載,并修改 /etc/fstab信息)、unmounted(臨時(shí)卸載,不修改/etc/fstab信息)

ansible dbservers -m mount -a 'src=/dev/sr0 path=/mnt state=mounted fstype=iso9660'

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

14.archive 模塊
###打包壓縮
ansible-doc -s archive

###常用的參數(shù):
path: 必須參數(shù),遠(yuǎn)程主機(jī)上需要被打包壓縮的源文件/目錄
dest: 打包壓縮后的包文件路徑(包文件的父目錄必須存在);如果包文件已存在,則會(huì)被覆蓋
format: 指定壓縮類(lèi)型,包括: bz2、gz(默認(rèn))、tar、xz、zip
remove=yes|no: 是否刪除源文件

ansible dbservers -m archive -a "path=/etc/yum.repos.d/ dest=/opt/repo.zip format=zip"
ansible dbservers -m archive -a "path=/opt/abc.txt,/opt/123.txt dest=/opt/abc123.tar.gz format=gz remove=yes"

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

15.unarchive 模塊
###解包解壓縮
ansible-doc -s unarchive

###常用的參數(shù):
copy:默認(rèn)為 copy=yes ,拷貝的文件從 ansible 主機(jī)復(fù)制到遠(yuǎn)程主機(jī),copy=no 表示在遠(yuǎn)程主機(jī)上尋找源文件解壓
src:tar包源路徑,可以是 ansible 主機(jī)上的路徑,也可以是遠(yuǎn)程主機(jī)上的路徑,如果是遠(yuǎn)程主機(jī)上的路徑,則需設(shè)置 copy=no
dest:解壓后文件的目標(biāo)絕對(duì)路徑
remote_src: 和 copy 功能一樣且互斥,設(shè)置 remote_src=yes 表示文件在遠(yuǎn)程主機(jī)上,設(shè)置為 remote_src=no 表示文件在 ansible 主機(jī)上

#將 ansible 主機(jī)的壓縮文件拷貝到到遠(yuǎn)程主機(jī)并解壓,修改文件所屬組和用戶(hù)
ansible dbservers -m unarchive -a "src=/opt/abc.tar.gz dest=/root copy=yes"
或者
ansible dbservers -m unarchive -a "src=/opt/abc.tar.gz dest=/root remote_src=no"

#在遠(yuǎn)程主機(jī)解包
ansible dbservers -m unarchive -a "src=/opt/123.tar.gz dest=/root copy=no"
或者
ansible dbservers -m unarchive -a "src=/opt/123.tar.gz dest=/root remote_src=yes"

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

16.replace 模塊
###類(lèi)似于sed命令,主要也是基于正則進(jìn)行匹配和替換
ansible-doc -s replace

###常用的參數(shù):
path:必須參數(shù),指定要修改的文件
regexp:必須參數(shù),指定一個(gè)正則表達(dá)式
replace:替換regexp參數(shù)匹配到的字符串
backup=yes|no: 修改源文件前創(chuàng)建一個(gè)包含時(shí)間戳信息的備份文件
before:如果指定,則僅替換/刪除此匹配之前的內(nèi)容,可以和after參數(shù)結(jié)合使用
after:如果指定,則僅替換/刪除此匹配之后的內(nèi)容,可以和before參數(shù)結(jié)合使用
owner:修改文件用戶(hù)名
group:修改文件組名
mode:修改文件權(quán)限

vim /opt/test.txt
11 22 33 44 55 66
aa bb cc dd ee ff
1a 2b 3c 4d 5e 6f

#匹配 333 并修改為 ccc
ansible dbservers -m replace -a "path=/opt/test.txt regexp='33' replace='cc'"
#匹配到任意一個(gè)或多個(gè)開(kāi)頭的行增加注釋
ansible dbservers -m replace -a "path=/opt/test.txt regexp='^(.*)' replace='#\1'"
#取消注釋
ansible dbservers -m replace -a "path=/opt/test.txt regexp='^#(.*)' replace='\1'"
#匹配以 a 開(kāi)頭的后面有一個(gè)或者多個(gè)字符的行,并在前面添加 # 注釋
ansible dbservers -m replace -a "path=/opt/test.txt regexp='^(a.*)' replace='#\1'"

ansible dbservers -m replace -a "path=/opt/test.txt regexp='3' replace='three' after=cc"

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化

17.setup 模塊
//facts 組件是用來(lái)收集被管理節(jié)點(diǎn)信息的,使用 setup 模塊可以獲取這些信息
ansible-doc -s setup

ansible webservers -m setup				#獲取mysql組主機(jī)的facts信息
ansible dbservers -m setup -a 'filter=*ipv4'    #使用filter可以篩選指定的facts信息


--------- inventory 主機(jī)清單 ---------
//Inventory支持對(duì)主機(jī)進(jìn)行分組,每個(gè)組內(nèi)可以定義多個(gè)主機(jī),每個(gè)主機(jī)都可以定義在任何一個(gè)或多個(gè)主機(jī)組內(nèi)。

###如果是名稱(chēng)類(lèi)似的主機(jī),可以使用列表的方式標(biāo)識(shí)各個(gè)主機(jī)。
vim /etc/ansible/hosts
[webservers]
192.168.58.61:2222		#冒號(hào)后定義遠(yuǎn)程連接端口,默認(rèn)是 ssh 的 22 端口
192.168.58.6[2:5]

[dbservers]
db-[a:f].example.org	#支持匹配 a~f


//inventory 中的變量
Inventory變量名	              含義
ansible_host                  ansible連接節(jié)點(diǎn)時(shí)的IP地址
ansible_port                  連接對(duì)方的端口號(hào),ssh連接時(shí)默認(rèn)為22
ansible_user                  連接對(duì)方主機(jī)時(shí)使用的用戶(hù)名。不指定時(shí),將使用執(zhí)行ansible或ansible-playbook命令的用戶(hù)
ansible_password              連接時(shí)的用戶(hù)的ssh密碼,僅在未使用密鑰對(duì)驗(yàn)證的情況下有效
ansible_ssh_private_key_file  指定密鑰認(rèn)證ssh連接時(shí)的私鑰文件
ansible_ssh_common_args       提供給ssh、sftp、scp命令的額外參數(shù)
ansible_become                允許進(jìn)行權(quán)限提升
ansible_become_method         指定提升權(quán)限的方式,例如可使用sudo/su/runas等方式
ansible_become_user           提升為哪個(gè)用戶(hù)的權(quán)限,默認(rèn)提升為root
ansible_become_password       提升為指定用戶(hù)權(quán)限時(shí)的密碼

(1)主機(jī)變量
[webservers]
192.168.58.61 ansible_port=22 ansible_user=root ansible_password=abc1234

(2)組變量
[webservers:vars]			#表示為 webservers 組內(nèi)所有主機(jī)定義變量
ansible_user=root
ansible_password=abc1234

[all:vars]					#表示為所有組內(nèi)的所有主機(jī)定義變量
ansible_port=22

(3)組嵌套
[nginx]
192.168.58.20
192.168.58.21
192.168.58.22

[apache]
192.168.58.3[0:3]

[webs:children]		#表示為 webs 主機(jī)組中包含了 nginx 組和 apache 組內(nèi)的所有主機(jī)
nginx
apache

Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化
Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具),運(yùn)維,ansible,自動(dòng)化文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-619782.html

到了這里,關(guān)于Linux6.2 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 自動(dòng)化運(yùn)維工具——Ansible

    自動(dòng)化運(yùn)維工具——Ansible

    Ansible是一個(gè)基于Python開(kāi)發(fā)的配置管理和應(yīng)用部署工具,現(xiàn)在也在自動(dòng)化管理領(lǐng)域大放異彩。它融合了眾多老牌運(yùn)維工具的優(yōu)點(diǎn),Pubbet和Saltstack能實(shí)現(xiàn)的功能,Ansible基本上都可以實(shí)現(xiàn)。 Ansible能批量配置、部署、管理上千臺(tái)主機(jī)。比如以前需要切換到每個(gè)主機(jī)上執(zhí)行的一或多個(gè)

    2024年02月14日
    瀏覽(32)
  • Ansible自動(dòng)化運(yùn)維工具

    Ansible自動(dòng)化運(yùn)維工具

    Ansible是一個(gè)基于Python開(kāi)發(fā)的配置管理和應(yīng)用部署工具,現(xiàn)在也在自動(dòng)化管理領(lǐng)域大放異彩。它融合了眾多老牌運(yùn)維工具的優(yōu)點(diǎn),Pubbet和Saltstack能實(shí)現(xiàn)的功能,Ansible基本上都可以實(shí)現(xiàn)。 ansible 自動(dòng)化運(yùn)維工具(機(jī)器管理工具) 可以實(shí)現(xiàn)批量管理多臺(tái)(成百上千)主機(jī),應(yīng)用級(jí)

    2024年02月14日
    瀏覽(26)
  • 自動(dòng)化運(yùn)維工具之Ansible

    自動(dòng)化運(yùn)維工具之Ansible

    Ansible是一個(gè)基于Python開(kāi)發(fā)的配置管理和應(yīng)用部署工具,現(xiàn)在也在自動(dòng)化管理領(lǐng)域大放異彩。它融合了眾多老牌運(yùn)維工具的優(yōu)點(diǎn),Pubbet和Saltstack能實(shí)現(xiàn)的功能,Ansible基本上都可以實(shí)現(xiàn)。 Ansible能批量配置、部署、管理上千臺(tái)主機(jī)。比如以前需要切換到每個(gè)主機(jī)上執(zhí)行的一或多個(gè)

    2024年02月08日
    瀏覽(28)
  • Ansible自動(dòng)化運(yùn)維工具---Playbook

    Ansible自動(dòng)化運(yùn)維工具---Playbook

    playbook是劇本的意思,通過(guò) task 調(diào)用 ansible 的模塊將多個(gè) play 組織在一 個(gè)playbook中運(yùn)行。 playbook各部分組成 : Tasks : 任務(wù),即調(diào)用模塊完成的某操作 Variables : 變量 emplates : 模板 Handlers : 處理器,當(dāng)某條件滿足時(shí),觸發(fā)執(zhí)行的操作 Roles : 角色 playbook yaml語(yǔ)法 是換行空兩格,-和

    2024年02月03日
    瀏覽(20)
  • 自動(dòng)化運(yùn)維工具-------Ansible(超詳細(xì))

    自動(dòng)化運(yùn)維工具-------Ansible(超詳細(xì))

    Ansible是自動(dòng)化運(yùn)維工具,基于Python開(kāi)發(fā),分布式,無(wú)需客戶(hù)端,輕量級(jí),實(shí)現(xiàn)了批量系統(tǒng)配置、批量程序部署、批量運(yùn)行命令等功能, ansible是基于模塊工作的,本身沒(méi)有批量部署的能力。真正具有批量部署的是ansible所運(yùn)行的模塊,ansible只是提供一種框架 。 1)、no agents:不需要在

    2024年02月10日
    瀏覽(18)
  • 自動(dòng)化運(yùn)維工具——Ansible學(xué)習(xí)(二)

    自動(dòng)化運(yùn)維工具——Ansible學(xué)習(xí)(二)

    目錄 一、handlers和notify結(jié)合使用觸發(fā)條件 1.新建httpd.yml文件 2.復(fù)制配置文件到ansible的files目錄中 3.卸載被控機(jī)已安裝的httpd 4.執(zhí)行httpd.yml腳本 5.更改httpd.conf配置文件 6.使用handlers 7.重新執(zhí)行httpd.yml腳本 8.檢查被控機(jī)的端口號(hào)是否改變 9.handlers也可以觸發(fā)多個(gè) 二、tags 1.通過(guò)指定

    2024年02月16日
    瀏覽(40)
  • Ansible 自動(dòng)化運(yùn)維工具的使用

    Ansible 自動(dòng)化運(yùn)維工具的使用

    目錄 ? 一、Ansible簡(jiǎn)介 二、Ansible 的安裝和使用 1.下載 2.使用 三、Ansible命令和模塊 1.命令格式 2.命令行模塊 (1)command 模塊 (2)shell 模塊 (3)cron 模塊 (4)user 模塊 (5)group 模塊 (6)copy 模塊 (7)file 模塊 (8)hostname 模塊 (9)ping 模塊? (10)yum 模塊 (11)service/

    2024年02月11日
    瀏覽(25)
  • Ansible 自動(dòng)化運(yùn)維工具(完善版)

    Ansible 自動(dòng)化運(yùn)維工具(完善版)

    目錄 ?Ansible概述 Ansible特點(diǎn) Ansible應(yīng)用 1、使用者 2、Ansible工具集合 3、作用對(duì)象 Ansible的搭建 環(huán)境 ansible主機(jī) 1、ansible 2、Ansible-doc Ansible模塊 1.command模塊 2.shell模塊 3.raw模塊 Ansible是最近非常火的一款開(kāi)源運(yùn)維自動(dòng)化工具,通過(guò)Ansible可以實(shí)現(xiàn)運(yùn)維自動(dòng)化,提高運(yùn)維工程師的工

    2024年02月16日
    瀏覽(22)
  • Ansible自動(dòng)化運(yùn)維工具的認(rèn)識(shí)

    Ansible自動(dòng)化運(yùn)維工具的認(rèn)識(shí)

    目錄 一、Ansible概述 二、Ansible特點(diǎn) 三、Ansible應(yīng)用 1、使用者 2、Ansible工具集合 3、作用對(duì)象 四、Ansible的搭建 1、實(shí)驗(yàn)環(huán)境 2、環(huán)境準(zhǔn)備 Ansible: 3、創(chuàng)建ssh免密交互登錄 client端環(huán)境準(zhǔn)備 五、Ansible配置 六、Ansible命令 1、ansible 實(shí)驗(yàn)案例: 1.檢查所有主機(jī)是否存活 2.列出Rich組中

    2024年02月16日
    瀏覽(26)
  • 【Ansible】Ansible自動(dòng)化運(yùn)維工具之playbook劇本

    【Ansible】Ansible自動(dòng)化運(yùn)維工具之playbook劇本

    ??簡(jiǎn)單來(lái)說(shuō),playbooks是一種簡(jiǎn)單的配置管理系統(tǒng)與多機(jī)器部署系統(tǒng)的基礎(chǔ)。與現(xiàn)有的其他系統(tǒng)有不同之處,且非常適合復(fù)雜應(yīng)用的部署。 ??Playbooks 可用于聲明配置,更強(qiáng)大的地方在于,playbooks可以編排有序的去執(zhí)行過(guò)程,甚至做到多組機(jī)器間來(lái)回有序的執(zhí)行特別指定的

    2024年02月14日
    瀏覽(27)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包