ansible 小試牛刀

ansible 小試牛刀

環境配置

主機兩臺
  • 192.168.1.141(centos7.6, 已經安裝了ansible)
  • 192.168.1.142 (centos7.6, 未安裝ansible)

注:兩臺主機網絡互通(網絡問題這裏不進行介紹,每個人的環境都不一樣)

小試牛刀第一步: ansible ping模塊

執行ping命令 :

ansible 192.168.1.142 -m ping

命令格式 :

ansible <ip,主機別名,或者組名,或者all> -m ping

這個時候會報錯,我們什麼都沒有做,肯定是要報錯的,ssh 是安全通信,ansible又是五客戶端的,因此需要一定的簡單配置,這裏先把錯誤截圖展示一下:

大概意思是說,我們沒有配置清單,ansible 未能找到相應的主機,所以接下里配置第一個主機清單

小試牛刀第二步:配置主機清單

ansible的配置文件在 /etc/ansible/ 目錄下

首先,進入到ansible配置文件目錄

cd /etc/ansible/

目錄下有三個文件,如下圖:
在這裏插入圖片描述
ansible.cfg 爲ansible的配置文件,hosts文件就是我們需要配置的清單,roles爲角色配置
注:這裏不做介紹,後面的文章會有詳解。

下面編輯hosts文件,命令如下:

 vim hosts 

在這裏插入圖片描述
在文件中添加

 [webservers]
192.168.1.142 ansible_port=22 ansible_host_user=root ansible_host_pass=dream

webservers 爲分組的名字

配置項 簡介
ansible_port ssh的端口
ansible_host_user 登陸遠程主機使用的用戶名
ansible_host_pass 登陸遠程主機使用的用戶密碼

注:還有其他配置項,以後的文章會做詳解

這裏雖然已經配置了遠程主機的用戶名,密碼,端口,ip,但是其實我們已經不能通過ansible遠程到目標主機,衆所周知ansible以ssh爲客戶端,ssh 連接需要配置密鑰的,此時我們訪問目標主機大概率會報出:
Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)
錯誤!(不一定就一定會報,如果兩臺主機已經建立了互信,就不會報了)

在這裏插入圖片描述

小試牛刀第三步:生成並分發ssh密鑰(在主控端生成,分發到被控端)

首先生成ssh密鑰:

 ssh-keygen -t rsa

運行結果如下:

在這裏插入圖片描述
畫線的地方需要輸入三次回車鍵
紅框爲生成的密鑰路徑

然後進入ssh密碼目錄

cd /root/.ssh/

最後,拷貝 公鑰到目標主機

 ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.142

在這裏插入圖片描述
id_rsa 爲私鑰,id_rsa.pub爲公鑰

天才第一步

再次執行ansible ping命令

ansible 192.168.1.142 -m ping

在這裏插入圖片描述
這裏已經通了,以上步驟也是ansible 服務器批量安裝部署的基礎。

ping 模塊擴展

 ansible all -m ping

all 的意思是hosts主機清單的所有主機情況,當前清單裏面只有一個分組,一臺主機
在這裏插入圖片描述


 ansible webservers -m ping

webservers就是上面我們配置的目錄主機分組
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章