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
みゃっちーLT資料.pdf
Search
みゃっちー
September 28, 2023
72
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
みゃっちーLT資料.pdf
みゃっちー
September 28, 2023
More Decks by みゃっちー
See All by みゃっちー
JAWSUG-富山#1 LT 富山でAWSを学ぶ
fujiihiroki
0
40
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
[SF Ruby Conf 2025] Rails X
palkan
3
1.4k
Ethics towards AI in product and experience design
skipperchong
2
380
A Soul's Torment
seathinner
8
3.6k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
410
ラッコキーワード サービス紹介資料
rakko
1
4.9M
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
580
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
610
Heart Work Chapter 1 - Part 1
lfama
PRO
10
36k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Amusing Abliteration
ianozsvald
1
310
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
320
Transcript
[デベキャンプラクティスLT大会] Terraformを使ってみた! ~インストールからTerraform cloudと GitHubを連携したCI/CD環境の構築~ 藤井広輝 2023/09/25
自己紹介 名前 藤井 広輝(みゃっちー) 所属 北陸職業能力開発大学校 生産電子情報システム技術科4年生 開発 ベアリング画像処理外観検査システム 仮想ラインを使った無人搬送車
アジェンダ • IaCのメリットデメリット • 導入までの流れ • モジュールとは • ディレクトリ構造 •
Terrafrom cloud とは • Terrafrom cloudの機能
IaCとは? システムインフラ構築をコードを用いて行うこと。 どんないいことがある? ・ヒューマンエラーの防止 ・一貫性のある環境構築が可能 ・保守性の向上 ・環境構築の手間、時間の削減
デメリットは? ・学習コストが高い ・構成管理ツールの導入や構築に時間がかかる ・コード化に時間がかかる Terraform使い始めの僕→
使用ツール ・Windows11 Home ・Visual Studio Code 1.82.2 ・Terraform v1.5.4 ・git
version 2.39.2.windows.1
Terraform環境準備 1 . IaC用のIAMユーザを作成し、アクセスキーとシークレットア クセスキーを環境変数に設定。 2. windows用の無料オープンソースパッケージツールchocolateyを インストール ※公式サイトのコマンドを管理者権限のパワーシェルで実行してダウンロード https://chocolatey.org/install
・ダウンロード “choco install terraform” ・フォルダを作成してその中にmain.tfを作成 ・バイナリファイル準備 “terraform init” ・リソースの実行計画 “terraform
Plan” ・展開 “terraform apply” ・削除 “terraform destroy” Terraform環境準備 これだけで展開削除はできる!簡単!
モジュールとは!? • 設定値を渡すと構築を行ってくれる関数みたいなもの! VPCモジュール ・リージョン ・名前 ・CIDR ・PublicSubnetの数 ・PublicSubnetの名前 ・PrivateSubnetの数
・PrivateSubnetの名前 ・AZ …etc ・vpcID ・PublicSubnetID ・PrivateSubnetID …etc 入力! 構築! 出力
モジュール自分でも作れるけど…
モジュールのフォルダ • variables.tf(入力) ・output.tf(出力)
VPCモジュール 複数のモジュールを組み合わせ RDSモジュール EC2モジュール サブネットIDなど SGモジュール サブネットモ ジュール VPCスタック データベーススタック
EC2スタック
・全スタックの展開状態が一目でわかる! ・スタックごとの変更履歴がGitHubと連携して一目でわかる! ・Githubのリポジトリのコードに変更があると、それぞれのス タックにどのような変更があるかを自動で検査する! ・スタックから構築した環境をマネジメントコンソールなどから 変更した場合に差分をチェックしてすぐ元の環境に戻せる! ・スタックごとに環境を削除することができる! Terraform cloud
全スタックの展開状態が一目でわかる!
スタックごとの変更履歴がGitHubと 連携して一目でわかる!
GitHubのリポジトリのコードに変更があると、それぞれの スタックにどのような変更があるかを自動で検査する!
スタックから構築した環境をマネジメントコンソール などから変更した場合に差分をチェックしてすぐ元の 環境に戻せる! ※スタックでt2.microのEC2インスタンスを構築した後に マネジメントコンソールからt3.microに変更
スタックごとに環境を 削除することができる!
Terraformまとめ •学習コストが高い!!!!! • 独自言語をデメリットに挙げているが自分はデメリットに感じ なかった • ディレクトリ構造が人によってバラバラ! • 積極的に使っていきたい
ご清聴ありがとうございました!