日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
Ansible-配置文件與Inventory文件

在??Ansible入門(mén)??中介紹了Ansible的工作機(jī)制,這篇著重介紹Ansible的配置文件和Inventory文件。

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括平利網(wǎng)站建設(shè)、平利網(wǎng)站制作、平利網(wǎng)頁(yè)制作以及平利網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專(zhuān)注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,平利網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶(hù)以成都為中心已經(jīng)輻射到平利省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶(hù)的支持與信任!

使用Ansible一個(gè)好的習(xí)慣是將一個(gè)具體任務(wù)組織在單獨(dú)的目錄里,這樣不會(huì)和別的配置任務(wù)發(fā)生沖突,排查故障時(shí)也方便定位。比如安裝redis的任務(wù),建立一個(gè)新的目錄:/ansible/redis,并在目錄中創(chuàng)建文件ansible.cfg和hosts。

配置文件

ansible.cfg是Ansible的配置文件,用來(lái)控制ansible的行為。配置文件可以出現(xiàn)在很多地方,它的優(yōu)先級(jí)順序如下:

  • ANSIBLE_CONFIG (一個(gè)環(huán)境變量)。
  • ansible.cfg (位于當(dāng)前目錄中)。
  • .ansible.cfg (位于用戶(hù)的家目錄中)。
  • /etc/ansible/ansible.cfg。

推薦使用第二種方式,將配置文件存放在當(dāng)前路徑中,不同的配置任務(wù)使用不同的配置文件。一個(gè)最簡(jiǎn)的ansible.cfg文件:

[defaults]
host_key_checking = False # SSH連接時(shí)不校驗(yàn)?zāi)繕?biāo)主機(jī)的指紋
inventory = hosts # 指定inventory文件

第三行很關(guān)鍵,指定操作目標(biāo)主機(jī)的清單文件。ansible連接遠(yuǎn)程主機(jī)時(shí)默認(rèn)使用當(dāng)前登錄系統(tǒng)用戶(hù),如果你以用戶(hù)aneirin登錄安裝ansible命令的主機(jī),當(dāng)需要連接遠(yuǎn)端主機(jī)執(zhí)行任務(wù)時(shí),ansible也是以用戶(hù)aneirin登錄遠(yuǎn)端主機(jī)的。

實(shí)際工作中,配置一個(gè)專(zhuān)門(mén)的用戶(hù),這個(gè)用戶(hù)在所管理的服務(wù)器中都存在,配置使用公鑰登錄每臺(tái)服務(wù)器,免密執(zhí)行需root權(quán)限的命令,這樣可以省掉不少的麻煩。但前提是ansible主機(jī)需絕對(duì)安全,否則不要這樣做。

inventory文件

這個(gè)文件中定義Ansible要操作的目標(biāo)主機(jī),

[redis]
192.168.52.130
192.168.52.131:2222
[ntpd]
192.168.52.132
192.168.52.133
[linux:children]
redis
ntpd
[linux:vars]
ansible_ssh_user = aneirin

實(shí)際環(huán)境中,肯定有不止一臺(tái)服務(wù)器需要同時(shí)做配置,比如安裝Redis,這時(shí)可以定義一個(gè)Redis主機(jī)組,然后將目標(biāo)主機(jī)的IP地址填寫(xiě)上去,如果SSH連接配置了非22的端口,可以直接寫(xiě)到IP地址后面,用冒號(hào)隔開(kāi)。

將多個(gè)主機(jī)組放到一個(gè)更大的主機(jī)組,使用[大主機(jī)組:children]的寫(xiě)法,上面inventory文件將redis和ntpd主機(jī)組放到了linux主機(jī)組中,方便ansible執(zhí)行一些通用的配置。

最后兩行針對(duì)主機(jī)組定義的變量,這些變量有些是可以定義在ansible配置文件中的,有些是為了在Playbook中使用(關(guān)于Playbook放到后面的講解中)。

命令使用

/ansible/redis目錄包含了ansible.cfg和hosts文件,就可以執(zhí)行ansible的ad hoc命令了。

[aneirin@host redis]$ ansible linux -m shell -a 'uptime'
192.168.52.131 | CHANGED | rc=0 >>
18:23:48 up 4:48, 2 users, load average: 0.51, 0.40, 0.35
192.168.52.132 | CHANGED | rc=0 >>
18:23:48 up 4:48, 2 users, load average: 0.25, 0.22, 0.21
192.168.52.128 | CHANGED | rc=0 >>
18:23:51 up 1 day, 4:05, 2 users, load average: 0.38, 0.12, 0.08

ad hoc命令執(zhí)行起來(lái)比較直接了當(dāng),比如要給大量的主機(jī)安裝一個(gè)服務(wù)或者查詢(xún)服務(wù)器的主機(jī)名這類(lèi)工作使用ad hoc命令比較方便,ad hoc命令的缺點(diǎn)是不能重用,只能完成簡(jiǎn)單的工作。

安裝Redis:

[aneirin@host redis]$ ansible redis -m yum -a 'name=redis state=present'
192.168.52.131 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": true,
"changes": {
"installed": [
"redis"
]
},
"msg": "",
"rc": 0,
......
}

要得到上面的結(jié)果,上面的Ansible配置文件需要增加幾行。

[privilege_escalation]
become = True
become_method = sudo
become_ask_pass = False


本文標(biāo)題:Ansible-配置文件與Inventory文件
當(dāng)前鏈接:http://m.5511xx.com/article/cdhcips.html