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
アトランティスに行ってみよう
Search
Kaoru
January 15, 2024
Programming
260
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
アトランティスに行ってみよう
Kaoru
January 15, 2024
More Decks by Kaoru
See All by Kaoru
古今東西SRE
okaru
2
290
Qiita Bash アドカレ LT #1
okaru
0
300
Mobile App with AI Meetup #1
okaru
0
150
JAWS-UG SRE支部 #14 LT
okaru
0
290
ゆるSRE #11 LT
okaru
1
1.1k
AI Engineering Summit Pre Event LT #10
okaru
2
850
AIエージェント実践集中コース LT
okaru
1
320
技術選定を突き詰める 懇親会LT
okaru
2
1.5k
Amazon S3 Tables + Amazon Athena / Apache Iceberg
okaru
2
560
Other Decks in Programming
See All in Programming
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
17k
phperだってパンチカードでコーディングしたい
o0h
PRO
0
340
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.5k
すこし踏み込む CancellationToken
htkym
2
1.7k
AmebaブログはKMPから卒業します
kmars0605
0
190
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
300
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
180
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
5.2k
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
5
5.1k
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
0
470
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
350
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
590
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
5.2k
How GitHub (no longer) Works
holman
316
150k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
370
Paper Plane
katiecoart
PRO
5
54k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
590
Become a Pro
speakerdeck
PRO
31
6.3k
Building an army of robots
kneath
307
47k
Believing is Seeing
oripsolob
1
240
Speed Design
sergeychernyshev
33
2.2k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
360
Unsuck your backbone
ammeep
672
58k
Documentation Writing (for coders)
carmenintech
77
5.6k
Transcript
アトランティスへ行ってみよう ゆるSRE勉強会#3 2023/12/8
©2023 Voicy, Inc. 自己紹介 名前:織田 薫(かおる) 会社:株式会社Voicy 職業:SRE 趣味:ゴスペル・ぺんぎん 特技:Ask
me
©2023 Voicy, Inc.
©2023 Voicy, Inc. 課題 Voicy の Terraform まわりの課題として 下記のようなことがありました。 ・リファクタしたいよね
・CI/CDに載せたいよね ・etc…
©2023 Voicy, Inc. なぜリファクタ? Q.なぜリファクタが必要なのか? A.色々な理由がありますが・・・ . └── dev_stage_prod ├──
main.tf ├── main.tf_dev ├── main.tf_stage ├── output.tf ├── provider.tf ├── variable.tf └── vpc.tf
©2023 Voicy, Inc. リファクタの方針 リファクタって言っても色々あるよね • ディレクトリ構造の利用 • ワークスペースの使用 •
変数ファイルの活用 • モジュールの使用 • 環境変数の使用 • 分岐戦略の採用
©2023 Voicy, Inc. 方針を決めた Voicyの場合は、下記のような形にしました shared module にはするが、Symlinkにはしない . ├──
dev │ ├── main.tf │ ├── provider.tf │ └── variable.tf ├── prod │ ├── main.tf │ ├── provider.tf │ └── variable.tf ├── shared │ ├── iam.tf │ ├── network.tf │ ├── output.tf │ └── variable.tf └── stage ├── main.tf ├── provider.tf └── variable.tf
©2023 Voicy, Inc. ひたすらやる とりあえず、ひたすらリファクタしたのでした・・・ まぁ、ドリフトとか、微妙なバージョン違いとか色々・・・
©2023 Voicy, Inc. CI/CDはどうするか TerraformをCI/CDに乗せるにはどうすればよいか?
©2023 Voicy, Inc. 未知の大陸アトランティス そうだ、Atlantisへ(で)行ってみよう ・プルリクエスト駆動のワークフロー: PRで自動実行できる ・自動化されたプランと適用:plan/apply の自動実行 ・チームのコラボレーションと透明性:チーム内でレビューできる
・セキュリティとアクセス制御:実行承認 ・状態管理の簡素化:ローカルで状態管理する必要がない ・柔軟性と拡張性:様々なカスタマイズが可能 ・履歴の追跡と監査:証跡が取れる
©2023 Voicy, Inc. Terraformのバージョン問題 AtlantisでAPIキーなどの秘密情報が出てしまうのを防ぐため、 sensitive 属性をつけたい、となりました。 ・Terraformのバージョン古い・・・ ・sensitive 使うには、v0.14
以上必要 ・v0.14 ではCLIでは隠してくれるが、tfstate 上は隠してくれない ・v0.15 まで上げてなんとかなった
©2023 Voicy, Inc. ひたすらバージョンアップ とりあえず、ひたすらアゲイン・・・
©2023 Voicy, Inc. 今回できたこと Terraformリファクタ、Atlantis導入で実現したこと ・main.tf コピらなくていい ・環境が明確になった ・ローカルで terraform
叩かなくてよくなった ・github でPRすると、github actions が動いて、fmt/lint が動く ・atlantis plan/apply を叩くことで証跡残る
©2023 Voicy, Inc. こんな感じになりました PR plan/apply
©2023 Voicy, Inc. 今回できてないこと 一応、できてないことも・・・ ・Trraform のバージョンを最新化したい(stacksどうやろ?) ・PRしたら、plan/apply まで自動でやりたい(ちょっと怖い) ・fmt/lint
はまだまだなので、つぶしたい
©2023 Voicy, Inc. We’re hiring 絶賛募集してます!