配置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'

相关推荐
GAOJ_K2 小时前
丝杆模组精度下降的预警信号
人工智能·科技·机器人·自动化·制造
焦耳热科技前沿2 小时前
中科大EMA:3秒焦耳热一步合成双功能催化剂用于甲醇氧化协同高效制氢
大数据·人工智能·自动化·能源·材料工程
Shanxun Liao4 小时前
CentOS 7.9 根分区 / 已经 100% 用满隐藏占用解决办法
linux·运维·centos
乾元5 小时前
现场运维机器人的工程化落地——移动探针采集 + AI 诊断,在真实网络中的实现路径
运维·网络·人工智能·架构·机器人·自动化
Blossom.1187 小时前
大模型自动化压缩:基于权重共享的超网神经架构搜索实战
运维·人工智能·python·算法·chatgpt·架构·自动化
Pony_187 小时前
面试 - web ui 自动化
前端·ui·自动化
且去填词8 小时前
DeepSeek :基于 AST 与 AI 的遗留系统“手术刀”式治理方案
人工智能·自动化·llm·ast·agent·策略模式·deepseek
云动课堂8 小时前
【运维实战】企业级Samba文件共享服务 · 一键自动化部署方案 (适配银河麒麟 V10 /openEuler /CentOS)
运维·centos·自动化
cly18 小时前
SaltStack自动化(一): 原理与安装
运维·自动化·saltstack
f***24118 小时前
高效管理临时文件:自动化方案全解析
运维·自动化