SlideShare a Scribd company logo
1 of 63
Download to read offline
わたくし、やっぱりCDKを使いたいですわ∼∼∼
∼CDK Import編∼
2022/7/13 Mirai Kobayashi
JAWS-UG CDK 支部 #2
自己紹介
2
・お仕事
  ・野生のインフラエンジニア
・好きなAWSサービス
  ・CDK / TransitGateway
・名前
  ・Mirai Kobayashi / @mi-kobaaaaaa
・好きなもの
  ・平日の昼間に開けるビール
3
アジェンダ
・概要
・取り込み方法おさらい
・CDK Importとは?
・やってみた
・おまけ
・まとめ
・注意事項
4
注意事項
5
注意事項
・今回お話しする取り込みの定義について
6
注意事項
・今回お話しする取り込みの定義について
  ・IaCツール管理下でリソースコントロールができることを指します
  ※fromメソッドなどを使用したリソース情報利用ではありません
7
注意事項
・タイトルのですわについて
8
注意事項
・タイトルのですわについて
  ・最近ハマっているから使っただけです、ほぼ出てきません
9
注意事項
・タイトルのですわについて
  ・最近ハマっているから使っただけです、ほぼ出てきません
・今回お話しする取り込みの定義について
  ・IaCツール管理下でリソースコントロールができることを指します
  ※fromメソッドなどを使用したリソース情報利用ではありません
10
注意事項
・タイトルのですわについて
  ・最近ハマっているから使っただけです、ほぼ出てきません
・今回お話しする取り込みの定義について
  ・IaCツール管理下でリソースコントロールができることを指します
  ※fromメソッドなどを使用したリソース情報利用ではありません
それではスタート!
11
概要
12
突然ですがみなさん
概要
13
手動でつくったリソース、眠ってませんか?
概要
14
😴
概要
15
なんとかしてIaCツールに取り込みたい
概要
16
そう思ったことありませんか?
概要
17
✊
概要
18
よくある取り込み方法おさらい
よくあるIaC取り込み方法おさらい
19
・CDK
・Terraform
・Cloudformation
よくあるIaC取り込み方法おさらい
20
・CDK
・Terraform
  ・terraform import を使う
      ・plan / show などを使って差分チェックしやすい
    ・取り込むリソース定義をtfファイルに追加してimport
・Cloudformation
よくあるIaC取り込み方法おさらい
21
・CDK
・Terraform
・Cloudformation
  ・Resource Importing機能 を使う
    ・取り込むリソース定義をテンプレートに追加してimport
      ・ymlやjsonがつらいけどまだ頑張れる
よくあるIaC取り込み方法おさらい
22
・CDK
  ・Resource Importing機能 を使う
    ・リソース定義がテンプレートに追加されていることを確認しつつimport
    ・CDKコード を取り込み用に変更して Cfnテンプレートを出力
・Terraform
・Cloudformation
よくあるIaC取り込み方法おさらい
23
・CDK
  ・Resource Importing機能 を使う
    ・リソース定義がテンプレートに追加されていることを確認しつつimport
    ・CDKコード を取り込み用に変更して Cfnテンプレートを出力
・Terraform
  ・terraform import を使う
      ・plan / show などを使って差分チェックしやすい
    ・取り込むリソース定義をtfファイルに追加してimport
・Cloudformation
  ・Resource Importing機能 を使う
    ・取り込むリソース定義をテンプレートに追加してimport
      ・ymlやjsonがつらいけどまだ頑張れる
24
あれ、CDKくん大変そうじゃない??
取り込み方法おさらい
25
😱
取り込み方法おさらい
26
それでも私はCDKを使いたいのです!!!
取り込み方法おさらい
27
使いたかったのです・・・
取り込み方法おさらい
28
😢
取り込み方法おさらい
29
そんな中、とあるアップデートが・・・
取り込み方法おさらい
取り込み方法おさらい
・CDK v2.20.0のリリース情報
取り込み方法おさらい
cdk import・・・?
・怪しげなFeature Updateが・・・
32
cdk importとは?
33
cdk importとは?
https://github.com/aws/aws-cdk/tree/main/packages/aws-cdk
・cdkのREADMEには下記記載があります
34
cdk importとは?
https://github.com/aws/aws-cdk/tree/main/packages/aws-cdk
要するにcdk importコマンドでCfnのResource Importingができるらしい
・cdkのREADMEには下記記載があります
35
cdk importとは?
https://github.com/aws/aws-cdk/tree/main/packages/aws-cdk
cdkのREADMEには下記記載があります
要するにcdk importコマンドでCfnのResouce Importingができるらしい
よさそうなのでやってみよう
36
やってみた
やってみた
37
・下記サンプルで検証します
やってみた
38
cdkで作成する部分
やってみた
39
手動で作成して取り込む部分
40
やってみた
・いつも通り楽しくコードを書いてデプロイします
やってみた
41
・今はこんな状態です
42
やってみた
・続いてS3bucketを手動で追加します
43
やってみた
・バケットポリシーは空っぽのまま
やってみた
44
・S3が追加されてこのような状態になりました
45
やってみた
念の為 cdk diff を実行してみます
しかしこの段階ではまだS3 bucketはcdkの管理下ではありません
もちろん no differencesになります
46
やってみた
・cdkのコードにS3を追加します
47
やってみた
・ちなみにこのタイミングでdiffをとると変更が発生します
・cdkのコードにS3を追加します
48
やってみた
・cdk importを実行すると下記が表示されます
※cdk deployしないように!
49
やってみた
・先ほど作成したS3bucketの名前を入力するとimportが実行されます
※cdk deployしないように!
・cdk importを実行すると下記が表示されます
50
やってみた
・再度 cdk diffをとると no differencesになっています
これで取り込みは完了しました😊
やってみた
51
・これで全てのリソースがcdk管理下になりました!
52
☺
やってみた
53
おまけ
54
おまけ
・せっかくなのでalbのアクセスログを保管するコードを追加します
55
おまけ
・cdk diff をとるとスタックの一部として動作していることがわかります
56
おまけ
・バケットポリシーもしっかり追加されていますね!
57
まとめ
58
まとめ
・既存リソース取り込みがすごく楽になった
59
まとめ
・既存リソース取り込みがすごく楽になった
  ・とくにCfnを触ることなくcdkで完結することは素晴らしい
60
まとめ
・既存リソース取り込みがすごく楽になった
  ・とくにCfnを触ることなくcdkで完結することは素晴らしい
・別のリソースでも試したがややわかりづらい部分があった
61
まとめ
・既存リソース取り込みがすごく楽になった
  ・とくにCfnを触ることなくcdkで完結することは素晴らしい
・別のリソースでも試したがややわかりづらい部分があった
  ・wafで試してみたらvalidation errorになった、要検証
今回検証した内容は下記Githubで公開していますわ∼∼∼
https://github.com/mi-kobaaa/cdk-import-sample
62
Thank you!

More Related Content

What's hot

What's hot (20)

Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
 
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
 
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
 
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
 
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
 
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation 20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
 
[AKIBA.AWS] VPCをネットワーク図で理解してみる
[AKIBA.AWS] VPCをネットワーク図で理解してみる[AKIBA.AWS] VPCをネットワーク図で理解してみる
[AKIBA.AWS] VPCをネットワーク図で理解してみる
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
 
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
 
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
OSS+AWSでここまでできるDevSecOps (Security-JAWS第24回)
 
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
 
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
 
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
 
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
 
AWS Black Belt Online Seminar - Amazon Lightsail
AWS Black Belt Online Seminar - Amazon Lightsail AWS Black Belt Online Seminar - Amazon Lightsail
AWS Black Belt Online Seminar - Amazon Lightsail
 
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
20191016 AWS Black Belt Online Seminar Amazon Route 53 Resolver
 
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
20191002 AWS Black Belt Online Seminar Amazon EC2 Auto Scaling and AWS Auto S...
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
 

Similar to わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf

Pythonで検索エンジン2
Pythonで検索エンジン2Pythonで検索エンジン2
Pythonで検索エンジン2
Yasukazu Kawasaki
 
Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む
2bo 2bo
 
Boost.勉強会 #13 @仙台 鳥小屋
Boost.勉強会 #13 @仙台 鳥小屋Boost.勉強会 #13 @仙台 鳥小屋
Boost.勉強会 #13 @仙台 鳥小屋
Yuto M
 
イチからはじめるADK北海道支部勉強会発表資料
イチからはじめるADK北海道支部勉強会発表資料イチからはじめるADK北海道支部勉強会発表資料
イチからはじめるADK北海道支部勉強会発表資料
Kenichi Yoshida
 

Similar to わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf (20)

自動化を支えるCI/CDパイプライン
自動化を支えるCI/CDパイプライン自動化を支えるCI/CDパイプライン
自動化を支えるCI/CDパイプライン
 
第2回名古屋SoftLayer会勉強会 Racemiによるクラウド移行
第2回名古屋SoftLayer会勉強会 Racemiによるクラウド移行第2回名古屋SoftLayer会勉強会 Racemiによるクラウド移行
第2回名古屋SoftLayer会勉強会 Racemiによるクラウド移行
 
CDH4->5 update苦労話
CDH4->5 update苦労話CDH4->5 update苦労話
CDH4->5 update苦労話
 
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
 
Datadog Agent on CloudRunによるGCPトレービリティ向上
Datadog Agent on CloudRunによるGCPトレービリティ向上Datadog Agent on CloudRunによるGCPトレービリティ向上
Datadog Agent on CloudRunによるGCPトレービリティ向上
 
Resemaraを支えた技術 フライングゲットガチャの舞台裏 #ksgstudy #ドリコム
Resemaraを支えた技術 フライングゲットガチャの舞台裏 #ksgstudy #ドリコムResemaraを支えた技術 フライングゲットガチャの舞台裏 #ksgstudy #ドリコム
Resemaraを支えた技術 フライングゲットガチャの舞台裏 #ksgstudy #ドリコム
 
AtCoderやってみた.pdf
AtCoderやってみた.pdfAtCoderやってみた.pdf
AtCoderやってみた.pdf
 
Deploy TypeScript Application by CodePipeline
Deploy TypeScript Application by CodePipelineDeploy TypeScript Application by CodePipeline
Deploy TypeScript Application by CodePipeline
 
脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...
脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...
脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...
 
Pythonで検索エンジン2
Pythonで検索エンジン2Pythonで検索エンジン2
Pythonで検索エンジン2
 
Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む
 
Singularity Containers for Enterprise Use
Singularity Containers for Enterprise UseSingularity Containers for Enterprise Use
Singularity Containers for Enterprise Use
 
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
 
AWSにおけるIaCを活かしたTerraformの使い方2選! ~循環型IaCとマルチクラウドチックなDR環境~ (HashiTalks: Japan 発...
AWSにおけるIaCを活かしたTerraformの使い方2選! ~循環型IaCとマルチクラウドチックなDR環境~ (HashiTalks: Japan 発...AWSにおけるIaCを活かしたTerraformの使い方2選! ~循環型IaCとマルチクラウドチックなDR環境~ (HashiTalks: Japan 発...
AWSにおけるIaCを活かしたTerraformの使い方2選! ~循環型IaCとマルチクラウドチックなDR環境~ (HashiTalks: Japan 発...
 
CyberAgentのPrivateCloudeを支えるStorage基盤
CyberAgentのPrivateCloudeを支えるStorage基盤CyberAgentのPrivateCloudeを支えるStorage基盤
CyberAgentのPrivateCloudeを支えるStorage基盤
 
第9回しゃちほこオラクル倶楽部
第9回しゃちほこオラクル倶楽部第9回しゃちほこオラクル倶楽部
第9回しゃちほこオラクル倶楽部
 
コミケの取りまとめをしたので
コミケの取りまとめをしたのでコミケの取りまとめをしたので
コミケの取りまとめをしたので
 
分散Key/Valueストア Kai 事例紹介
分散Key/Valueストア Kai事例紹介分散Key/Valueストア Kai事例紹介
分散Key/Valueストア Kai 事例紹介
 
Boost.勉強会 #13 @仙台 鳥小屋
Boost.勉強会 #13 @仙台 鳥小屋Boost.勉強会 #13 @仙台 鳥小屋
Boost.勉強会 #13 @仙台 鳥小屋
 
イチからはじめるADK北海道支部勉強会発表資料
イチからはじめるADK北海道支部勉強会発表資料イチからはじめるADK北海道支部勉強会発表資料
イチからはじめるADK北海道支部勉強会発表資料
 

わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf