## 目的
社内利用システムに関して、誰が何のリソースをどれだけの種類AWS上で構築・運用されているのかを可視化したい
## 技術選定
入社当時、本システムの構築に関わったAWS環境に詳しいエンジニアが退職しており、詳しい情報を得られませんでした。そのため、私自身のTerraformの経験を元に一から環境構築に取り組みました。
## リソース調査
複数アカウントにて利用されているリソースを一から調査し、リソース全てをリスト化・作業タスク化しました。
- アカウント数:2アカウント
- リソース数:約2,500リソース
## Terraform及びGitHub Actionsの整備
TerraformでのIaC化に必要不可欠なGitHub ActionsでのCI/CD構築も一から行いました。
- 既存リソースを管理するTerraformの構成検討
- GitHub ActionsによるCI/CDの構築
- ローカル環境でTerraformのplanを実行できるようにMakefileの用意
## チームへの教育
Terraformの経験があるメンバーがチームに居なかった為、整備・構築したTerraformの環境を利用して教育を行いました。
具体的には以下のように進めました。
- Terraform環境の詳細説明
- Terraformのコードの書き方レクチャー
- 既存AWSリソースのimportレクチャー
- レビュー方法レクチャー
## 結果
- 未管理だったAWSリソース全てをTerraform管理下にし、リソースを可視化することができました。
- チーム全員が初心者状態からTerraformを習得する事で、AWS関係作業の属人化を防ぎ、作業の効率化を行えました。
## その他
この内容に関して、アドベントカレンダーに記事を掲載しました。
https://hikarun-sre.hatenablog.jp/entry/2022/12/08