AWS Technology terraform

terraformでAWSを作成するには何が必要なのか?

本記事では、

  • terraformでAWSを使用するには何が必要なの?
  • terraformは、どんな環境で実行できるのかな?

と、こういった疑問に答えます。

terraformでAWSを作成する場合、以下2点が必要です!

・terraformを実行する環境
・IAMユーザ(又はIMAロール)

次の項目では、この2点について説明します。

terraformを実行する環境について

Terraformは、いろんなOS(macOS、Window、Linux等)で使用できます。

また、公式からコンテナイメージ(hashicorp/terraform)も出していますね。

今回は、Linux環境でのやり方を調べてみました。

terraformの実行を自動化しないの?

terraformは、GitHub ActionsAWS CodeBuildで自動化して
利用することも可能です。

そのため、CI/CDでAWS環境を構築する際に、terraformが
利用されていたりします。

CI/CD環境の構築はterraform以外の知識も必要になりますよね。

はじめてterraformを使用する際には、「コマンドライン→自動化」の
順番で習熟していく方が混乱せずにすみます。

次に、AWSで必要な設定を説明します。

 

AWS terraformを実行するには?

AWSを操作するにはterraformからAWSへアクセスする必要があります。

AWSへアクセスするには、IAMユーザ(又はIMAロール)が必要です。

IAMロールは、AWSサービス上に環境がないと利用できませんので
今回はIAMユーザー(シークレットアクセスキー)を使用します。

 

AWS IAMユーザー(アクセスキー)を作成する

AWSコンソールにサインインして、IAMユーザを作成します。

公式手順「AWSアカウントでのIAMユーザーの作成(コンソール)
を参考にIAMユーザを作成します。

※注意
・アクセス許可の種類は[Programmatic access (プログラムによるアクセス)]を選択
・ポリシーは、「既存のポリシーを直接アタッチします」で「AdministratorAccess」を選択
・ユーザ作成後の画面で表示される「アクセスキーID」「シークレットアクセスキー」を
メモ又は、CSVファイルをダウンロードしてください。

今回設定したポリシー「AdministratorAccess」はAWSで権限が強いポリシーなので
「アクセスキーID」「シークレットアクセスキー」が漏れてしまうと大変です。

「アクセスキーID」「シークレットアクセスキー」は厳重に管理してください。

なお、ポリシー設計はセキュリティ上とても重要ですが、最初から制限すると
エラーが多発して、terraformでの作業が進みません。

まずは、この権限を使用しAWSリソースの作成を行い
terraformになれたきたら、ポリシー権限を検討するのがいいでしょう。

terraformの実行環境でAWS CLIを利用できるようにする

Linux環境でterraformを使用してAWSサービスを作成するには
以下2点の対応が必要です。

・AWS CLIのインストール
・AWS CLIの初期設定

次の項目からこの2点を説明します。

AWS CLIをインストールする

公式手順の「LinuxでのAWS CLIバージョン2のインストール、更新、アンインストール」でLinux環境へAWS CLIインストールします。

AWS CLIの初期設定

AWS CLIの初期設定を公式手順の「aws configureを使用したクイック設定」で行います。

設定値は以下です。

AWS Access Key ID [None]: 作成したiamユーザ名「アクセスキーID」「シークレットアクセスキー」を入力
AWS Secret Access Key [None]:「シークレットアクセスキー」を入力
Default region name [None]: 環境を作成したいリージョン
Default output format [None]: json ※このままでOK

別途terraformのコードでリージョン設定しますが、AWS CLIを使用して
terraformで作成したリソース確認も行うので、同じリージョンにした方が便利です。

リージョンエンドポイント

terraformのインストール

terraformのインストール方法はこちらの記事を参考にしてください。

 

まとめ

今回説明した内容は、

  • terraformでAWSを作成するには実行環境を選択する
  • IAMユーザ作成し「アクセスキーID」「シークレットアクセスキー」をダウンロード
  • 実行環境にAWS CLIをインストールし初期設定する
  • terraformのインストール

になります。

これでterraformにてAWS環境を作成できる準備が整いました。
次はterraformを使ってAWSリソースを作成してみましょう!

人気記事

1

Kubernetes kubectl rollout コマンドでdeploymentをロールバックしてみる 概要 kubectl rollout コマンドでデプロイ履歴を確認してロールバックするやり方 ...

2

  terraformのバージョン管理どうすればいいのか? terraformの複数バージョンを簡単に動かしたい terraformのインストール方法が分からない と、疑問を抱えている人の疑 ...

3

本記事では どんな環境にterraformをインストールできるの? terraformのインストールどうしたらいいの? terraformのどのバージョンをインストールすればいいの? と、困っている人 ...

4

Kubernetes kubectl version コマンドでバージョンを調べてみる 概要 kubectl version は、Kubernetes の Client、Serverのバージョンを確認 ...

-AWS, Technology, terraform