结合Ansible在AWS云计算平台上实现运维自动化

简介:

  刚刚看了金山梁晓聪的"在AWS上的运维自动化实践分享",发现技术都是相通的,大家都是用最好的技术。我们的业务平台主要也是AWS云计算平台,尝试了许多自动化运维/配置工具,最后还是选终了Ansible。下一步在公司运维自动化DevOps要做的工作:增大Ansible在系统中的应用比重,真正跟AWS结合起来。选择Ansible主要因为丰富的相关支持,包括很多现有的组件和模块和开源的Ansible部署和脚本。笔者也尝试了市面上所有自动化运维和自动化配置工具,发现Ansible是对AWS支持得最好的一个。Ansible的开发过程是写大量 Playbooks。现在Ansible支持的有251个模块,特别是对于云服务的支持。像AWS、Docker、OpenStack,部署脚本都放在一个子目录下。这就意味着把别人写的脚本拿过来,或者把别人写定义的Playbook拿过来非常容易。现在关于Ansible的开源脚本数量庞大,3000多个项目,我相信这个数字只会越来越多,这意味着以后的很多DevOps工作会越来越简单容易。

  找到 Ansible 的过程(套用下云巴张虎的原话,因为我们的过程很类似)

       最早我们用 SSH 写很多脚本,要用 SSH 连过去,也是在某一台机器上执行,不用在目标机上登陆。这种做法在相当一段时间内是我们实际使用的手段,它实际上比 Puppet 有效。但是它有一些问题:管理成本高、脚本会越来越多。部署的过程有很多的基础部件需要反复部署,几乎是没法管理。后来我们用了 RunDeck,它有界面、有一定的管理能力。我们还用过 Fabric,即批量执行命令,能做到类似部署的事情。但是,目标机规模大了之后仅有管理的能力是不够的。后来我们又调研过 Salt,不认为有太大的差别。选择 Ansible 主要因为丰富的相关支持,包括很多现有的组件和模块和开源的 Ansible 部署和脚本。我们的团队不喜欢纠结。我们发现 Ansible 没有太本质的区别,就开始用起来。如果没有明确理由,我们就凭感觉选一个用。

       Ansible 是通过 SSH 连接到目标服务器,上面这两个东西是我想了很久,我希望去拥有的特性。一个是完整的集群,只需要有一个 inventory 去定义,写出清单就可以定义集群。每一个角色的具体功能有若干 playbooks 来定义。


wKiom1fADtDRO0t2AAA16826P6k317.jpg-wh_50





本文转自 抚琴煮酒 51CTO博客,原文链接:http://blog.51cto.com/yuhongchun/1743912,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
Kubernetes API 数据库
Crossplane - 比 Terraform 更先进的云基础架构管理平台?
Crossplane - 比 Terraform 更先进的云基础架构管理平台?
|
8月前
|
云安全 存储 安全
云服务提供商的安全实践:构建可信赖的AWS、Azure和GCP云环境
本篇详细探讨了三家主要云服务提供商,即Amazon Web Services(AWS)、Microsoft Azure和Google Cloud Platform(GCP)的安全实践。我们介绍了每个平台的关键安全功能和工具,以帮助读者构建可信赖的云环境。
176 1
云服务提供商的安全实践:构建可信赖的AWS、Azure和GCP云环境
|
网络协议 Linux 网络安全
openstack 云平台一体化部署(超详细)
openstack 云平台一体化部署(超详细)
820 0
openstack 云平台一体化部署(超详细)
|
4月前
|
JSON 监控 Shell
搭建公司网络监控系统的基础设施:使用Terraform
在当今数字化的商业环境中,公司网络的稳定性和安全性至关重要。为了实现对公司网络的全面监控,搭建一个强大而灵活的监控系统是至关重要的一步。本文将介绍如何使用Terraform构建公司网络监控系统的基础设施,并通过一些实际的代码示例来说明。
254 2
|
存储 网络协议 开发工具
|
运维 Kubernetes 容器
Mirantis使用Kubernetes容器化OpenStack以缓解运维挑战
本文讲的是Mirantis使用Kubernetes容器化OpenStack以缓解运维挑战【编者的话】Swapnil是印度著名的记者和作家,其领域横跨Linux和开源软件。同时他也是印度有名的科幻作家。本文是他采访Mirantis公司关于Kubernetes融合OpenStack方面的实践。
1578 0