亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

四、ansible介紹、ansible安裝、ansible遠程執行命令、ansible拷貝文件和目錄

發布時間:2020-07-09 08:47:30 來源:網絡 閱讀:493 作者:seventeen_ 欄目:系統運維

一、ansible介紹

不需要安裝客戶端,通過sshd去通信

基于模塊工作,模塊可以由任何語言開發

不僅支持命令行使用模塊,也支持編寫yaml格式的playbook,易于編寫和閱讀。

安裝十分簡單,centos上可直接yum安裝

有提供UI(web界面)www.ansible.com/tower,收費的。

官方文檔 http://docs.ansible.com/ansible/latest/index.html

ansible已經被redhat公司收購,它在github上是一個非常受歡迎的開源軟件,github地址https://github.com/ansible/ansible

一本不錯的入門電子書 https://ansible-book.gitbooks.io/ansible-first-book/


二、ansible安裝

準備兩臺機器,前面我們做實驗的兩臺機器fuxi01,yw02

只需要在fuxi01上安裝ansible

#?yum?list?|grep?ansible?可以看到自帶源里就有2.8版本的ansible
#?yum?install?-y?ansible?ansible-doc

fuxi01上生成密鑰對 ssh-keygen -t rsa

[root@fuxi01?~]#?ls?/root/.ssh/?????看是否有id_rsa和id_rsa.pub,有就不用再生成,指定類型為rsa的類型。
authorized_keys??id_rsa??id_rsa.pub??known_hosts

把公鑰id_rsa.pub放到yw02和本機上,設置密鑰認證

[root@yw02?~]#?vi?.ssh/authorized_keys
[root@fuxi01?~]#?vi?.ssh/authorized_keys

回到第一臺機器試試看能不能連接了

[root@fuxi01?~]#?ssh?yw02
[root@fuxi01?~]#?ssh?127.0.0.1

配置/etc/ansible/hosts,目的是為了配置主機組的。

管理機器可以分成多個組,每一組里都有若干個機器,后續就可以針對主機組進行操作。

//增加,可以寫主機名,也可以寫IP地址。主機名要想被識別,需要先在/etc/hosts中配置。

#?vi?/etc/ansible/hosts
[testhost]
127.0.0.1
yw02

說明: testhost為主機組名字,自定義的。 下面兩個ip為組內的機器IP。


三、ansible遠程執行命令

#?ansible??testhost?-m?command?-a?'w'

這樣就可以批量執行命令了。這里的testhost 為主機組名,-m指定模塊(module),-a后面指定命令。也可以直接寫一個ip,針對某一臺機器來執行命令。

#?ansible?127.0.0.1?-m??command?-a?'hostname'
#?ansible?yw02?-m??command?-a?'hostname'

當出現此錯誤:?"msg": "Aborting, target uses selinux but python bindings (libselinux-python) aren't installed!"

解決方法:?yum install -y libselinux-python

還有一個模塊shell同樣也可以實現

#?ansible??testhost?-m?shell?-a?'w'

模塊:

command:執行命令

shell:執行腳本


四、ansible拷貝文件和目錄

#?ansible?yw02?-m?copy?-a?"src=/etc/ansible??dest=/tmp/ansible_test?owner=root?group=root?mode=0755"

copy:拷貝模塊,可以用來拷貝文件或目錄。

src:指定來源文件或目錄

dest:指定目標文件或目錄

owner:指定目標的屬主

group:指定目標的屬組

mode:指定權限

注意:源目錄會放到目標目錄下面去,如果目標指定的目錄不存在,它會自動創建。如果拷貝的是文件,dest指定的名字和源如果不同,并且它不是已經存在的目錄,相當于拷貝過去后又重命名。但相反,如果desc是目標機器上已經存在的目錄,則會直接把文件拷貝到該目錄下面。

#?ansible?testhost?-m?copy?-a?"src=/etc/passwd?dest=/tmp/123"

這里的/tmp/123和源機器上的/etc/passwd是一致的,但如果目標機器上已經有/tmp/123目錄,則會在/tmp/123目錄下面建立passwd文件。


五、ansible遠程執行腳本

首先創建一個shell腳本

#?vim??/tmp/1.sh??//加入內容
#!/bin/bash
echo?`date`?>?/tmp/ansible_test.txt

然后把該腳本分發到各個機器上

#?ansible?testhost?-m?copy?-a?"src=/tmp/1.sh?dest=/tmp/test.sh?mode=0755"

最后是批量執行該shell腳本

#?ansible?testhost?-m?shell?-a?"/tmp/test.sh"

shell模塊,還支持遠程執行命令并且帶管道。command模塊是不支持的。

#?ansible?testhost?-m?shell?-a?"cat?/etc/passwd|wc?-l?"
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

苍梧县| 五大连池市| 阜城县| 潼南县| 察哈| 澄江县| 兴文县| 卢氏县| 锡林郭勒盟| 郸城县| 滦平县| 江津市| 抚顺县| 安陆市| 天峻县| 阜新市| 长岛县| 田阳县| 普格县| 彩票| 临漳县| 金寨县| 定陶县| 靖西县| 大田县| 莲花县| 高邮市| 通州市| 富川| 白银市| 青海省| 会东县| 孝昌县| 阿克苏市| 洛隆县| 海口市| 龙胜| 万安县| 巴青县| 宜兴市| 修武县|