Ansibles使用

Ansibles使用

安裝(centos)

  • 使用 yum 安裝

需要先安裝一個epel-release包,然后再安裝ansible即可。

yum install epel-release -y
yum install ansible –y
  • ansible 程序結構

安裝目錄如下(yum安裝):

配置文件目錄:/etc/ansible/
執行文件目錄:/usr/bin/
Lib庫依賴目錄:/usr/lib/pythonX.X/site-packages/ansible/
Help文檔目錄:/usr/share/doc/ansible-X.X.X/
Man文檔目錄:/usr/share/man/man1/

  • ansible默認host文件

可以在執行ansible的時候指定host文件路徑(-i)

/etc/ansible/hosts
  • ansible配置文件查找順序

ansible與我們其他的服務在這一點上有很大不同,這里的配置文件查找是從多個地方找的,順序如下:

  1. 檢查環境變量ANSIBLE_CONFIG指向的路徑文件(export ANSIBLE_CONFIG=/etc/ansible.cfg);
  2. ~/.ansible.cfg,檢查當前目錄下的ansible.cfg配置文件;
  3. /etc/ansible.cfg檢查etc目錄的配置文件。

密鑰設置

在進行ansible的作業之前還需要對要遠程控制的機器做一個免密登錄,方便后續直接執行ansible腳本

  • 管理機生成密鑰對

-t 指定加密的方式,默認為rsa
-f filename指定密鑰文件名,不指定提示生成的密鑰放在/root/.ssh/id_dsa

ssh-keygen -t dsa -f /root/.ssh/id_dsa
  • 查看密鑰
# ll /root/.ssh/
總用量 12
-rw------- 1 root root 668 5月  14 2020 id_dsa       #生成后的私鑰文件
-rw-r--r-- 1 root root 610 5月  14 2020 id_dsa.pub   #公鑰文件   
-rw-r--r-- 1 root root 544 5月  14 2020 known_hosts
  • 分發密鑰
ssh-copy-id user@192.168.6.103 -p 22
# user 為用戶名
# -p 指定端口,有的默認22端口關閉了ssh

使用

  • 每次執行ansible的返回的信息,字體顏色解析

黃色:成功執行并伴隨著狀態的改變
綠色:成功執行并且沒有發生狀態的改變
紅色:執行失敗

  • ping 模塊使用

-i host : -i 指定hosts文件路徑,可以不使用/etc/ansible/hosts
-m ping : -m 指定使用ping模塊
slave :為自定義hosts文件中的主機分組名稱

ansible slave -i hosts -m ping
  • copy 模塊的使用

-m copy 指定模塊
-a "" 增加參數設置 owner=user 歸屬者 mode=0640 指定文件的權限

# ansible 主機 -m copy -a "src=源文件 dest=目標主機"
ansible slave -i hosts -m copy -a "src=/temp/ansible-test.txt dest=/home/user/"
  • shell 模塊使用

直接執行shell指令
-a " " : 為參數設置

ansible slave -i hosts -m shell -a "mv /home/user/cacert.cer /home/user/opt/"
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容