【学習記録】Terraformを使ってみた

IT
  • Terraformを仕事で使う機会をもらったので、事前学習
  • とりあえず、Terraformを動かしてみることを優先した
    • そのため、実際に作ったリソースはシンプル(S3バケット1つ)
  • 使っていく際に起こりそうなユースケースを考えて確認してみた
  • 実施したことを確認したこと単位で記事にmemoしたので、まとめ

実施したこと

※それぞれのリンクで実施したことの詳細を記載しています

  • Terraformのインストール
    • 開発環境にterraformをinstallするところからスタート
    • install方法を確認した
  • 【Terraform】S3のdeploy
    • まず、terraformを使ってリソースを作成する流れを確認した
    • シンプルなS3バケット1つ作成
  • 【Terraform】既存S3の取り込み
    • Terraformから作成するのではなく、今あるリソースをTerraform化する方法を確認
  • 【Terraform】TF管理下S3の再取り込み
    • Terraform化して管理しているリソースを手動で変更した場合、変更をTerraformに反映させる方法を確認した
    • 取り込みの時とほとんど同じ流れ
  • 【Terraform】importブロックを試してみた
    • Terraformに取り込む作業が不便に感じた
    • 根幹の部分を手作業で実施する必要があった
    • 調べたら、不便に感じた部分を自動的に実施する機能が実験的にリリースされていることが分かったので、試してみた

memo

  • 開発の流れはTerraform先行の方がスムーズに感じる
    • リソースを手作業で作成した後に取り込むのは大変
    • Terraform化することが前提なら、tfファイルを先に作成して、それをデプロイして開発を進める方がスムーズ
  • 例えば試作段階からの開発でも、試作完了した段階でTerraformができている状態になるので、ステージの移行も楽になる
    • 変数化やモジュール化はあらかじめしておくよう、気をつけたい
  • 今回は使いそうなケースをシンプルな構成で実施した
    • 変数化やモジュール化など、実践で使用する上で必要なところを今後意識して使ってみたい
  • チームのプロジェクトで使用する上ではTerraform Cloudが非常に有効だと感じた
    • gitとの連携やtfstateファイルの管理など、チームでの管理上コンフリクトが起こりやすいポイントが多々ある
    • Terraform Cloudを使用すると、それらのポイントが解消できそう
    • Terraform Cloudでの開発の流れも確認しておきたい

コメント

タイトルとURLをコピーしました