登壇情報
日時
2023年9月14日(木)11:05 - 11:20 ROOM1
タイトル
Terraformを抽象化し環境構築の工数を削減する取り組みについて
内容
クルマのサブスク「KINTO」を支えるKINTOテクノロジーズでは、AWSを中心にシステムインフラを全てTerraformで管理しています。 プロジェクトが次々と立ち上がる成長期ゆえに、環境をいかに早く提供するかという課題がありました。また、その後の運用まで考慮する必要がありました。
それらの課題に対応するため、resourceブロックを意識することなく、変数(locals)のみの定義で環境構築が行うことができる仕組みを用意し、現在運用しています。
初期構築だけではなく運用中の設定値の変更、リソースの追加、将来追加されるであろうサービスへの対応、マルチクラウドまで考慮し拡張性を持たせた仕組みになっています。
環境初期構築はインフラの設計さえ済んでいればコードの記載~作成までわずか30分程度で実施することができます。
また、このようにコードを共通化していることのメリットとして複数ある環境(dev/stg/prod)の管理も容易になっています。環境差異の対応についても変数(locals)でコントロールできるよう設計しています。
この仕組みをKINTOテクノロジーズでは「pack」と呼んでおり、今回はその「pack」のディレクトリ構造など含めた裏側と運用方法についてご紹介いたします。また、現在抱えている課題とそれを解決するためにTerraform Cloudを検討している件についてもお伝えいたします。