3r2e3123 发表于 2015-1-21 09:18:06

ansible实战--普通账户来做批量部署

以前自己玩ansible的时候,都是用的root账户来管理。现在到了生产环境,可不能这么随便了,我相信很多其他公司也都是禁止root的ssh连接。
因此,我这次部署就遇到问题了,网上的很多文章,都没有细说这块。我也是摸索做出来的,通过这次实践,也进一步加深了对ansible的认识。希望可以帮到广大朋友。
部署步骤如下
1.1检查管理机上的ansible.cfg配置文件
# vi /etc/ansible/ansible.cfg
sudo_user      = root   /* 请确保配置是这样的 */
1.2默认ansible是使用key验证的如果使用密码登陆的服务器,使用ansible的话,要不修改ansible.cfg配置文件的ask_pass= True给取消注释,要不就在运行命令时候加上-k,这个意思是-k, --ask-pass ask for SSH password1.3如果客户端不在know_hosts里将会报错如果想解决此问题,需要修改ansible.cfg的#host_key_checking = False取消注释1.4管理机上创建普通账户并加入sudo# useradd cpis
# passwd cpis
# vi /etc/sudoers
cpis    ALL=(ALL)       NOPASSWD: ALL
1.5被管理机上创建普通账户并加入sudo
# useradd cpis# passwd cpis# vi /etc/sudoerscpis    ALL=(ALL)       NOPASSWD: ALL1.6管理机上生成密钥并拷贝到被管理机
# su - cpis
$ ssh-keygen -t rsa
$ ssh-copyid -i 172.31.28.61
1.7管理机上做测试
# ansible 172.31.28.61 -u cpis --sudo -a 'ls /root'

这样表示测试通过,也就达到我们最初的目的。

页: [1]
查看完整版本: ansible实战--普通账户来做批量部署