HashiCorp Terraform & Vault Enterprise 勉強会 in 金沢 ←に発表つきで参加してきた。

HashiCorp 製品について知らなかったものも含め話を聴けたし、事例の紹介もあって参考になった。

メモした内容など

  • Terraform Enterprise
    • policy を設定して従来のワークフローに対して制限を設けることができる(instance数とかregion指定とか)
    • Web の GUIがある
    • ソースコードはVCSから取得可能
    • 環境変数をWeb上から設定でき、その値は裏でVaultが管理している
    • commit/push 等のhookからapplyが実行され、設定によって最終実行までする or 最後の実行は手でを選べる
  • Vault
    • インターフェースとしてGUI, CLI, API があって、使い方によっては Encryption as a service として利用できる
    • 時間制限ありの動的シークレットを作成できる
    • Enterprise は Adobe がバックエンドでかなり使っているらしい
  • Nomad
    • そういうデプロイツールがあるのを初めて知った
  • その他
    • HashiCorp 製品のドキュメントの Learn からアクセスするのがオススメらしい
    • HashiCorp 製品開発時はまずドキュメントから作成するらしい
    • Ruby を使っている部分もある

個人的には Vault よくわかんないなーと思っていたけど、話聴いてちょっと興味でてきたので Learn のドキュメントを読もうかなと思っている。

発表について

発表の方は、Terraform を選んだ理由や、定義を作っていく際に意識していることを話ししたつもり。

三行でいうと、↓のような感じ。

  • 実行前にdiffがみえて、作ったものが簡単に削除できる、読みやすいDSLが気に入っている
  • 秘匿情報持たないようにDataSourceやRondomをうまく使う、削除するリソース単位にディレクトリ分けるを意識している
  • 定義作成の負荷を下げるためベタに書いて、後で diff みつつリファクタするのがよさそう

時間におさまったのでよかった。パネルディスカッションでも発言できたので、なんとか役目は果たしたかな。