最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python自動化運(yùn)維之Ansible定義主機(jī)與組規(guī)則操作詳解

 更新時(shí)間:2019年06月13日 11:02:32   作者:cakincqm  
這篇文章主要介紹了Python自動化運(yùn)維之Ansible定義主機(jī)與組規(guī)則操作,結(jié)合實(shí)例形式分析了自動化運(yùn)維工具Ansible定義主機(jī)與組規(guī)則相關(guān)配置操作與注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了Python自動化運(yùn)維之Ansible定義主機(jī)與組規(guī)則操作。分享給大家供大家參考,具體如下:

一 點(diǎn)睛

Ansible通過定義好的主機(jī)與組規(guī)則(Inventory)對匹配的目標(biāo)主機(jī)進(jìn)行遠(yuǎn)程操作,配置規(guī)則文件默認(rèn)是/etc/ansible/hosts。

二 定義主機(jī)與組

所有定義的主機(jī)與組規(guī)則都在/etc/Ansible/hosts文件中,為ini文件格式,主機(jī)可以用域名、IP、別名進(jìn)行標(biāo)識,其中webservers、dbservers 為組名,緊跟著的主機(jī)為其成員。格式如下:

mail.example.com
192.168.1.21:2135
[webservers]
foo.example.com
bar.example.com
192.168.1.22
[dbservers]
one.example.com
two.example.com
three.example.com
192.168.1.23

其中,192.168.1.21:2135的意思是定義一個(gè)SSH服務(wù)端口為2135的主機(jī)。

當(dāng)然我們也可以使用別名來描述一臺主機(jī)。

jumper ansible_ssh_port=22 ansible_ssh_host=192.168.1.50

jumper為定義的一個(gè)別名,ansible_ssh_port為主機(jī)SSH服務(wù)端口, ansible_ssh_host為目標(biāo)主機(jī)。

更多變量說明如下:

ansible_ssh_host:連接目標(biāo)主機(jī)的地址。

ansible_ssh_port:連接目標(biāo)主機(jī)SSH端口,端口22無需指定。

ansible_ssh_user:連接目標(biāo)主機(jī)默認(rèn)用戶。

ansible_ssh_pass:連接目標(biāo)主機(jī)默認(rèn)用戶密碼。

ansible_connection:目標(biāo)主機(jī)連接類型,可以是local、ssh或 paramiko。

ansible_ssh_private_key_file:連接目標(biāo)主機(jī)的ssh私鑰。

ansible_*_interpreter:指定采用非Python的其他腳本語言,如 Ruby、Perl或其他類似ansible_python_interpreter解釋器。

組成員主機(jī)名稱支持正則描述,例如:

[webservers]
www[01:50].example.com
[databases]
db-[a:f].example.com

三 定義主機(jī)變量

主機(jī)可以指定變量,以便后面供Playbooks配置使用,比如定義主機(jī)hosts1及hosts2上Apache參數(shù)http_port及maxRequestsPerChild,目的是讓兩臺主機(jī)產(chǎn)生Apache配置文件httpd.conf差異化,定義格式如下:

[atlanta]
host1 http_port=80 maxRequestsPerChild=808
host2 http_port=303 maxRequestsPerChild=909

四 定義組變量

組變量的作用域是覆蓋組所有成員,通過定義一個(gè)新塊,塊名由 組名+“:vars”組成,定義格式如下:

[atlanta]
host1
host2
[atlanta:vars]
ntp_server=ntp.atlanta.example.com
proxy=proxy.atlanta.example.com

五 嵌套組

Ansible支持組嵌套組,通過定義一個(gè)新塊,塊名由組名+“: children”組成,舉例如下:

[atlanta]
host1
host2
[raleigh]
host2
host3
[southeast:children]
atlanta
raleigh
[southeast:vars]
some_server=foo.southeast.example.com
halon_system_timeout=30
self_destruct_countdown=60
escape_pods=2
[usa:children]
southeast
northeast
southwest
southeast

六 分離主機(jī)與組特定數(shù)據(jù)

為了更好規(guī)范定義的主機(jī)與組變量,Ansible支持 將/etc/ansible/hosts定義的主機(jī)名與組變量單獨(dú)剝離出來存放到指定的文件中,將采用YAML格式存放,存放位置規(guī)定:“/etc/ansible/group_vars/+組名”和“/etc/ansible/host_vars/+主機(jī)名”分別存放指定組名或主機(jī)名定義的變量。

七 匹配目標(biāo)

目標(biāo) (Patterns)匹配,格式為:ansible<pattern_goes_here>-m<module_name>-a<arguments>。

舉例說明:重啟webservers組的所有Apache服務(wù)。

ansible webservers -m service -a "name=httpd state=restarted"

<pattern_goes_here>參數(shù)的使用方法,詳細(xì)規(guī)則及含義見下表:

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評論

喜德县| 秦安县| 东方市| 盘山县| 周至县| 锦屏县| 永顺县| 无棣县| 韩城市| 蓝山县| 宁阳县| 龙岩市| 专栏| 酒泉市| 长泰县| 南宫市| 石景山区| 德令哈市| 宜川县| 界首市| 和静县| 肇东市| 常德市| 南开区| 太仓市| 湘阴县| 淮阳县| 保康县| 桐城市| 武邑县| 剑川县| 连州市| 偃师市| 定安县| 广水市| 射阳县| 靖远县| 潜山县| 英超| 阿坝县| 翁牛特旗|