Ansible 简介与安装部署 谁践踏了优雅 2021-10-18 16:40 380阅读 0赞 互联网技术的发展,机房里面机器的数量随之增加,运维的难度和复杂度也在增加,需要投入的运维人员和成本也在增加,从而催生了一系列的自动化运维工具(Ansible、SaltStack、Puppet)的产生来减少运维的成本。 Ansible、SaltStack、Puppet都是目前比较受用户欢迎的自动化化运维工具,其中Ansible和SaltStack使用python编写,具有良好的可移植性。Puppet的使用脚本语法复杂,且可移植性比较差,目前的使用者慢慢变少。本博文介绍Ansible,下一系列博文将介绍Saltstack。 **什么是Ansible?** 当下有许多的运维自动化工具(配置管理 ),例如:Chef、Ansible、SaltStack、Puppet、Fabric 等。Ansible 一种集成 IT 系统的配置管理、应用部署、执行特定任务的开源平台,是 AnsibleWorks 公司名下的项目,该公司由 Cobbler 及 Func 的作者于 2012 年创建成立。Ansible 基于 Python 语言实现,由 Paramiko 和 PyYAML 两个关键模块构建。 **Ansible 特点:** 部署简单,只需在主控端部署 Ansible 环境,被控端无需做任何操作。 默认使用 SSH(Secure Shell)协议对设备进行管理。 主从集中化管理。 配置简单、功能强大、扩展性强。 支持 API 及自定义模块,可通过 Python 轻松扩展。 通过 Playbooks 来定制强大的配置、状态管理。 对云计算平台、大数据都有很好的支持。 提供一个功能强大、操作性强的 Web 管理界面和 REST API 接口 —- AWX 平台 **Ansible 与 SaltStack的区别:** 最大的区别是 Ansible 无需在被监控主机部署任何客户端代理,默认通过 SSH 通道进行远程命令执行或下发配置。 相同点是都具备功能强大、灵活的系统管理、状态配置,都使用 YAML 格式来描述配置,两者都提供丰富的模板及 API,对云计算平台、大数据都有很好的支持 **实验环境(rhel7.3版本)** 1、firewalld和selinux均为disabled 2、各主机信息: 主机 ip Ansible(服务端) 172.25.60.1 Ansible(客户端) 172.25.60.2 Ansible(客户端) 172.25.60.3 # **Ansible部署** # 1. **下载ansible的相关rpm包及其依赖包,并进行安装** ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70][] ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 1][] 查看版本 ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 2][] 2.**编辑/etc/hosts解析文件** ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 3][] 3.**添加普通用户使用ansible** **4.**编辑ansible.cfg文件 ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 4][] 5.设置ansible主机编写 inventory文件 创建一个inventory文件,用于定义将要管理的服务器。这个文件可以命名为任何名字可以定义一些要管理的服务器。Inventory是Ansible管理主机信息的配置文件,相当于系统HOSTS文件的功能,默认存放在/etc/ansible/hosts ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 5][] 定义组嵌套及组变量 组与组之间可以相互调用,并且可以向组中的主机指定变量。不过,这些变量只能在Ansible-playbook中使用,而Ansible不支持 6.给ansible的客户端添加同样的ansible用户,均设定密码为redhat ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 6][] ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 7][] 7.设置ssh免密登录 ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 8][] ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 9][] 8、测试ansible ![20190812202959401.png][] ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 10][] ansible已经部署成功 [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70]: /images/20211018/a2affc169e844e2eb86c5560ac060661.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 1]: /images/20211018/4be8a2b8c65d4706a83431d5ff487044.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 2]: /images/20211018/cb490b86f6194324bfd5a9cd694fa045.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 3]: /images/20211018/7c5903dfeeb1485282932748c8b00762.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 4]: /images/20211018/5b6ad2fb9aff4268a2885ea74f11ccdf.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 5]: /images/20211018/a63297307d1f47978ffb4ecd70f6c47b.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 6]: /images/20211018/8abd057e4ea84484825e565f1cf2d554.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 7]: /images/20211018/b079ba954ed847b59b391830d5cdf53d.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 8]: /images/20211018/8c5ae4a5ee8046bbabacbcc9e423ebaa.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 9]: /images/20211018/40e81fde96fd45e3be034ab758000589.png [20190812202959401.png]: /images/20211018/3b217e5e495e402ba41893a5ccfbf7e0.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3ZhbnZhbl8_size_16_color_FFFFFF_t_70 10]: /images/20211018/e377323b415542419582b4684e2f817b.png
还没有评论,来说两句吧...