sshpass做秘钥分发,ansible做自动化运维工具
生活随笔
收集整理的這篇文章主要介紹了
sshpass做秘钥分发,ansible做自动化运维工具
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近公司機器的增多,順便還要上報表系統,考慮到服務器越來越多,手工的管理顯得越來的越吃力,所以打算推進公司自動化運維工具的使用。
?
推進的過程中,一步一個坑踩過來的。由于公司之前未運用過自動化運維工具,所以經驗很少。
首先安裝ansible:
第一步:設置epel倉庫:
rpm -iUvh http://dl.Fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm第二步,使用yum安裝ansible,順便檢查下ansible版本:
yum -y install ansibleansible -- version
? 第三步,準備秘鑰的分發:
ssh-keygen #獲取所登錄用戶的秘鑰 ssh-copy-id -i .ssh/id_rsa.pub root@10.251.26.81 #分發哪個用戶的秘鑰就用哪個用戶?
?
但是由于我們主機數量的居多,一臺臺的去分發秘鑰太過繁瑣和勞累,所以在百度了一些東西之后我決定利用sshpass來做秘鑰分發:
sshpass做秘鑰分發:
1 #/bin/bash 2 password=1qaz@WSX 3 IP_ADDR='10.251.26.81' 4 5 6 #. /etc/init.d/functions 7 #if ! [ -f ~/.ssh/id_dsa.pub ];then 8 # ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa >/dev/null 2>&1 9 # echo -e "\033[32m======Local=========\033[0m" 10 # action "Generate the key!" /bin/true 11 #fi 12 13 for i in $IP_ADDR;do 14 # sshpass -p $passwd ssh-copy-id -i /home/shadm1/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no ${i}" >/dev/null 2>&1 15 sshpass -p "1qaz@WSX" ssh-copy-id -i .ssh/id_rsa.pub "-o StrictHostKeyChecking=no shadm1@${i}" >/dev/null @>&1 #版本不同的情況下,有時候這塊"-o StrictHostKeyChecking=no shadm1@${i}" ?不用加雙引號 16 if [ $? == 0 ];then 17 echo -e "\033[32m=========`ssh $i hostname`==========\033[0m" 18 action "send successful" /bin/true 19 else 20 echo -e "\033[31m======$i=======\033[0m" 21 action "send failed" /bin/false 22 fi 23 done 24?
利用一個簡單的腳本來做秘鑰分發
?
?
完成后,測試執行ansible:
ansible test -m command -a 'hostname' -u shadm1 -U useradmin --ask-sudo-pass
可以正常執行,成功!
?
QQ:531197592,有問題請指正
?
轉載于:https://www.cnblogs.com/sexiaoshuai/p/7366266.html
總結
以上是生活随笔為你收集整理的sshpass做秘钥分发,ansible做自动化运维工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux Shell 从入门到删除根目
- 下一篇: CentOS7下安装GUI图形界面