设为首页收藏本站language 语言切换
查看: 1967|回复: 5
收起左侧

[分享] 【SPOTO思博网络】详细解析!!运维基础《Ansible Tower》

[复制链接]
发表于 2021-11-1 14:13:45 | 显示全部楼层 |阅读模式
【SPOTO思博网络】详细解析!!运维基础《Ansible Tower》



Ansible的自动化能力很强吧?

众所周知,越是强大的自动化平台,越是要监管,以防误操作,曾经携程爆发的误操作的乌龙事件一定要警惕。今天就给大家介绍一下Ansible Tower

什么是Ansible Tower


Ansible是一个超级强大的自动化平台,而Ansible Tower则是:


简约的按角色/权限/控制的的集中自动化平台;

与操作/日志/审计/版本控制结合的一个数据中心自动化管控平台;

Ansible Tower本质上是Ansible的统一管理界面,类似虚拟化中的管理平台;

它可以和ADLDAP等认证方式做对接、通过统一图形化界面直观地看到被管系统的状态。

AnsibleTower既能发挥Ansible这类自动化工具原本的强大执行能力,有对其能力按角色进行控制,同时能将事后报表和审计功能融入,做到符合传统数据中心的运维规范。


Ansible Tower的操作日志还可以与数据中心的CMDB对接,便于用户从整个数据级别对Ansible Tower的自动化运维操作进行统一管理和监控。

因此,Ansible Tower,给企业带来的一个自动化的数据中心,更是一个安全放心的数据中心。

1.jpg




Ansible Tower的安装
01  基础环境


Linux版本:CentOS 7.5
Ansible版本:2.5.3

Ansible Tower版本:
Ansible 服务器:共三台,ans-01ans-02ans-03
使用VMware Fusion虚拟化环境进行模拟,所有服务器2 Cores2GB RAM

02  Ansible Tower架构

2.jpg


Ansible本质上是一个进行了封装的Shell。优点在于它是去中心化的工具,可以直接通过ssh管理远程主机,实现无Agent的部署(ssh+python环境已经原生集成在Linux中)。

Ansible的缺点也在于其去中心化的特点,本身不支持高可用和分布式架构,无法实现Server-Proxy-Client的架构。在比较复杂或者多区域的网络区域中,无法实现统一的集中式管理(如多个ansible管理端的配置同步),也没有前端UI,对ansible的技能要求比较高。

Redhat提供为Ansible提供了一个前端UIAnsible Tower。使用它可以免费管理10台以内的主机。

Ansible Tower提供了通过WEB端管理其他主机的方式。本身也支持Cluster群集方式(需要在每个节点上都安装ansibleansible tower),通过修改配置文件来实现多个Ansible Tower组成一个或者多个群集。

Ansible Tower是目前唯一(除了自研发方式外)能够实现底层Ansible高可用、水平扩展的解决方案。Ansible Tower的功能比较简单,群集配置逻辑(Instance Group分组)通过配置文件实现,没有一个前端维护的界面。因此每次重新配置逻辑都需要在更新配置文件后重跑ansible towersetup文件。

03 Ansible安装


1. 配置AnsibleYUM

3.jpg

file:///C:\Users\86152\AppData\Local\Temp\ksohtml\wps226B.tmp.jpg


2. 安装Ansible


yum install ansible

验证ansible --version


3. 生成公钥

4.jpg

file:///C:\Users\86152\AppData\Local\Temp\ksohtml\wps228B.tmp.jpg

ssh-keygen -N "" -b 4096 -t rsa -C "Ansible Public Key"

生成的秘钥默认为id_rsa,可以通过-f参数指定其他路径,但需要修改ssh_config的默认秘钥文件名,才能实现免密登陆。


4. 复制公钥

ssh-copy-id -i /root/.ssh/id_rsa root@localhos


5. 添加主机到Ansiblehosts列表

5.jpg

file:///C:\Users\86152\AppData\Local\Temp\ksohtml\wps22AB.tmp.jpg

修改/etc/ansible/hosts文件,将管理服务器的信息加入到这个文件,也可以按需分组。

ans-[01:99] 表示ans-01, ans-02, ... , ans-99所有的服务器


6.验证免密码登陆及Ansible管理功能

6.jpg

file:///C:\Users\86152\AppData\Local\Temp\ksohtml\wps2348.tmp.jpg

运行ssh host或者ansible远程执行命令(如ansible "localhost" -m command -a "ip addr")来检测是否可进行免密码登陆。


7. 对于其他要进行管理的服务器,可以重复第4步,进行公钥下发,下发后,便可以实现通过ssh进行远程操作。ansible的远程管理需要进行一定的配置后才能进行。


8.重复上述步骤,使得ans-01ans-02ans-03可以相互进行管理(即:每台服务器的/root/.ssh/authorized_keys文件存在这三台服务器的密钥信息)。




 楼主| 发表于 2021-11-17 15:56:56 | 显示全部楼层
有问题可加微信咨询:spotoa
沙发 2021-11-17 15:56:56 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-18 16:36:28 | 显示全部楼层
有问题请咨询微信:spotoa
板凳 2022-4-18 16:36:28 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-16 11:32:15 | 显示全部楼层
有问题可咨询微信:spotoa
地板 2022-5-16 11:32:15 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-31 11:34:48 | 显示全部楼层
有问题请咨询微信:spotoa
5# 2022-5-31 11:34:48 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-6-24 10:00:27 | 显示全部楼层
有问题请咨询微信:spotoa
6# 2022-6-24 10:00:27 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-5-14 07:50 , Processed in 0.157330 second(s), 26 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表