メニューを閉じる

テクノデジタルグループ

メニューを開く

2021.05.17

インフラ

【Terraform入門】Windows10+WSL2にTerraformを入れて動かす

【はじめに】

JTです。遅ればせながらTerraform(https://www.terraform.io/)によるインフラ構成管理について勉強をはじめました。
この記事では、最初の一歩として、Windows10のWLS2にVisualStudioCodeで入ってterraformコマンドを実行できるところまで進めます。

Win10+WSL2環境の構築方法は

https://www.tcmobile.jp/dev_blog/devtool/%ef%bc%88windows10%ef%bc%89wsl2-vscode-docker-%e9%96%8b%e7%99%ba%e7%92%b0%e5%a2%83%ef%bc%882020%e5%b9%b4%e6%9c%ab%e7%89%88%ef%bc%89/

を参考にして、必要に応じて行っておいてください

【Terraformとは?】

Terraformは、HashiCorpによって作成されたコードソフトウェアツールとしてのオープンソースインフラストラクチャです。ユーザーは、HashiCorp構成言語またはオプションでJSONと呼ばれる宣言型構成言語を使用して、データセンターインフラストラクチャを定義および提供します。(Wikipedia)
所謂IaC(Infrastructure as Code)であり、インフラ構築をコードで記述し、このコードをバージョン管理することでインフラの構成変更履歴を追跡できるようになります。
※Terraformの成り立ちおよび概要についてはこちらの記事が大変分かり易いので是非参照ください。

【Terraformのインストール】

ざっと調べたところ、以下の2パターンがあるようでした。

(その1:シンプル)Terraformのバイナリをhashicorpから取得して配置

例)
cd /usr/local/src/
wget https://releases.hashicorp.com/terraform/0.15.1/terraform_0.15.1_linux_amd64.zip
unzip terraform_0.15.1_linux_amd64.zip -d /usr/local/bin/
terraform -v

(その2:現実的)Terraformのバージョンマネージャ「tfenv」をインストールして管理

terraformはバージョンごとで挙動が大きく異なった過去があるようで、複数バージョンを扱う必要があるとのこと。
tfenvがあればterraformのバージョン切り替えが簡単にできるので、自分はこちらでいきます。

# githubからcloneしてパスを通します。
git clone https://github.com/tfutils/tfenv.git ~/.tfenv
echo 'export PATH="$HOME/.tfenv/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profile

tfenv --version
# tfenv 2.2.1

# インストールできるバージョンの一覧
tfenv list-remote

# 最新バージョンを指定してインストール
tfenv install 0.15.1

# バージョン切り替え
tfenv use 0.15.1
terraform -v

# 今回使うバージョンを追加
tfenv install 0.12.24
tfenv use 0.12.24
terraform -v


# 確認
tfenv list
  0.15.1
* 0.12.24 (set by /root/.tfenv/version)

次回はtfファイルで実際にリソースを構築していきます。


【記事への感想募集中!】

記事への感想・ご意見がありましたら、ぜひフォームからご投稿ください!
  • こんな記事が読んでみたい、こんなことが知りたい、調べてほしい!という意見も募集中!
  • いただいた感想は今後の記事に活かしたいと思います!

感想フォームはこちら


【テクノデジタルではエンジニア/デザイナーを積極採用中です!】

下記項目に1つでも当てはまる方は是非、詳細ページへ!
  • 自分でアプリを作ってみたい
  • ITで世の中にワクワクを生み出したい
  • 使いやすさ、デザインにこだわったWebサイトを開発したい

採用情報の詳細はこちら


Qangaroo(カンガルー)

  • 徹底した見やすさと優れた操作性で、テストの「見える化」を実現。
  • テストの進捗が見える。開発がスマートに進む。
  • クラウド型テスト管理ツール『Qangaroo(カンガルー)』

【テクノデジタルのインフラサービス】

当社では、多数のサービスの開発実績を活かし、
アプリケーションのパフォーマンスを最大限に引き出すインフラ設計・構築を行います。
AWSなどへのクラウド移行、既存インフラの監視・運用保守も承りますので、ぜひご相談ください。
詳細は下記ページをご覧ください。

https://www.tcdigital.jp/infrastructure/

最近の記事