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
色々なIaCツールを実際に触って比較してみる
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
入井 啓太
October 30, 2024
Programming
790
0
Share
色々なIaCツールを実際に触って比較してみる
入井 啓太
October 30, 2024
More Decks by 入井 啓太
See All by 入井 啓太
チーム内のコンテキスト共有のためのClaudeプラグインを作ってみた
iriikeita
0
160
Claude CodeによるAI駆動開発の実践 〜そこから見えてきたこれからのプログラミング〜
iriikeita
0
700
AWS発のAIエディタKiroを使ってみた
iriikeita
1
340
kiroでゲームを作ってみた
iriikeita
0
410
色々なAWSサービス名の由来を調べてみた
iriikeita
0
500
何故負荷試験が大切かを考える
iriikeita
0
440
Amazon GameLiftの 構成要素を整理する
iriikeita
0
730
AWSでゲームサーバーを運用! Amazon GameLiftのお話
iriikeita
0
1k
Zendeskでコールセンター・ヘルプデスク業務に手軽に生成AIのパワーを取り入れる方法
iriikeita
0
1.2k
Other Decks in Programming
See All in Programming
3Dシーンの圧縮
fadis
1
560
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
0
280
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
2.5k
OSもどきOS
arkw
0
370
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
400
TSKaigi2026-静的解析への投資がAI時代のコード品質を支える ── カスタムESLintルールの設計と運用
hayatokudou
7
1.3k
RTSPクライアントを自作してみた話
simotin13
0
400
Talking to terminals (and how they talk back) (KotlinConf 2026)
jakewharton
PRO
1
170
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
190
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
280
RailsTokyo 2026#4: AI様があれば、 Hotwireの弱点は消えるか?
naofumi
5
1k
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
330
Featured
See All Featured
Google's AI Overviews - The New Search
badams
0
1k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
830
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
210
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Building an army of robots
kneath
306
46k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
260
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.5k
Bash Introduction
62gerente
615
210k
The browser strikes back
jonoalderson
0
1.1k
WENDY [Excerpt]
tessaabrams
11
38k
Transcript
色々なIaCツールを実際に触って比較してみる 2024/10/28 JAWS-UG 名古屋 IaC運用のリアルを語りたい!LT大会 入井 啓太
2 自己紹介 名前:入井啓太(@iridon0920) 所属:クラスメソッド株式会社 ゲームソリューション部/業務効率化ソリューション部 肩書:サーバーサイドエンジニア 業務領域: ゲーム開発運用支援 SaaS導入支援(Zendesk等)
居住:名古屋 趣味:ゲーム、漫画、猫、筋トレなど
ぶっちゃけあんまり触っていないです 私のIaC利用状況 • クラウド系はAWS CDKを多少触ったことある程度 ◦ でかい環境の構築・運用はやったことがない • Dockerは開発環境構築とかで昔触っていた ◦
IaCの魅力はDockerで学んだ • IaCコードはプログラム言語の方がやりやすい 今回は初心者目線で各種 IaCツールを触った感想を話します。
クラウド系はいくつかあるけど何が違うんだろう?
実際に触ってみる
試作環境の構成図
実際に触ってみる 1. AWS CDK 2. Terraform 3. Pulumi
AWS CDKの概要 AWSによるAWSのためのIaCツール • 2018年公開 • 各種プログラミング言語でリソース定義を書ける ◦ TypeScript, Python,
Java, C#, Go • Cloudformationテンプレートを生成 ◦ 実際のリソース作成はこれを使う • Cloudformationより簡潔に書ける • AWS以外には対応していない
AWS CDKコード例(VPC、オートスケーリンググループ)
AWS CDKコード例(ACM証明書発行->Cloudfrontでの利用)
AWS CDKの感想 • 慣れ親しんだプログラミング言語を使って書けるのが良い • パラメータ指定が最低限で済むように抽象化されている ◦ 今回の3つのツールで記述量が一番少なかった ◦ 必要に応じて細かく設定することも可能
• AWS純正なので安心感がある。 • 今回はAWS環境のみなので何の問題も無かったが、もしマルチ クラウドや各種SaaSと連携した環境を構築する場合悩ましくなる
実際に触ってみる 1. AWS CDK 2. Terraform 3. Pulumi
Terraformの概要 Hashicorp社による様々な環境に対応した IaCツール • 2014年公開 • 各種パブリッククラウドだけでなくSaaS製品、仮想環境などのIaC 化に利用可能 • コードは独自のHCLという記法で書くのが基本
◦ CDK for Terraformではプログラミング言語を利用可能 • Terraform Cloudという管理環境をSaaSで提供
Terraformコード例(VPC、オートスケーリンググループ)
Terraformコード例(ACM証明書発行->Cloudfrontでの利用)
Terraformの感想 • 独自の記述方法なので学習コストがかかる ◦ CDK for Terraformである程度クリアできそう • AWS CDKと比べると記述量が多い
◦ 逆に言えばリソースの中身を細かく管理することができる • 今回の環境はAWSオンリーだが、マルチクラウド等複数環境を1 つのコードベースで管理できるのは非常に大きな強み
実際に触ってみる 1. AWS CDK 2. Terraform 3. Pulumi
Pulumiの概要 Pulumi社によるOSSのIaCツール • 2017年公開 • Terraform同様各種パブリッククラウドやSaaS製品に広く対応 ◦ Terraformで提供しているプロバイダもサポート • 各種プログラミング言語でリソース定義を書ける
◦ TypeScript, Python, Java, C#, Go, YAML • Pulumi CloudというSaaSの管理環境を標準で提供 • Pulumi AIという生成AI機能を使用可能
Pulumiコード例(VPC、オートスケーリンググループ)
Pulumiコード例(ACM証明書発行->Cloudfrontでの利用)
Pulumiの感想 • AWS CDK同様プログラミング言語を使って書ける ◦ ただし記述量は多くリソースの中身を細かく管理する形 • Pulumi Cloudは標準でLocalから利用可能 ◦
Terraform CloudはLocalで使う場合トークン設定が必要 • Terraform同様、幅広い環境に対応しているのは明確な強み • Pulumi AIはユニークだが、生成されたコードは細かい調整が必 要 • Local利用時、AWSのMFA認証に対応していないなど、細かい部 分で他ツールよりも機能が不足している印象
3つのツールを使った印象 • AWSしか使わないならAWS CDKが学習コスト含めて一番使いやす い気がする。 • マルチクラウド等が必須であればTerraformかPulumiが良い。 ◦ Terraformは学習コストの問題はあるが、Terraform CDKで解決
できそう。記述の抽象化も対応しているらしい。 ◦ TerraformとPulumiはどちらも必要な機能は整っており、後は細 かな機能の違いでどちらを選択するか決めることになりそう。 結論:何がベターなツールかは状況による
ありがとうございました