kbigwheelのプログラミング・ソフトウェア技術系ブログ

プログラミング・ソフトウェア技術系のことを書きます

Terraform meetup tokyo#3 参加してきました

お疲れさまです、2019/11/01から株式会社Speeeの方でSREとして飯を食わせていただいています! 新しい会社ではインフラストラクチャの構成管理がTerraformということで、Terraformについていろいろ勉強していくうちに流れでTerraform meetup tokyo#3 - connpassにてLT発表することになりました1

本記事では各発表の僕の感想を書いていこうと思います。

Journey to Terraform Enterprise

Terraform EnterpriseはTerraformのノウハウへ料金を払っていると思っている。Terraformの専門家を1人雇うよりこちらのほうが経済的

という趣旨の発言や、Root Module(tfstate)を統合していった、それによる不便は特に感じてないなどが印象に残っています。

terraform と cdkの違い / oracle

docs.google.com

cdkとの比較。cdkは最近流れがきているんじゃないかとも感じています。

前回のアンケート結果でCI/CDしてるのが3割しかなかったので、初心者向けに手軽にCI/CDできるよってお話 / dehio3

Github Actions + Terraformの入門のような感じ。弊社でもTerraform CIは回せていないのでこれを参考に導入させていただきます!

Deep Dive HCL / Keke

Go言語とtfの相互変換性について。tfコンフィギュレーションの自動生成の方法。思った以上に簡単でした。 モジュール以上の共通化・柔軟性を実現したいときはこれを使う感じ?

インフラもオブジェクト図を描いてドメイン分割してからコーディングに進もう / Toshihiko Nozaki

個人的にはこの発表がMVPでした。 話の進め方が上手くて聞いていて非常に理解しやすかったです。 今までインフラを表現するのにシステム構成図で満足していたんですがUMLを使うのもありかなと思いました。 今までそういった発想がなかったためまだその価値も理解できていない感じ。

あとたしかこの発表だと思うのですが1つのサービスでも各要素をライフサイクルごとにRoot Module(tfstate)へ分割しているとおっしゃっていたのは面白かったです。たしかによくVPC / subnetなどネットワークレベルとEC2/ECSなどインスタンス・サービスでRoot moduleを分割するのですが、それを言語化するとライフサイクルごとと言えるのかもしれません。

tfstate分割粒度の種類とそのメリット・デメリットを考えてみた / k_bigwheel

拙作ですが私の発表です。 後のworld cafeで話を聞いてみると2-Bパターンが比較的多くworkspace利用者が若干少ないようでしたがどのパターンもそれぞれ一定数の利用者がいるようでした。 また各々がよいと考えている手法もバラバラです。

突撃!隣のTerraform

これがある意味最もインパクトのある発表でした。 メルカリの社内共通モジュールを作ってQAシェルでYes/Noを選択していくと各チーム向けのマイクロサービスtfコンフィギュレーションセットができるという構成は強いと感じました。 そのまま真似できるものではないものの、社内モジュールの作成・共有の必要性を強く感じました。


このあとのworld cafeも非常に良かったのですが割愛。 あの進め方は懇親会の方式として非常に良いと思いますので他のイベントでも広がっていったらいいなと思います。


  1. ちなみに流れというのは一般参加枠がいっぱいでLT枠が余っていたというのが理由です