ansible

自定義主機列表 創(chuàng)建一個文件寫入要執(zhí)行的配置語句ansible -i 文件名 dockers -m ping -o方法二:修改 /etc/ansible/ansible.cfg/ 配置文件里面的 inventory = /etc/ansible/hosts 換成自己的定義的文件路徑

ansible是新出現(xiàn)的自動化運維工具烟号,基于Python開發(fā)售睹,集合了眾多運維工具(puppet帕翻、cfengine、chef称勋、func、fabric)的優(yōu)點涯竟,實現(xiàn)了批量系統(tǒng)配置赡鲜、批量程序部署、批量運行命令等功能庐船。

無客戶端银酬。

安裝:

yum -y install rpel-release

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

yum -y install ansible

rpm -ql ansible? #列出所有文件

rpm-qc ansible? #查看配置文件

ansible-help? ? #查看ansible幫助

ansible-doc-l? #看所有模塊(A10,華為筐钟,docker揩瞪,EC2,aws等等廣大廠商設(shè)備)

ansible-doc-s yum #看yum模塊篓冲,了解其功能? exam

定義主機清單? ? vim /etc/ansible/hosts?

測試連通性? ansible localhost -m ping? ? #-m 指定模塊李破,-o 一行輸出

簡潔輸出? ansible host1 -m ping -o

ansible host2 -m ping -u root? -k 去掉(yes/no)的詢問

方法二:vim /etc/ansible/ansible.cfg

? ? ? ? ? ? ? ? host_key_checking = False? ? 去掉注釋

修改端口:vim /etc/ssh/sshd_config

Port 2222

ansible_ssh_user='root'

ansible_ssh_pass='chen'

ansible_ssh_prot='2222'

變量

[webserver]

host[

1:4]

[webserver:vars]

ansible_ssh_user='root'

ansible_ssh_pass='666666'

子分組

[webserver]

host[1:4]

[webserver:vars]

ansible_ssh_user='root'

ansible_ssh_pass='666666'

自定義主機列表? 創(chuàng)建一個文件寫入要執(zhí)行的配置語句

ansible -i 文件名 dockers -m ping -o

方法二:

修改 /etc/ansible/ansible.cfg/ 配置文件里面的 inventory = /etc/ansible/hosts?

換成自己的定義的文件路徑

點對點模式(模塊)

shell模塊(幫助:ansible-doc shell)

ansible webserver -m shell -a 'hostname' -o 獲取主機名

ansible wevserver -m shell -a 'hostname' -o -f 2

? -f FORKS, --forks=FORKS? Ansible一次命令執(zhí)行并發(fā)的線程數(shù)。NUM被指定為一個整數(shù),默認是5

? ? ? ? ? ? ? ? ? ? ? ? specify number of parallel processes to use

? ? ? ? ? ? ? ? ? ? ? ? (default=5)

復(fù)制模塊(幫助:ansible-doc copy)

ansible webserver -m copy -a 'src=/etc/hosts dest=/tmp2.txt owner=root group=bin mode=777 backup='yes'

用戶模塊(幫助:ansible-doc user)

創(chuàng)建用戶 ansible webserver -m user -a 'name=chen state=present'? 創(chuàng)建

刪除用戶 ansible webserver -m user -a 'name=chen state=absent'? 刪除

修改密碼 ansible webserver -m user -a 'name=chen password="123"'

加密密碼 echo "123" | openssl passwd -1 -stbin

修改shell? ansible webserver -m user -a 'name=chen shell=/sbin/nologin append=yes'

軟件包管理(幫助:ansible-doc yum)

升級所有的包 ansible host1 -m yum -a 'name="*" state=latest

例:

? ? 安裝Apache:

? ? ansible host2 -m yum -a 'name="apache" state=latest

服務(wù)模塊(幫助:ansible-doc service)

啟動httpd? ansible host2 -m service -a 'name=httpd state=started'

開機啟動? ? ansible host2 -m service -a 'name=httpd state=started enable=yes'

停止? ? ? ? ansible host2 -m service -a 'name=httpd state=stoped'

重啟? ? ? ? ansible host2 -m service -a 'name=httpd state=restarted'

開機機制啟動 ansible host2 -m service -a 'name=httpd state=start enable=no'

文件模塊(幫助:ansible-doc file)

創(chuàng)建文件 ansible host2 -m file -a 'path=/tmp/88.txt mode=777 state=touch'

創(chuàng)建目錄 ansible host2 -m file -a 'path=/tmp/88.txt mode=777 state='directory'

收集模塊(幫助:ansible-doc setup)

查詢(收集)所有的信息 ansible host3 -m setup

ansible host3 -m serup -a 'file=ansible_all_ipv4_addresses'

Role-角色扮演

roles簡介:roles則是在ansible中纹因,playbooks的目錄組織結(jié)構(gòu)喷屋。

而模塊化之后,成為roles的組織結(jié)構(gòu)瞭恰,易讀屯曹,代碼可重用,層次清晰。

準備目錄結(jié)構(gòu) :

touch roles/site.yaml roles/nginx/{handlers,tasks,vars}/main.yaml

echo 1234 > roles/nginx/files/index.html

yum install -y nginx && cp /etc/nginx/nginx.conf roles/nginx/templates/nginx.conf.j2

編寫任務(wù)

---

- name: install epel-release packge

? yum: name=epel-release state=latest

- name: install nginx packge

? yum: name=nginx state=latest


- name: copy index.html

? copy: src=index.html dest=/usr/share/nginx/html/index.html

- name: copy nginx.conf template

? template: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf

? notify: restart nginx

- name: make sure nginx service running

? service: name=nginx state=started enabled=yes

對迭代項的引用恶耽,固定變量名為"item”密任,使用with_item屬性給定要迭代的元素;

準備配置文件

vim roles/nginx/templates/nginx.conf.j2

修改配置文件中的:

? ? worker_processes? {{ ansible_processor_cores }};

調(diào)用內(nèi)部已知變量

? ? worker_connections {{ worker_connections }};

自定義變量

編寫變量

vim roles/nginx/vars/main.yaml

worker_connections: 10240

編寫處理程序

vim roles/nginx/handlers/main.yaml

? ? ---

? ? - name: restart nginx

? ? ? service: name=nginx state=restarted

編寫劇本

vim roles/site.yaml

? ? - hosts: host4 #這里需要安裝那臺機器就寫那臺

? ? - roles:

? ? - nginx? ?

實施

ansible-playbook site.yaml --syntax-check #在本地測試不真正曲線上環(huán)境安裝

ansible-playbook site.yaml --syntax-check #s實施腳本

然后去驗證機器

課堂隨記

ansble localhost -m (模塊)? ping

ping? ICMP:網(wǎng)際消息管理協(xié)議

saltack

主機清單

客戶機更改ssh的端口號以保護ansible

vm /etc/ansible/hosts? 加各種屬性

wars:vars 變量?

children 和組

-doc exam

192.168.113.129? ? 6

192.168.113.130? ? 7? ? 主機

192.168.113.133? ? ? 1

192.168.113.132? ? ? 2

packages

var

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末偷俭,一起剝皮案震驚了整個濱河市浪讳,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌涌萤,老刑警劉巖淹遵,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異负溪,居然都是意外死亡透揣,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門川抡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來辐真,“玉大人,你說我怎么就攤上這事崖堤∈淘郏” “怎么了?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵密幔,是天一觀的道長楔脯。 經(jīng)常有香客問我,道長老玛,這世上最難降的妖魔是什么淤年? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮蜡豹,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘溉苛。我一直安慰自己镜廉,他們只是感情好,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布愚战。 她就那樣靜靜地躺著娇唯,像睡著了一般。 火紅的嫁衣襯著肌膚如雪寂玲。 梳的紋絲不亂的頭發(fā)上塔插,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天,我揣著相機與錄音拓哟,去河邊找鬼想许。 笑死,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的流纹。 我是一名探鬼主播糜烹,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼漱凝!你這毒婦竟也來了疮蹦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤茸炒,失蹤者是張志新(化名)和其女友劉穎愕乎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體壁公,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡感论,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了贮尖。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片笛粘。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖湿硝,靈堂內(nèi)的尸體忽然破棺而出薪前,到底是詐尸還是另有隱情,我是刑警寧澤关斜,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布示括,位于F島的核電站,受9級特大地震影響痢畜,放射性物質(zhì)發(fā)生泄漏垛膝。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一丁稀、第九天 我趴在偏房一處隱蔽的房頂上張望吼拥。 院中可真熱鬧,春花似錦线衫、人聲如沸凿可。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至白热,卻和暖如春敛助,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背屋确。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工纳击, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留续扔,地道東北人。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓评疗,卻偏偏與公主長得像测砂,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子百匆,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容

  • ansible 學(xué)習(xí)命令詳解 一.什么是ansible砌些? ansible是新出現(xiàn)的自動化運維工具,基于Python...
    Bo蘿吹雪閱讀 1,679評論 0 19
  • 運維核心工作: 操作系統(tǒng)安裝(物理機加匈、虛擬機)--> 應(yīng)用程序包部署(安裝存璃、配置、服務(wù)啟動 )--> 批量操作 -...
    Net夜風閱讀 1,527評論 0 4
  • 目錄 十五雕拼、ansible介紹十六纵东、ansible安裝十七、ansible遠程執(zhí)行命令十八啥寇、ansible拷貝文件...
    XiaoMing丶閱讀 2,194評論 0 3
  • Ansible簡介 Ansible是2013年推出的一款I(lǐng)T自動化和DevOps軟件偎球,目前由Redhat已簽署An...
    魏鎮(zhèn)坪閱讀 2,369評論 1 6
  • 天氣漸漸暖和了 你拿著鐵楸走出家門 去挖掘解凍的土地 很久以來你一直在盤算著 要把那棵罌粟 從靈魂的 房間里移植到...
    詩人張毅偉閱讀 466評論 0 4