Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Pulumiを触ってみよう
Search
YouYou
August 26, 2023
Programming
2.7k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Pulumiを触ってみよう
関連記事↓
https://zenn.dev/yuta28/articles/migration-terraform-to-pulumi
YouYou
August 26, 2023
More Decks by YouYou
See All by YouYou
AWSマネコンに複数のアカウントで入れるようになりました
yuhta28
2
290
今インフラ技術をイチから学び直すなら
yuhta28
1
310
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
3
680
Datadog外形監視基盤をEC2から ECSへ移行してみた
yuhta28
0
1.8k
アウトプット頑張ったら企業からLT登壇の依頼がきた話
yuhta28
1
1.9k
小さなことから始めるAWSコスト最適入門
yuhta28
1
1.4k
Datadogのコストも監視しよう
yuhta28
1
1.1k
Rcloneを使った定期的なストレージ同期
yuhta28
0
850
ログストレージコスパ最強!?OpenObserveを試してみた
yuhta28
0
6.3k
Other Decks in Programming
See All in Programming
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.8k
act2-costs.pdf
sumedhbala
0
110
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
460
OSINT for SRE: 学術論文とポストモーテムから探る システム障害の共通パターン / SRE NEXT 2026
tomoyk
1
3.5k
自作OSでスライド発表する
uyuki234
1
3.8k
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
480
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
170
1B+ /day規模のログを管理する技術
broadleaf
0
130
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
110
継続モナドとリアクティブプログラミング
yukikurage
3
500
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
110
Featured
See All Featured
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
560
Tell your own story through comics
letsgokoyo
1
990
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.4k
Designing for Timeless Needs
cassininazir
1
320
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
WCS-LA-2024
lcolladotor
0
680
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
340
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
320
Game over? The fight for quality and originality in the time of robots
wayneb77
1
220
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
830
Transcript
Pulumiを触ってみよう 1
Name:ユータ Occupation:SRE X:@Y0u281 (オーでなくゼロです) ブログ:https://zenn.dev/yuta28 自己紹介 X QRコード 2
目次 • IaCの課題 • Pulumiとは • VS Terraform & AWS
CDK • Terraformからの移行 • まとめ 3
課題 Terraform • 独自言語の学習コスト • stateファイルの管理 • ライセンス問題 4 AWS
CDK • AWSでしか使えない • CI/CD基盤の構築 • プログラミング知識が必要
5
Pulumiとは • JS/TS、Python、Go、YAMLでIaC • AWS以外にもK8SやDatadogなど100以上のパッケージを提供 • 構成管理を管理してくれるマネージドなPulumi Cloud • 他ツールから移行もサポート
6
VS Terraform & AWS CDK Terraform • 独自言語の学習コスト ◦ プログラミング言語可
• stateファイルの管理 ◦ デフォルトでPulumi Cloud提供 • ライセンス問題 ◦ 真のオープンソースを目指す(らし い) 7 AWS CDK • AWSでしか使えない ◦ GCPやAzureにも可能 • CI/CD基盤の構築 ◦ Pulumi Cloudが構築 • プログラミング知識が必要 ◦ YAMLファイルでも可
Terraformからの移行 8 resource "random_string" "s3_bucket_name" { length = 8 special
= false upper = false } # Create S3 resource "aws_s3_bucket" "migration_S3" { bucket = "yuta-${random_string.s3_bucket_name.id}" } S3作成サンプルコード
Terraformからの移行 # pulumi convert --from terraform --language typescript {-out 出力先ディレクトリ}
9
Terraformからの移行 10 import * as pulumi from "@pulumi/pulumi" ; import
* as aws from "@pulumi/aws" ; import * as random from "@pulumi/random" ; const s3BucketName = new random.RandomString("s3BucketName" , { length: 8, special: false, upper: false, }); // Create S3 const migrationS3 = new aws.s3.BucketV2("migrationS3" , {bucket: pulumi.interpolate`yuta-${s3BucketName.id}` });
まとめ 11 • 多言語サポートやクロスプラットフォーム • コンバートツールは良さそう • インポートツールが欲しい
ありがとうございました より詳しい内容は以下のブログで↓ TerraformからPulumiへの移行方法 (https://zenn.dev/yuta28/articles/migr ation-terraform-to-pulumi) 12