首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AWS SDK与AWS CLI - AWS云形成-地形

AWS SDK与AWS CLI - AWS云形成-地形
EN

Stack Overflow用户
提问于 2019-06-21 11:39:33
回答 1查看 1.9K关注 0票数 0

对于AWS云中的配置基础设施,我们目前正在使用从ansible角色调用的云形成模板,但我们看到,在增加基础设施的规模之后,这段代码在GitHub中变得非结构化或没有模块化

Github有这段代码的意大利面,没有适当的结构,可读性差,不易被新技术人员挑选。

特别是在提供基础设施方面,我看到维护用特定于域的语言编写的代码,如ansible、terraform、cloudformation等.对于GitHub中的代码的长期维护来说,这不是一个好主意,因为对于完全(完全)自动化,您使用这些技术的组合。

原理是,aws代码在GitHub中看起来更结构化,因为它提供了许多隐藏实现细节的抽象。

当然,配置代码与运行在该配置基础结构上的功能代码一样重要。

我们相信,在离开Azure之后,我们将坚持AWS云

域特定语言vis编程语言,

aws方法解决了这个问题吗?我们更喜欢GoLang aws,这样任何GoLang程序员都可以获得它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-21 12:07:18

如果我正确地理解了您的问题,您将指出,由于规模的增加,您的云形成代码已经变得难以管理,并且现在有兴趣使用AWS对其进行定义,以便您可以使用软件最佳实践来保持代码的可维护性。

AWS相对于声明性语言的缺点是,现在您有责任确保当您单击run时,它将不只是创建一个新实例。例如,当我通过AWS部署ec2机器时,下次运行该代码时,它将部署一台新的ec2机器。云形成维护已经部署到何处的状态,因此更容易将增量更改部署到基础设施和还原更改。

我建议您查看的是新的AWS-CDK,它允许您定义最终通过云形成运行的代码。它允许您编写OO样式的对象:

代码语言:javascript
复制
const vpc = new Vpc(this, 'vpc', {
            cidr: '10.150.0.0/16',
            natGateways: 2,
            subnetConfiguration: [
                {
                    name: 'Public',
                    subnetType: SubnetType.Public,
                    cidrMask: 20
                },
                {
                    name: 'Private',
                    subnetType: SubnetType.Private,
                    cidrMask: 22
                },
                {
                    name: 'Isolated',
                    subnetType: SubnetType.Isolated,
                    cidrMask: 22
                }
            ]
        });

遗憾的是,戈朗还没有得到支持。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56702735

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档