[大阪/横滨/德岛] 寻找基础设施/服务器端工程师!

[大阪/横滨/德岛] 寻找基础设施/服务器端工程师!

【超过500家企业部署】AWS搭建、运维、监控服务

【超过500家企业部署】AWS搭建、运维、监控服务

【CentOS的后继者】AlmaLinux OS服务器搭建/迁移服务

【CentOS的后继者】AlmaLinux OS服务器搭建/迁移服务

[仅适用于 WordPress] 云服务器“Web Speed”

[仅适用于 WordPress] 云服务器“Web Speed”

[便宜]网站安全自动诊断“快速扫描仪”

[便宜]网站安全自动诊断“快速扫描仪”

[预约系统开发] EDISONE定制开发服务

[预约系统开发] EDISONE定制开发服务

[注册100个URL 0日元] 网站监控服务“Appmill”

[注册100个URL 0日元] 网站监控服务“Appmill”

【兼容200多个国家】全球eSIM“超越SIM”

【兼容200多个国家】全球eSIM“超越SIM”

[如果您在中国旅行、出差或驻扎]中国SIM服务“Choco SIM”

[如果您在中国旅行、出差或驻扎]中国SIM服务“Choco SIM”

【全球专属服务】Beyond北美及中国MSP

【全球专属服务】Beyond北美及中国MSP

[YouTube]超越官方频道“美由丸频道”

[YouTube]超越官方频道“美由丸频道”

我们用CloudFormation(执行版)创建一个VPC环境

大家好,
我是系统解决方案部SRE团队的冈崎。

上次,我想介绍一下“CloudFormation”的简单使用方法。
这次,我想根据上次填写的模板文件实际构建一个 VPC。

创建堆栈

首先,登录到您的开发服务器并注册将执行 CloudFormation 的用户的 API 密钥,如下所示。

[root@localhost ~]# aws configure AWS 访问密钥 ID [****************XXXX]: AWS 秘密访问密钥 [************ ****XXXX]:默认区域名称 [ap-northeast-1]:默认输出格式 [XXXX]:

如果您没有 aws 命令,请按如下方式安装。

[root@localhost ~]# yum install epel-release [root@localhost ~]# yum install python-pip [root@localhost ~]# pip install awscli

确认上次创建的vpc.yml存在后,我们立即使用以下命令构建VPC。

[root@localhost ~]# ls -l Total 4 -rw-r--r--.1 root root 1713 Mar 22 06:20 vpc.yml [root@localhost ~]# aws cloudformation create-stack \ > --堆栈名称 vpc \ > --region ap-northeast-1 \ > --template-body file://./vpc.yml

执行后,如果显示没有任何错误,则创建过程将继续进行,如下所示。

arn:aws:cloudformation:ap-northeast-1:189461266018:stack/vpc/7b29dce0-4c70-11e9-8b3c-0ee87e6fb924

您可以使用以下命令检查状态。
如果显示“CREATE_COMPLETE”,则资源已完成。

aws cloudformation 描述堆栈 --stack-name vpc STACKS 2019-03-28T02:12:32.683Z False False arn:aws:cloudformation:ap-northeast-1:189461266018:stack/vpc/f23007a0-50fe-11e9-88b0- 0e819627e6da vpc CREATE_COMPLETE DRIFTINFORMATION NOT_CHECKED 参数 PublicSubnetCider 10.31.0.0/24 参数 ProjectCode 测试参数 VPCCider 10.31.0.0/16

我们来检查一下各个资源是否构建完成。

 

 

 

 

 

 

 

 

 

 

 

具有指定标识符的 VPC 和子网已创建,没有任何问题。

删除资源

现在,我想删除我这次创建的所有资源。
如果您想手动删除资源,则需要转到每个资源屏幕并删除每个资源,但
可以从单个控制台删除使用 CloudFormation 创建的资源。
返回开发服务器并发出以下命令。

[root@localhost ~]# aws cloudformation delete-stack --stack-name vpc

现在,我们来检查删除的进度,
执行下面的命令,如果显示“DELETE_IN_PROGRESS”,则表示删除正在进行中。

[root@localhost ~]# aws cloudformation 描述堆栈 --stack-name vpc STACKS 2019-03-28T02:12:32.683Z 2019-03-28T02:20:53.902Z False False arn:aws:cloudformation:ap-northeast -1:189461266018:stack/vpc/f23007a0-50fe-11e9-88b0-0e819627e6da vpc DELETE_IN_PROGRESS DRIFTINFORMATION NOT_CHECKED 参数 PublicSubnetCider 10.31.0.0/24 参数 ProjectCode 测试参数 VPCCider 10.3 1.0 .0/16

堆栈删除完成后,将出现以下错误输出。

[root@localhost ~]# aws cloudformation describe-stacks --stack-name vpc 调用DescribeStacks 操作时发生错误 (ValidationError): id vpc 的堆栈不存在

现在,我们来检查一下删除是否真正完成。
我已经确认VPC已经消失。

 

 

 

 

 

 

解释

以下是每个命令的解释。

# aws cloudformation create-stack \ ↑ 声明使用 cloudformation 与 aws cloudformation 命令 create stack 和 create-stack,delete-stack 删除 > --stack-name vpc \ ↑ stack-name [name] 设置堆栈名称 > -- Region ap-northeast-1 \ ↑ --region [region] 设置要创建资源的区域 > --template-body file://./vpc.yml ↑ --template-body [文件 URL] 指定模板文件的 URL

这样,您就可以用最少的命令创建VPC。
除此之外,如果想改变上次设置的Parameters的值,可以这样写。

# aws cloudformation create-stack \ > --stack-name vpc \ > --region ap-northeast-1 \ > --template-body file://./vpc.yml > --parameters \ > ParameterKey=ProjectCode, ParameterValue=test-beyondjapan \ > ParameterKey=VPCCider,ParameterValue="10.23.0.0/16" \ > ParameterKey=PublicSubnetCider,ParameterValue="10.23.0.0/24"

您可以在parameters中声明各个参数的用途,并在ParameterKey中指定参数ID,在ParameterValue中指定参数值。

概括

这次,我们能够从控制台创建和删除堆栈和每个资源。
这样,您就可以使用CloudFormation轻松创建和删除AWS资源。
上一次和这次我们只讲了创建VPC,但下次我们会介绍创建EC2等实用内容,所以请也尝试使用它.

如果您觉得这篇文章有帮助,请点赞!
0
加载中...
0 票,平均:0.00 / 10
597
X Facebook 哈特纳书签 口袋
[2025.6.30 Amazon Linux 2 支持结束] Amazon Linux 服务器迁移解决方案

[2025.6.30 Amazon Linux 2 支持结束] Amazon Linux 服务器迁移解决方案

写这篇文章的人

关于作者

冈崎润一郎

拥有丰富的手机游戏搬迁及运营经验。

他每天负责多云运营、服务器建设和搬迁。 随着案件数量的增加,我正在考虑如何提高工作效率。 我们经常考虑根据每个云的优点来重新定位服务器的方法。

在云间迁移、从物理到云的迁移过程中,我们在日本MSP协会举办的比赛中取得了两连胜。