🚀

Kubuntu24.04でterraformのインストールをするまで

2024/05/02に公開

Terraformは、HashiCorpによって作成されたInfrastructure as Codeソフトウェアツールである。利用者はHashiCorp Configuration Language(HCL)として知られている宣言型構成言語か、任意で利用できるJSONを使用してデータセンターインフラストラクチャーを定義及び提供する
wiki:https://ja.wikipedia.org/wiki/Terraform

準備

  • AWS CLIのインストール
  • AWSのアカウント登録
  • コンフィグとプロファイルの設定
  • terraform のインストール

環境

OS:Kubuntu

AWS CLIのインストール

Windows

Windows用のAWS CLI MSIインストーラをダウンロード

Linux x86

# download installer
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"

# Unzip the zip file using the unzip command.
unzip awscliv2.zip

# running installer
sudo ./aws/install

# check installation
aws --version
 > aws-cli/2.15.40 Python/3.11.8 Linux/6.8.0-31-generic exe/x86_64.ubuntu.24 prompt/off

IAMユーザーの作成

ユーザーの作成

ユーザー名の入力

グループを作成

許可ポリシーはAdministratorAccess

アクセスキーを作成

作成したユーザーグループにチェックを入れて次へ。

ユーザー一覧から作成したユーザーの詳細画面に進み、「アクセスキーを作成」をクリック

「コマンドラインインターフェース」「上記のレコメンデーションを理解し、アクセスキーを作成します」を選択

アクセスキーとシークレットアクセスキーをメモ
※CSVファイルダウンロードもあり

コンフィグとプロファイルを設定する

一つのアカウントであれば、

aws configure

で対話型で
・アクセスキー
・シークレットアクセスキー
・リージョン
・アウトプットフォーマット
を設定可能。

複数アカウントの想定

※間違って別の認証情報を使うと大変なので気をつけること。

ホーム直下の.awsディレクトリにある認証情報は.configファイルと.creadincailsファイルに記載します。

.aws

~
├── config
└── credentials

例えば、

config

[profile example01]
region = ap-northeast-1
output = json

[profile example02]
region = ap-northeast-1
output = json

credentials

[example01]
aws_access_key_id = アクセスキー
aws_secret_access_key = シークレットアクセスキー

[example02]
aws_access_key_id = アクセスキー
aws_secret_access_key = シークレットアクセスキー

例えば、コマンドに --profile 使いたいプロファイル名 をつけてどれを使うか指定する。

aws コマンド --profile example01

WS CLIを使用して特定のプロファイルが正しく機能しているかを確認するために、そのプロファイルに関連付けられたAWS Identity and Access Management(IAM)ユーザーの情報を表示するコマンドを使うことができます。これにはaws sts get-caller-identityコマンドが便利です。このコマンドは、現在の認証情報によって識別されるIAMユーザー、IAMロール、またはAWSアカウントの詳細を提供します。

 aws sts get-caller-identity --profile example01

Terraformのインストール

https://developer.hashicorp.com/terraform/install

Ubuntu/Debianの場合:

wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install terraform

※2024-05-02時点では、Ubuntu24.04にHashiCorpのリポジトリが対応していないようなので、
$(lsb_release -cs)のところをjammyを入れたら無事にインストールできます。
・Ubuntu 22.04 (jammy)
・Ubuntu 24.04 (noble)
ファイルの場所

sudo vim /etc/apt/sources.list.d/hashicorp.list

terraformのバージョン確認

❯ terraform -version                            

Terraform v1.8.2
on linux_amd64

Discussion