自動化運維工具----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模塊