1
1

More than 1 year has passed since last update.

Terraform×AWS 環境設定編

Posted at

はじめに

こんにちは!
RedPullといいます。

今までアウトプットをほぼ全くしておらず、危機感を覚えたので、モチベーションのアップも兼ねて、現在学習している内容を投稿していきたいと思います。

今回は「Terraform」についてです。


対象者

  • AWSの設定が毎度手動でやるのが面倒と感じてきた方
  • Terraformって何?と思った方

Terraformとは?

Terraformは、Infrastructure_as_Code(IaC)ツールであり、HashiCorp社より提供されています。
これを使うことで、クラウドサービスによるリソース(サーバーなど)の設定・構築を自動で行うことが可能になるようです。

僕は業務で簡易的にAWSを触っているのですが、その設定を毎度スクラップ&ビルドしなければいけないのが億劫になり、こちらの技術に興味を持ちました。

今回はまだ学習中なので、
他のPCでも環境を再現できるように、まずは導入の手順を備忘録として残しておこうと思います。

初回設定

今回の学習では、AWSでの利用を前提に行っていきます。
また、AWSのアカウントは作成済みであるものとします。

▶AWS CLIインストール

AWS各リソースに対して、コマンドライン経由でアクセスするためのものです。
→公式から
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/getting-started-install.html

▶Terraformインストール

  • tfenvインストール
  • Terraformインストール

◇手順

まずtfenvをインストールする(nodeにおけるnvmみたいなもので、Terraformのバージョンを指定してインストールできます。)
https://github.com/tfutils/tfenv

  1. まずgitbashで以下を叩く
    $ cd ~
    $ git clone https://github.com/tfutils/tfenv.git .tfenv
    
  2. Cユーザー直下に.bashrcを作成
  3. ↑の中に以下
    export PATH=$PATH:/C/Users/[user]/.tfenv/bin
    
  4. Terraformインストール
    $ tfenv list-remote
    $ tfenv install 0.14.6 
    $ tfenv use 0.14.6 
    
  5. 確認
    $ terraform version
    

◇IAMアカウントの用意

手順は以下の通りです。

  1. IAMユーザーの作成
    今回は、Terraform用ユーザーを別に用意する(2つ用意)
    また、「ポリシーのアタッチ」でAdministrator_Accessを付与しておく
  2. アクセスキーの設定
    →ここのアクセスキーIDとパスワードは、一度閉じたら再表示できないので、かならずメモに残しておく
    また、.csv形式で情報をダウンロードできますので、こちらもできればしておきたい
  3. 認証情報を登録
    $ aws configure
    AWS Access Key ID [None]:各自
    AWS Secret Access Key [None]:各自
    Default region name [None]: ap-notheast-1
    Default output format [None]: json
    $ aws configure --profile [プロファイル名] 
    
  4. 設定できているか確認する
    C:\Users\[user].awsフォルダが生成されているので、ここのcredentialsの中身を確認し、登録した情報が書いてあればOK。
[default]
aws_access_key_id = 各自
aws_secret_access_key = 各自
[terraform]
aws_access_key_id = 各自
aws_secret_access_key = 各自

おわりに

Terraformの設定方法についてまとめました。
適宜必要な情報を追記していきたいと思います。


1
1
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
1
1