ansible企业应用实战
ansible企业应用实战
一、为新系统添加安全认证SSHKey
一)ansible密码认证
1、配置inventory,默认配置/etc/ansible/hosts,添加配置如下
#定义k8s node主机组[ops-k8s]ops-k8s-node01ops-k8s-node02#冒号分隔,vars定义变量,改变k8s node主机组默认连接信息[ops-k8s:vars]#指定默认连接的用户和密码ansible_ssh_user = "root"ansible_ssh_pass = "admin@123"
2、测试默认变量是否生效
# ansible ops-k8s -m shell -a "whoami"ops-k8s-node02 | SUCCESS | rc=0 >>rootops-k8s-node01 | SUCCESS | rc=0 >>rootops-k8s-master02 | SUCCESS | rc=0 >>root
3、调用Ansible authorized_key模块,添加认证至远程主机
方式一:使用认证模块
ansible ops-k8s -m authorized_key -a "user=root key='{{ lookup('file', '/root/.ssh/id_rsa.pub') }}' path=/root/.ssh/authorized_keys manage_dir=no"
方式二:调用ansible的copy模块和shell模块
#copy公钥远程主机/tmp目录下ansible ops-k8s -m copy -a "src=/root/.ssh/id_rsa.pub dest=/tmp/id_rsa.pub"#添加公钥到指定目录下ansible ops-k8s -m shelll -a "cat /tmp/id_rsa.pub >>/root/.ssh/authorized_keys"
4、删除连接用户信息,使用ansible命令进行验收
#定义k8s node主机组[ops-k8s]ops-k8s-node01ops-k8s-node02##将下面的内容删除#冒号分隔,vars定义变量,改变k8s node主机组默认连接信息#[ops-k8s:vars]#指定默认连接的用户和密码#ansible_ssh_user = "root"#ansible_ssh_pass = "admin@123"
二)ssh-copy-id秘钥分发
使用ssh-copy-id用于复制指定用户的公钥至远程服务器,同时修改~/.ssh的目录权限。
1、向单台服务器秘钥分发
非交互性创建秘钥
ssh-keygen -t dsa -P ''
分发公钥
sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no -p52113 172.16.1.41"
2、基于sshpass批量秘钥分发
sshpass使用链接: #fenfa all pub key by wzs at 20161014ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa >/dev/null 2>&1for n in 31 61 41 7 8do sshpass -p 123456 ssh -o StrictHostKeyChecking=no 172.16.1.$n "mkdir -m 700 -p ~/.ssh/" sshpass -p 123456 scp -o StrictHostKeyChecking=no ~/.ssh/id_dsa.pub wzs@172.16.1.$n:~/.ssh/authorized_keys sshpass -p 123456 ssh -o StrictHostKeyChecking=no 172.16.1.$n "chmod 600 ~/.ssh/authorized_keys" /bin/ls -ld /home/wzs/.ssh /bin/ls -l /home/wzs/.sshdone
3、使用expect配置免密码登录
#!/bin/bashkeypath=/root/.ssh[ -d ${keypath} ] || mkdir -p ${keypath}rpm -q expect &> /dev/null || yum install expect -yssh-keygen -t rsa -f /root/.ssh/id_rsa -P ""password=centosfor host in `seq 10 14`;doexpect < 二、企业高可用架构的ansible应用 Ansible 使用高级进阶 《Ansible权威指南》第九章 9.2 企业高可用架构的Ansible应用 9.3 ELK日志系统基于Ansible的自动化实现 9.4 实时日志系统基于Ansible的自动化实现 9.5 Zabbix基于Ansible的自动化实现 9.6 Ansible+Git+GitLab实现自动化发布 9.7 Docker的Ansible自动化应用 三、ansible图形化界面 ansible tower 安装方法 四、ansible管理Windows服务器实践 ansible管理windows实践 powershell 扩展 (PSCX) 安装指南 五、部署分布式日志系统 部署分布式日志系统 六、ansible全面学习实战 ansible全面学习实战 Galaxy角色仓库 https://blog./u_10308545/2665192
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~