自動化運維工具----ansiable安裝與配置
阿新 • • 發佈:2018-12-17
自動化運維工具----ansiable安裝與配置
一.配置環境
ansible是基於ssh通道傳輸資料的,因此叢集需要新增ssh互信。
ssh-keygen
cd ~/.ssh/
vim id_rsa.pub
將檔案裡面的公鑰複製下來。貼上到對端主機的 ~/.ssh/authorized_keys 檔案下。
二.安裝ansible
yum -y install ansible
三.ansible
命令格式
HOST-PATTERN #匹配主機模式,如all表示所有主機-m MOD_NAME #模組名 如:ping -a MOD_ARGS #模組執行的引數 -f FORKS #生成幾個子進行程執行 -C #(不執行,模擬跑) -u Username #某主機的使用者名稱 -c CONNection #連線方式(default smart) 完整示例: [[email protected] ~]# ansible all -m shell -a "ifconfig|grep enp0s3" 172.16.3.152 | SUCCESS | rc=0>> enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 172.16.3.216 | SUCCESS | rc=0 >> enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
四.ansible-playbook
- hosts: all remote_user: root tasks: #任務 - name: installvsftpd #任務名 yum: name=vsftpd state=latest #呼叫yum模組 - name: start redis #任務名 service: name=vsftpd state=started #呼叫service模組 - name: copy config file #任務名 copy: src=/etc/ansible/playbooks/files/vsftpd.conf dest=/etc/vsftpd/vsftpd.conf #呼叫copy模組 notify: a #觸發動作a tags: configfile #任務標籤為configfile handlers: #定義動作 - name: a #定義動作a service: name=vsftpd state=restarted #呼叫service模組