Ansible自动化入门
2021/4/9 18:57:57
本文主要是介绍Ansible自动化入门,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1、Ansible特点: (1)开箱即用,使用ssh协议 (2)ansible一句话说明:无主无从架构,开箱即用,用完即走 (3)实际是使用ansible的各个模块对主机进行操作 (4)总结: ansible的工作分成两大块 ① 主机 ② ansible本身的应用部分 Ⅰ 使用模块对主机进行操作(核心模块和自定义模块) Ⅱ 主机清单,只有读取到主机清单才可以操作 Ⅲ SSH连接 Ⅳ 应用playbook完成复杂的应用部署工作 2、Ansible安装ansible只需要在ansible controller节点(操作机)即可,其他节点可以通过SSH协议进行连接操作 安装步骤: (1)安装epel-release YUM源,获取最新的ansible yum install epel-release -y (2)安装ansible yum install ansible -y (3)验证是否安装成功,使用root用户 rpm -qa | grep ansible3、主机清单 ansible controller 在对主机进行操作时,仅认主机清单中定义的主机列表,即从主机清单中读取到主机列表时,才可进行配置 (1)主机清单作用 Ⅰ 用于ansible controller配置主机时读取主机列表 Ⅱ 实现主机分组 (2)主机清单定义方法 Ⅰ 主机清单默认存储位置: /etc/ansible/hosts Ⅱ 定义方法1:直接在主机清单文件中写入主机IP或主机名(需要能够解析) 192.168.10.100 或 web1 Ⅲ 定义方法2:在主机清单文件中添加主机分组,然后把主机IP或主机名写入到分组内即可 [webgroup] 192.168.10.100 或 [webgroup] web1 (3)总结: Ⅰ 用于读取主机IP或主机名称 Ⅱ 实现主机分组 Ⅲ 直接在主机清单文件中添加IP或主机名 Ⅳ 在主机清单文件中添加一个分组,然后再添加IP或主机名到分组中 4、ansible应用案例 (1)使用ansible ping模块实现测试主机互通性 注意:ansible是通过ssh协议与其他主机通信的,如果ssh协议可以连接到其他主机就是通的,此时的ping其实是一个假象ping Ⅰ ansible controller是通过ssh协议与其他主机进行通信的,如果主机量较多,不适合使用用户名和密码的方式,需要使用免密登录
#多主机之间实现免密登录 ①在ansible controller主机生成密钥 非交互式生成免密钥 ssh-keygen -t rsa -f /root/.ssh/id_rsa -N '' 交互式 ssh-keygen -t rsa ②实现密钥同步 ssh-copy-id 远程主机名称Ⅱ ansible中模块使用是怎样的? 在ansible controller主机清单中添加主机,在/etc/ansible/hosts文件中将其他主机的IP或主机名添加到清单中
ansible命令格式 命令格式: ansible 主机清单中IP或分组名称 -m 模块名 -m model
ping模块的使用
ansible IP或远程主机名或分组名 -m ping
ansible 主机清单中的IP或分组名称 -m 模块 -a "参数"Ⅲ 每小时与时钟源同步一次
ansible 主机清单中的IP或分组名称 -m cron -a 'name="test cron1" job="ntpdate time1.aliyun.com" minute=0 hour=*/1' name 给定时起个名字 job 需要执行的命令 minute=0 hour=*/1 每小时执行一次job对应的命令 注意:ntpdate是用来同步时钟的命令,在命令行直接输入 ntpdate time1.aliyun.com 会同步到阿里云服务器的时间Ⅳ 在已经操作的主机清单的IP中输入 crontab -l,会发现增加了一个定时任务,格式为
#Ansible: test cron1 0 */1 * * * ntpdate time1.aliyun.com 定时任务来自Ansible,每小时都会同步,只是进行了定时任务的操作Ⅴ 总结 ① 选择时钟源服务器 ② ansible cron 批量服务器周期性计划任务定义
这篇关于Ansible自动化入门的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)