请告诉我是否有任何方法可以使一些Terraspace堆栈在几个环境中通用?例如,我有一个用于所有非生产环境的亚马逊网络服务帐户,我希望对所有环境、所有其他资源(例如EC2、RDS、SQS等)使用相同的VPC对于每个环境都是不同的和特定的。那么,有没有办法将通用VPC堆栈的状态(首先是输出)共享给其他环境(开发、阶段、测试等)如何防止在terraspace build <environment> stage上将VPC堆栈单独应用到每个环境?
发布于 2020-11-17 23:49:02
您好,您可以创建模块,每个模块将代表一个堆栈,并在您的环境中使用。模块是一起使用的多个资源的容器。模块可用于创建轻量级抽象,以便您可以根据其体系结构来描述您的基础设施,而不是直接从物理对象来描述。
这是一个ref
例如图片,你的堆栈是这样的:
stage
└ vpc
└ services
└ frontend-app
└ backend-app
└ data-storage
└ mysql
└ redis
prod
└ vpc
└ services
└ frontend-app
└ backend-app
└ data-storage
└ mysql
└ redis
mgmt
└ vpc
└ services
└ bastion-host
└ jenkins
global
└ iam
└ s3因此,如果你想在一个单独的git项目中创建模块,并在每个环境中使用这些模块:
live.git
└ stage
└ vpc
└ services
└ frontend-app
└ backend-app
└ data-storage
└ mysql
└ redis
└ prod
└ vpc
└ services
└ frontend-app
└ backend-app
└ data-storage
└ mysql
└ redis
└ mgmt
└ vpc
└ services
└ bastion-host
└ jenkins
└ global
└ iam
└ s3
modules.git
└ data-stores
└ mysql
└ redis
└ mgmt
└ vpc
└ jenkins
└ security
└ iam
└ s3
└ bastion-host
└ services
└ webserver-cluster下面是一个关于如何创建模块的Link
https://stackoverflow.com/questions/64874245
复制相似问题