使用 ansible 执行多云(AWS、Azure、GCP)配置

Performing multi-cloud (AWS, Azure, GCP ) provisioning using ansible

使用 ansible 执行多云的最佳实践

作为最佳实践,我会实施 三个 个单独的剧本和 三个 个不同的清单以保持简单。您可以根据所使用的库存和云提供商组合一些逻辑来执行条件,但是为什么您需要

然后我会创建单独的角色来实现所需的资源,(从 AWS 的角度)create_vpc(可能包括 dhcp 选项和 IGW),create_routes(和路由表),create_NACLs、create_subnets、创建 security_groups、launch_asg(包括启动配置)、create_nat_gateway、create_nat_instance、create_elb、get_subnet_ids, get_vpc_id.创建单独角色的原因是允许灵活地实现资源和代码重用。

您可以轻松地将所有内容写成一本剧本,我什至建议您一开始就这样做,看看事情是如何工作的(熟悉 ansible 模块),然后将其转化为角色以允许代码重用。

包含一个共享变量文件,(include_vars) 以跨不同的云提供商实施各种子网和负载平衡器。这将导致在每个云提供商中实施三个相同的环境。

我希望将此作为一个家庭项目来实施,以根据我对 AWS 的了解了解不同供应商产品之间的差异。