0
0

【Terraform/AWS】【入門編1】環境準備

Last updated at Posted at 2024-02-17

はじめに

本記事は、AWS初心者でIaCに挑戦してみたい方向けに導入~コード実行までをまとめた内容となります。
今回は、Windows11環境にTerraformを動作させる準備編となります。

Terraformとは

HashiCorp社が提供しているインフラストラクチャ自動化(IaC)ツールです。
簡単に言うと、コードを実行するだけでインフラ(サーバやネットワーク、ストレージ等)の構築ができるツールです。
AWSではGUI(ブラウザのコンソール画面)で文字を入力したり、ボタンをクリックしながら環境を構築していくことはできます。しかし、Terraformを使えばコード一つ実行するだけで作成ができるため、環境構築の時間が短縮され、オペレーションミスを防ぐことが可能です。
また、コードの型ができてしまえば、コードを使いまわすこともできるため、開発時間は大幅に短縮することができます。

※詳細は公式サイトをご確認ください

開発環境

  • Windows 11 Home
  • メモリ 16GB
  • CPU 4コア

※同環境でない場合、本記事とは異なる動作等が発生する可能性があります。
※本記事はWindows向けとなりますので、Mac、Linux環境には当てはまらない部分があります。

1. AWS環境準備

まずはAWS環境を準備していきます。
必要な設定は下記の通りです。

  • AWSアカウント
  • IAMユーザー
  • AWS CLI
  • アクセスキー

※参考

1-1. AWSアカウント作成

下記を参考にAWSアカウントを作成してください。

1-2. IAMユーザー作成

①作成したアカウントにルートユーザーでログインします。
image.png

image.png

②検索バーに【IAM】と入力して、サービス欄に表示された【IAM】を押下します。
image.png

③左ペイン【▼アクセス管理】>【ユーザ】をクリックして、【ユーザーの作成】を押下します。
image.png

④下記を入力して、【次へ】を押下します。

  1. ユーザー名:任意
  2. AWSマネジメントコンソールへのユーザーアクセスを提供する:☑
  3. IAMユーザーを作成します
  4. コンソールパスワード:任意(本来は自動作成で次回ログイン時変更が望ましい)

image.png
image.png

⑤下記を設定して、【次へ】を押下します。

  1. 許可のオプション:ポリシーを直接アタッチする
  2. 許可ポリシー:AdministratorAccess
    ※組織で利用する場合はグループを作成した方が管理が容易になりますが、個人なので直接アタッチしています

image.png
image.png

⑥設定に問題がないことを確認して、【ユーザーの作成】を押下します。
image.png

⑦作成されると下記のように表示されます。
 記載されているコンソールサインインURLにアクセスします。
image.png

⑧先ほど設定したユーザー名とパスワードを入力して【サインイン】を押下します。
 ※⑦のコンソールサインインURLでアクセスすればアカウントIDは自動で入力されています。
image.png

⑨ログインできればIAMユーザーの作成は完了です。
 ※リージョンが東京以外になっている場合は、東京に変更しておきましょう。
image.png

1-3. アクセスキー作成

Terraformを使うためにはAWSへの認証をするためのアクセスキーが必要になります。
先ほど作成したIAMユーザからアクセスキーを発行しましょう。
※ルートユーザーは使用しないようにしてください。

①AWSコンソールにて、右上のユーザー名をクリック⇒【セキュリティ認証情報】を押下します。
image.png

②下にスクロールして、アクセスキー欄が表示されたら、【アクセスキーを作成】を押下します。
image.png

③下記を設定して、【次へ】をクリックします。

  • コマンドラインインターフェース(CLI)
  • 上記のレコメンデーションを理解し、アクセスキーを作成します。:☑

image.png
image.png

④説明タグ値に任意の値を設定して、【アクセスキーを作成】を押下します。
image.png

⑤アクセスキーとシークレットキーを控えて、【完了】を押下します。
 ※【.csvファイルをダウンロード】を押下すると、アクセスキー情報をCSVファイルで取得できます。
image.png

以上でアクセスキー作成が完了となります。

1-4. アクセスキー情報登録

アクセスキー情報が取得できたら、環境変数を設定します。

①Win+Rキーでファイル名を指定して実行を開き、【sysdm.cpl】と入力して、【OK】を押下します。
image.png

③システムのプロパティ画面が開いたら、上部の【詳細設定】タブを選択し、【環境変数】を押下します。
image.png

④【新規】を押下して、環境変数を設定したら、【OK】を押下します。

変数
AWS_ACCESS_KEY_ID アクセスキー
AWS_SECRET_ACCESS_KEY シークレットキー
AWS_DEFAULT_REGION ap-northeast-1
※本記事では東京リージョンを使用します

以上でAWS認証に使用する環境変数設定は完了です。

1-5. AWS CLIインストール

インストール方法はいくつかありますが、本記事では一番スタンダードなインストーラでのインストール手順とします。

※下記のWindows向けの手順を参考にします。

①下記リンクから、インストーラをダウンロードします。

②インストーラを実行し、ウィザードが表示されたら、【Next】を押下します。
image.png

③【I accept the terms in the License Agreement】にチェックして、【Next】を押下します。
image.png

④【Next】を押下します。
image.png

⑤インストールが完了するまで待機します。
image.png

⑥【Finish】を押下して、ウィザードを閉じます。
image.png

⑦コマンドプロンプトを起動して、下記を実行します。
 ※バージョンが表示されればインストールできています。

【実行コマンド】

aws --version

【実行結果】

aws --version
aws-cli/2.15.19 Python/3.11.6 Windows/10 exe/AMD64 prompt/off

以上でAWS CLIのインストールは完了です。

2. Terraform環境準備

AWS環境準備ができたので、Terraformの環境準備を行います。

※参考

2-1. Terraformインストール

①下記サイトから、64bit版(AMD64)をダウンロードします。

②ダウンロードしたzipファイルを解凍して、terraform.exeファイルを任意のフォルダに格納します。
 ※ホームディレクトリ上(C:\Users\ユーザ名\terraform)等、分かる場所にあれば問題ありません。

2-2. 環境変数設定

パスを指定しなくてもterraformコマンドが実行できるようにします。

①Win+Rキーでファイル名を指定して実行を開き、【sysdm.cpl】と入力して、【OK】を押下します。
image.png

②システムのプロパティ画面が開いたら、上部の【詳細設定】タブを選択し、【環境変数】を押下します。
image.png

③システム環境変数の【Path】を選択して、【編集】を押下します。

④【新規】を押下して、先ほど格納したフォルダを記載して、【OK】を押下します。
 ※ホームディレクトリ上にterraformフォルダを作成した場合は、「C:\Users\ユーザ名\terraform\」を入力

2-3. インストール確認

①PowerShellを起動して、下記コマンドを実行します。
※バージョンが表示されていれば問題ありません。

【実行コマンド】

terraform -version

【実行結果】

PS C:\WINDOWS\system32> terraform -version
Terraform v1.7.3
on windows_amd64

以上でTerraformの環境準備は完了です。

余談

terraformを利用する場合、下記エディタがあると便利です。
コードの編集だけでなく、ターミナルも使えたりするので、作業がしやすくなります。

おわりに

今回はTerraformを動かすための前準備の手順を記載しました。
AWS CLIやTerraformのインストール手順はいくつか方法がありますが、一番スタンダードな方法をご紹介してみました。
AWS環境については、無料枠で登録していますが、一部機能でとある上限までが無料という枠のため、完全無料ではないのでご注意ください。(※詳細は公式サイトでご確認ください。)

次回はterraformコマンドの解説をします。
最後までお読みいただきありがとうございました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0