Slide 1

Slide 1 text

1 ©AR Advanced Technology All Rights Reserved. 手動デプロイからの卒業! CloudFormationでリソースを自動生成する方法 2025年11月12日(水) ARアドバンストテクノロジ株式会社 石山徳紘

Slide 2

Slide 2 text

2 ©AR Advanced Technology All Rights Reserved. 1. はじめに 2. CloudFormationとは 3. 手動デプロイの限界 4. AWS CLIの活用 5. デプロイ 6. まとめ アジェンダ

Slide 3

Slide 3 text

3 ©AR Advanced Technology All Rights Reserved. 自己紹介 石山 徳紘(いしやま のりひろ) 所属: ARアドバンストテクノロジ株式会社 2023年 新卒入社 業務内容: AWSを用いたインフラ基盤構築 (CloudFormation, Terraform) 趣味: 旅行, カラオケ, 映画鑑賞(国宝めちゃ感動しました),etc

Slide 4

Slide 4 text

4 ©AR Advanced Technology All Rights Reserved. 1. はじめに

Slide 5

Slide 5 text

5 ©AR Advanced Technology All Rights Reserved. 1. はじめに みなさんこんな経験ありますか?

Slide 6

Slide 6 text

6 ©AR Advanced Technology All Rights Reserved. 1. はじめに みなさんこんな経験ありますか? 100個作ってください

Slide 7

Slide 7 text

7 ©AR Advanced Technology All Rights Reserved. 1. はじめに 効率的にリソースを大量作成する方法を 知ってもらう CloudFormationのAWS CLIを活用する

Slide 8

Slide 8 text

8 ©AR Advanced Technology All Rights Reserved. 2. CloudFormationとは

Slide 9

Slide 9 text

9 ©AR Advanced Technology All Rights Reserved. 2. CloudFormationとは 1. AWSリソースをコードで定義・管理できるサービス 2. AWSネイティブ 3. インフラ(AWSリソース)の構成をテンプレートで記述(JSON or YAML)

Slide 10

Slide 10 text

10 ©AR Advanced Technology All Rights Reserved. Stack Resoure 2. CloudFormationとは CloudFormationによるリソース作成の流れ Template リソースの設定ファイル

Slide 11

Slide 11 text

11 ©AR Advanced Technology All Rights Reserved. Resoure 2. CloudFormationとは CloudFormationによるリソース作成の流れ Stack Template リソースの集合体

Slide 12

Slide 12 text

12 ©AR Advanced Technology All Rights Reserved. Stack Template 2. CloudFormationとは CloudFormationによるリソース作成の流れ Resoure 実際に作成された リソース (Stackによる管理)

Slide 13

Slide 13 text

13 ©AR Advanced Technology All Rights Reserved. 2. CloudFormationとは Stack Template Resoure CloudFormationによるリソース作成の流れ リソースの設定ファイル リソースの集合体 実際に作成された リソース (Stackによる管理)

Slide 14

Slide 14 text

14 ©AR Advanced Technology All Rights Reserved. Template Resoure 2. CloudFormationとは Stack Cloudformationスタックの作成の方法 ①マネジメントコンソールからの作成 ②AWS CLIからの作成

Slide 15

Slide 15 text

15 ©AR Advanced Technology All Rights Reserved. 3. 手動デプロイの限界

Slide 16

Slide 16 text

16 ©AR Advanced Technology All Rights Reserved. 3. 手動デプロイの限界 当時はCloudFormationを学び始めた初心者、、、

Slide 17

Slide 17 text

17 ©AR Advanced Technology All Rights Reserved. 3. 手動デプロイの限界 マネジメントコンソールから手動でスタック作成してました

Slide 18

Slide 18 text

18 ©AR Advanced Technology All Rights Reserved. 3. 手動デプロイの限界 マネジメントコンソールから手動でスタック作成してました 1スタック作るのに3分ほどかかる

Slide 19

Slide 19 text

19 ©AR Advanced Technology All Rights Reserved. 3. 手動デプロイの限界 そんなタイミングで「Lambda100個作って」と言われ、、、 数が多すぎる 100個スタック作るために要する時間は300分

Slide 20

Slide 20 text

20 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用

Slide 21

Slide 21 text

21 ©AR Advanced Technology All Rights Reserved. Template Resoure Stack Cloudformationスタックの作成の方法 ①マネジメントコンソールからの作成 ②AWS CLIからの作成 4. CLIの活用

Slide 22

Slide 22 text

22 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 実際に、どう実装するのか、、、

Slide 23

Slide 23 text

23 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 実際に、どう実装するのか、、、 AWS CLI CSVファイル Shellスクリプト (Shellスクリプトに含める)

Slide 24

Slide 24 text

24 ©AR Advanced Technology All Rights Reserved. (Shellスクリプトに含める) AWS CLI CSVファイル 4. CLIの活用 Shellスクリプト

Slide 25

Slide 25 text

25 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 ① 読み込むCSVファイルパスの指定 ② CSVファイルの先頭行を飛ばして、パラメータを取得 ③ 必須パラメータの空欄チェック ④ AWS CLI “aws cloudformation create-stack” を実行 ⑤ ②~④をCSVファイルの行数分繰り返す Shellスクリプトの内容

Slide 26

Slide 26 text

26 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 ① ② ③ ④

Slide 27

Slide 27 text

27 ©AR Advanced Technology All Rights Reserved. CSVファイル Shellスクリプト AWS CLI 4. CLIの活用 (Shellスクリプトに含める)

Slide 28

Slide 28 text

28 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 CLIコマンドの内容 ① “aws cloudformation create-stack” を実行 ② 必須パラメータ 1. “stack-name”:CloudFormationのスタック名 2. “template-url”:テンプレートファイルが格納されたS3のオブジェクトURL

Slide 29

Slide 29 text

29 ©AR Advanced Technology All Rights Reserved. (Shellスクリプトに含める) Shellスクリプト AWS CLI CSVファイル 4. CLIの活用

Slide 30

Slide 30 text

30 ©AR Advanced Technology All Rights Reserved. ① 1行目はカラム名 ② 2行目以降はスタック作成時に入力するパラメータ (1行で1スタック) 4. CLIの活用 CSVファイルの内容

Slide 31

Slide 31 text

31 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 AWS CLI CSVファイル Shellスクリプト (Shellスクリプトに含める)

Slide 32

Slide 32 text

32 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 AWS CLI CSVファイル Shellスクリプト ①CSVファイルの パラメータ読み込み (Shellスクリプトに含める)

Slide 33

Slide 33 text

33 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 AWS CLI CSVファイル Shellスクリプト ①CSVファイルの パラメータ読み込み ②CLIコマンドの実行 (Shellスクリプトに含める)

Slide 34

Slide 34 text

34 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 AWS CLI CSVファイル Shellスクリプト ①CSVファイルの パラメータ読み込み ②CLIコマンドの実行 ③繰り返し (Shellスクリプトに含める)

Slide 35

Slide 35 text

35 ©AR Advanced Technology All Rights Reserved. 4. CLIの活用 AWS CLI CSVファイル Shellスクリプト ①CSVファイルの パラメータ読み込み ②CLIコマンドの実行 ③繰り返し この3つを用意すればいくつでもスタック作成が可能! (Shellスクリプトに含める)

Slide 36

Slide 36 text

36 ©AR Advanced Technology All Rights Reserved. 5. デプロイ

Slide 37

Slide 37 text

37 ©AR Advanced Technology All Rights Reserved. 5. デプロイ デプロイ手順 (今回はデモとして10スタックを一括で作成) ① マネジメントコンソールからCloud Shellを開く ② 資材のアップロード 1. CSVファイル 2. Shellスクリプト ③ Shellスクリプトの実行 例)“. cloudformation_create_stack.sh”

Slide 38

Slide 38 text

38 ©AR Advanced Technology All Rights Reserved. デプロイ結果(CloudShell) 5. デプロイ

Slide 39

Slide 39 text

39 ©AR Advanced Technology All Rights Reserved. デプロイ結果(マネジメントコンソール) 5. デプロイ

Slide 40

Slide 40 text

40 ©AR Advanced Technology All Rights Reserved. 6. まとめ

Slide 41

Slide 41 text

41 ©AR Advanced Technology All Rights Reserved. 6. まとめ マネジメントコンソールから手動でスタック作成する場合 1スタック作るのに3分ほどかかる

Slide 42

Slide 42 text

42 ©AR Advanced Technology All Rights Reserved. 6. まとめ Shellスクリプトによる一括デプロイで作成する場合 100スタックが3分で作成完了!

Slide 43

Slide 43 text

43 ©AR Advanced Technology All Rights Reserved. 6. まとめ Shellスクリプトによる一括デプロイで作成する場合 10スタックが3分で作成完了! 作業時間を1/100に短縮!

Slide 44

Slide 44 text

44 ©AR Advanced Technology All Rights Reserved. 6. まとめ AWS CLI CSVファイル Shellスクリプト ①CSVファイルの パラメータ読み込み ②CLIコマンドの実行 ③繰り返し 3点セットで効率よくリソース大量作成しよう! (Shellスクリプトに含める)

Slide 45

Slide 45 text

45 ©AR Advanced Technology All Rights Reserved. ARアドバンストテクノロジ株式会社【略称:ARI】 〒150-0002 東京都渋谷区渋谷2-17-1 渋谷アクシュ18F TEL : 03-6450-6080 FAX : 03-6450-6088 URL : https://ari-jp.com