配置ansible自动化工具

自动化运维工具

Puppet : 用ruby语言写的

Saltstack : 用python写的,是一个模块化shell(就是命令),用的agent服务连接的被控端,用于大集群,高并发

ansible : 用python写的,也是模块化shell(就是命令),部署简单,不需要启动和安装agent等服务,用的ssh连接被控端,用于小集群,低并发

ansible的安装和部署 :

1、配置网络,设置主机名

192.168.100.10 ansible

192.168.100.11 node1

192.168.100.12 node2

2、配置hosts解析

192.168.100.10 ansible

192.168.100.11 node1

192.168.100.12 node2

3、配置epel源

yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm

sed -i 's|^#baseurl=https://download.example/pub\|baseurl=https://mirrors.aliyun.com\|' /etc/yum.repos.d/epel*

sed -i 's|^metalink|#metalink|' /etc/yum.repos.d/epel*

4、安装ansible

yum -y install ansible

5、测试

ansible --version

6、在被控端创建用户

ansible all -m shell -a 'useradd devops' -u root -k

ansible all -m shell -a 'echo redhat | passwd --stdin root' -u root -k

7、在被控端做提权

ansible all -m shell -a 'echo "devops ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/devops' -u root -k

8、做ssh免密:注意被控端devops用户密码必须正确

ssh-keygen

ssh-copy-id devops@node1

ssh-copy-id devops@node2

9、修改ansible配置文件

vim /etc/ansible/ansible.cfg

inventory = /etc/ansible/inventory ansible的主机清单文件

remote_user = devops 被控端的用户

privilege_escalation

become=True #是否要提权

become_method=sudo #用sudo提权

become_user=root #提权到root用户

become_ask_pass=False #提权时不需要输入密码

10.测试

ansible all -m ping #测试连通性

ansbile all -m shell -a 'pwd'

ansbile all -m shell -a 'ls /root'

相关推荐
goehou1 天前
让 AI 替我操作这台电脑,先把手能伸多远定下来
windows·自动化·权限管理·ai agent
Frankie_stand1 天前
测试自动化实战指南:从脚本化、自动判据到 CI 集成的完整落地路径
android·ci/cd·自动化
总裁余(余登武)2 天前
【python项目】:1操作EXCEl自动化开发
python·自动化·excel
海洋之恒3 天前
GitHub Actions 自动化:5 个真实运维提效案例
运维·自动化·github
lisw053 天前
用于医疗的磁驱动柔性微机器人研究进展!
机器人·自动化·硬件工程
Sakura_j_h_3 天前
从零写一个 MCP stdio Server:用 Python 校验博客文章格式
开发语言·python·自动化·ai工具·mcp·json-rpc
lisw054 天前
基于神经网络的机器人导航系统的设计与执行!
神经网络·机器人·自动化
严肃小白兔4 天前
Cloudflare 更新 API Token 管理:从最小权限到自动化凭据安全
网络·安全·自动化
2601_968793144 天前
Python Requests 轻量自动化:无需浏览器,实现真人级账号浏览模拟
开发语言·python·自动化
无忧_wy4 天前
MoneyPrinterTurbo 自动化视频生成实战指南
运维·人工智能·自动化·音视频