自動化運維工具----ansiable安裝與配置

自動化運維工具----ansiable安裝與配置redis

 

一.配置環境shell

ansible是基於ssh通道傳輸數據的,所以集羣須要添加ssh互信。vim

ssh-keygen運維

cd  ~/.ssh/ssh

vim id_rsa.pub工具

將文件裏面的公鑰複製下來。粘貼到對端主機的 ~/.ssh/authorized_keys 文件下。spa

 

二.安裝ansiblerest

yum  -y  install  ansiblecode

 

三.ansibleblog

命令格式

HOST-PATTERN        #匹配主機模式,如all表示全部主機
-m MOD_NAME         #模塊名   如:ping
-a MOD_ARGS         #模塊執行的參數
-f FORKS            #生成幾個子進行程執行
-C                  #(不執行,模擬跑)
-u Username         #某主機的用戶名
-c  CONNection      #鏈接方式(default smart)    

完整示例:
[root@ansible ~]# 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: install vsftpd                    #任務名
    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模塊
相關文章
相關標籤/搜索