Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CloudFormationを用いた簡単なAWSネットワーク構築.pdf
Search
Shun Kawamoto
February 25, 2025
Technology
44
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CloudFormationを用いた簡単なAWSネットワーク構築.pdf
AWS CloudFormationを用いた簡単なAWSネットワーク構築方法及び、プロビジョニング時の躓きを共有する資料です。
Shun Kawamoto
February 25, 2025
More Decks by Shun Kawamoto
See All by Shun Kawamoto
セキュリティサービスの全体像&SecurityHub
kwmoon911
0
22
新しいサーバレスの形 Lambda ManagedInstancesで並列実行してみる
kwmoon911
0
13
IAMロール再作成時の罠とインスタンスプロファイルの仕組み
kwmoon911
0
51
オンプレDNSでAWSサービスの名前解決にハマった話
kwmoon911
0
220
Other Decks in Technology
See All in Technology
Classmethod Company Deck
satoshi7
1
730
CTO Night|NotionのAIエージェントとFDE
kzkhykw1991
0
230
触りたくないデータに、どう触るか AI時代のRBACアクセスガバナンス
ivry_presentationmaterials
0
280
Refining Active Record
shugo
0
160
AI時代のPRレビューにどう向き合うか?
kairim0
1
240
会社紹介資料 / Sansan Company Profile
sansan33
PRO
31
430k
ウォンテッドリーの最近のプロダクトと技術の紹介
stomk
0
130
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
470
夫婦で子育てするための育児標準化
codmoninc
PRO
0
450
スプシの手作業からの解脱 ~更新はClaude Codeに、見せ方と使い方はGASアプリに任せる~
kentarofujii
0
160
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
200
AIにシークレットを見せない、WSL2で安全な開発環境
yazm
0
310
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
109
250k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
360
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
Google's AI Overviews - The New Search
badams
0
1.6k
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Transcript
© JSOL CORPORATION 0 プレゼンテーションタイトル © JSOL CORPORATION CloudFormationを用いた簡単なAWSネットワーク 構築と躓きの共有
河本 瞬 豊洲会 #LT大会
© JSOL CORPORATION 1 © JSOL CORPORATION 1 自己紹介
© JSOL CORPORATION 2 自己紹介 河本 瞬(かわもと しゅん) プラットフォーム事業本部 プラットフォームビジネス部
SAP basis・インフラ領域を担当 社会人歴:1年目(現場配属3か月) 好きなAWSのサービス:Amazon Route 53 趣味:筋トレ、カメラ
© JSOL CORPORATION 3 © JSOL CORPORATION 3 現場配属後の業務
© JSOL CORPORATION 4 現場配属後の業務 1か月目 AWS パラメータ設計書の作成 • ネットワーク
• IAM • S3, SNS , CloudTrailなど
© JSOL CORPORATION 5 現場配属後の業務 2か月目 できました!
© JSOL CORPORATION 6 現場配属後の業務 2か月目 できました! ありがとうございます!
© JSOL CORPORATION 7 現場配属後の業務 2か月目 できました! ありがとうございます! 次はCloudFormationで これをプロビジョニング
してください。
© JSOL CORPORATION 8 現場配属後の業務 2か月目 できました! ありがとうございます! 次はCloudFormationで これをプロビジョニング
してください。 承知しました!
© JSOL CORPORATION 9 現場配属後の業務 2か月目 できました! ありがとうございます! 次はCloudFormationで これをプロビジョニング
してください。 承知しました! CloudFormationを用いたリソースの作成
© JSOL CORPORATION 10 現場配属後の業務 2か月目 できました! ありがとうございます! 次はCloudFormationで これをプロビジョニング
してください。 承知しました! CloudFormationを用いたリソースの作成 (いきなりCloudFormationか...。難しそうやな...。)
© JSOL CORPORATION 11 © JSOL CORPORATION 11 CloudFormationで簡単なAWS ネットワークを作ってみる
© JSOL CORPORATION 12 CloudFormationとは • 設定ファイル(テンプレート)を元にAWSの構築を自動化できるサービス • テンプレートにはJSONやYAML形式でリソースの情報を記述する •
作成したリソースの集合体をスタックという単位で管理できる Templateに作成する リソースを定義 ClourdFormation Templateの解釈 AWSリソースを操作 (作成/変更/削除) Stack リソースを集合体と してまとめて管理
© JSOL CORPORATION 13 CloudFormationでAWSネットワークを作成 Virtual private cloud (VPC) AZ:ap-northeast-1a
Public subnet RouteTable 構成図 • Virturl private cloud (VPC) • Public subnet • Route table • Internet gateway Internet gateway
© JSOL CORPORATION 14 CloudFormationでAWSネットワークを作成 テンプレート AWSTemplateFormatVersion: "2010-09-09" Description: "CloudFormation
template for a VPC with Multi-AZ subnets and VPC Endpoint." #VPC作成 Resources: VPC: Type: "AWS::EC2::VPC" Properties: CidrBlock: "10.0.0.0/16" #サブネット作成 Subnet: Type: "AWS::EC2::Subnet" Properties: VpcId: !Ref VPC CidrBlock: "10.0.1.0/24" AvailabilityZone: "ap-northeast-1a" #インターネットゲートウェイ作成 InternetGateway: Type: AWS::EC2::InternetGateway Properties: Tags: - Key: Name Value: MyInternetGateway VPCGatewayAttachment: Type: AWS::EC2::VPCGatewayAttachment Properties: VpcId: !Ref VPC InternetGatewayId: !Ref InternetGateway #ルートテーブル作成 RouteTable: Type: "AWS::EC2::RouteTable" Properties: VpcId: !Ref VPC #ルート追加 #インターネットへのルートを追加 RouteAZ1Internet: Type: "AWS::EC2::Route" Properties: RouteTableId: !Ref RouteTable DestinationCidrBlock: "0.0.0.0/0" GatewayId: !Ref InternetGateway VPCGatewayEndpoint: Type: "AWS::EC2::VPCEndpoint" Properties: VpcId: !Ref VPC ServiceName: "com.amazonaws.ap-northeast-1.s3" RouteTableIds: - !Ref RouteTable #ルートテーブルをサブネットに紐づける SubnetRouteTableAssociationAZ1: Type: "AWS::EC2::SubnetRouteTableAssociation" Properties: SubnetId: !Ref Subnet RouteTableId: !Ref RouteTable
© JSOL CORPORATION 15 CloudFormationでAWSネットワークを作成 テンプレート AWSTemplateFormatVersion: "2010-09-09" Description: "CloudFormation
template for a VPC with Multi-AZ subnets and VPC Endpoint." #VPC作成 Resources: VPC: Type: "AWS::EC2::VPC" Properties: CidrBlock: "10.0.0.0/16" #サブネット作成 Subnet: Type: "AWS::EC2::Subnet" Properties: VpcId: !Ref VPC CidrBlock: "10.0.1.0/24" AvailabilityZone: "ap-northeast-1a" #インターネットゲートウェイ作成 InternetGateway: Type: AWS::EC2::InternetGateway Properties: Tags: - Key: Name Value: MyInternetGateway VPCGatewayAttachment: Type: AWS::EC2::VPCGatewayAttachment Properties: VpcId: !Ref VPC InternetGatewayId: !Ref InternetGateway #ルートテーブル作成 RouteTable: Type: "AWS::EC2::RouteTable" Properties: VpcId: !Ref VPC #ルート追加 #インターネットへのルートを追加 RouteAZ1Internet: Type: "AWS::EC2::Route" Properties: RouteTableId: !Ref RouteTable DestinationCidrBlock: "0.0.0.0/0" GatewayId: !Ref InternetGateway VPCGatewayEndpoint: Type: "AWS::EC2::VPCEndpoint" Properties: VpcId: !Ref VPC ServiceName: "com.amazonaws.ap-northeast-1.s3" RouteTableIds: - !Ref RouteTable #ルートテーブルをサブネットに紐づける SubnetRouteTableAssociationAZ1: Type: "AWS::EC2::SubnetRouteTableAssociation" Properties: SubnetId: !Ref Subnet RouteTableId: !Ref RouteTable ちょっと難易度が高いのでは
© JSOL CORPORATION 16 テンプレートの記述例(yaml) VPCの定義
© JSOL CORPORATION 17 テンプレートの記述例(yaml) VPCの定義 たったの4行!!
© JSOL CORPORATION 18 テンプレートの記述例(yaml) VPC サブネット VPC・サブネット
© JSOL CORPORATION 19 テンプレートの記述例(yaml) VPC サブネット VPC・サブネット
© JSOL CORPORATION 20 テンプレートの記述例(yaml) VPC サブネット VPC・サブネット 参照 論理ID
© JSOL CORPORATION 21 テンプレートの記述例(yaml) VPC サブネット テンプレートはシンプルな構造でわかりやすい。 簡単に記述できる!! VPC・サブネット
参照 論理ID
© JSOL CORPORATION 22 © JSOL CORPORATION 22 躓き
© JSOL CORPORATION 23 スタック作成時のエラー どうやらルートテーブル関連でリソースに重複があるとのこと (Resource handler returned message
:”Already Exsists”) 実業務での最初のスタック作成ではエラーが発生...
© JSOL CORPORATION 24 スタック作成時のエラー どうやらルートテーブル関連でリソースに重複があるとのこと (Resource handler returned message
:”Already Exsists”) 実業務での最初のスタック作成ではエラーが発生... 解決に約1時間を要してしまった。
© JSOL CORPORATION 25 エラーの原因 エラー原因箇所 local宛のエントリを記載している
© JSOL CORPORATION 26 エラーの原因 エラー原因箇所 local宛のエントリを記載している AWSのルートテーブルは作成される際に デフォルトでローカル宛のエントリが追加 される。
© JSOL CORPORATION 27 エラーの原因 エラー原因箇所 local宛のエントリを記載している AWSのルートテーブルは作成される際に デフォルトでローカル宛のエントリが追加 される。
競合が発生し、エラーとなってしまった
© JSOL CORPORATION 28 教訓 ルートテーブルの仕様を把握していれば躓かなかった
© JSOL CORPORATION 29 教訓 ルートテーブルの仕様を把握していれば躓かなかった が、私のような経験が浅い人にとっては難しい
© JSOL CORPORATION 30 教訓 ・基本的な仕様を把握するために自分で情報を取りに行く ・AWS認定資格の勉強だけでなく、普段から手を動かすこと。 持つべき意識 ルートテーブルの仕様を把握していれば躓かなかった が、私のような経験が浅い人にとっては難しい
© JSOL CORPORATION 31 使ってみてわかったCloudFormationのメリット •テンプレート構造がシンプルで分かりやすい 初心者でも直感的に扱える。 •別アカウントや環境での再利用性が高い 複数のアカウントや環境で簡単に同一構成を作成可能 •手作業ミスを防げる
コードで定義するため、ヒューマンエラーを大幅に減らせる。
© JSOL CORPORATION 32 CloudFormationをまだ使ったことがない方... ぜひ、気軽に使ってみてください!!