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
AWSでTerraform超入門
Search
hr0hr57
October 21, 2023
Technology
1
250
AWSでTerraform超入門
2023/10/26の「めぐろLT大会#8」で発表した資料です。
hr0hr57
October 21, 2023
Tweet
Share
More Decks by hr0hr57
See All by hr0hr57
リソースのテレメトリも管理したい!〜CloudWatch Telemetry管理のご紹介〜
nnydtmg
0
170
宇宙最速のランチRecap LT会(開発者ツール&運用監視編)
nnydtmg
2
380
AWS All Certが伝える 新AWS認定試験取得のコツ (Machine Learning Engineer - Associate)
nnydtmg
1
880
AWS認定試験 DEA受験記
nnydtmg
1
570
インフラ担当者がLambdaの設定値を今一度整理してみた
nnydtmg
0
320
金融系・JTCエンジニアこそコミュニティに行け!
nnydtmg
0
200
Terraform v1.6.0で始めるインフラ単体テスト
nnydtmg
2
1.3k
祝初選出!! AWS Community Builderになるには
nnydtmg
0
730
Other Decks in Technology
See All in Technology
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
180
クラウドサービス事業者におけるOSS
tagomoris
4
990
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
380
JEDAI Meetup! Databricks AI/BI概要
databricksjapan
0
310
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
2.3k
Reading Code Is Harder Than Writing It
trishagee
2
120
EDRの検知の仕組みと検知回避について
chayakonanaika
11
4.5k
2/18 Making Security Scale: メルカリが考えるセキュリティ戦略 - Coincheck x LayerX x Mercari
jsonf
0
110
ESXi で仮想化した ARM 環境で LLM を動作させてみるぞ
unnowataru
0
160
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
200
Two Blades, One Journey: Engineering While Managing
ohbarye
3
1.4k
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
27
15k
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Docker and Python
trallard
44
3.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Transcript
AWSでTerraform超入門 2023/10/26(木) めぐろLT会#8 1
自己紹介 • ryosaan (@hr0hr57) • 某金融系SIerでインフラ設計・構築を担当 • 業務ではAWSを利用中 • 所属コミュニティ
◦ AWS Community Builder(Cloud Operations) ◦ Ops-JAWS運営 ◦ CNDT2023運営 ◦ この他クラウド系コミュニティによく出没 • 2022-23 APN ALL AWS Certifications Engineers 2
お断り • 2023/10/1にステマ規制が施行されたため、念の為製品情報が強く出ているページ には下記のアイコンを表示しています。 • 私自身は一切HashiCorp社との繋がりはございません。 PR 3
Terraformとは • HashiCorp社が開発 • マルチクラウドに対応したIaC (Infrastructure as Code) ツール ◦
AWS CDK , AWS CloudFormation , Pulumi , Bicep , Ansible , etc.. • 作成したいリソースをコードとして管理し、数コマンドで環境が構築できる • 宣言型モデルで作りたい環境のあるべき姿を定義 ◦ cf. 命令実行モデル:作成する手順をコード化 • 独自のHCL言語でコードを記述する • 内部的にはGo言語で構成され、内部で各プロバイダのSDKを呼び出すことでリソー スを作成する PR 4
必要な準備 • 実行環境 ◦ コードを実行する環境にインストール https://developer.hashicorp.com/terraform/downloads • 実行コード ◦ .tfファイル
構成情報、プロバイダー情報、変数などを定義する ◦ .tfstateファイル(実行時に自動的に作成される) 作成されたリソース情報が定義されている ◦ (オプション).tfvarsファイル 変数を外出しして管理する ◦ (オプション).outputファイル 他リソースで参照するための値を定義する 5
実際のコード例 • 構成 6
実際のコード例 • 各リソース毎のresourceブロック • 各パラメータはリファレンスを参照 (Terraform AWS Provider) • コメントの記載も可能
• モジュール化やWorkspaceの利用 など、チーム開発にも適応できる • 最短3コマンドで作成できる ◦ terraform init (初回のみ) ◦ terraform plan ◦ terraform apply https://github.com/nnydtmg/terraform-ec2-sample 7
みなさんもぜひIaCに入門してみてください! ご清聴ありがとうございました! 8