skillup

技術ブログ

サーバー・ネットワーク

Terraform入門(シンプルなEC2の構築)

投稿日:

前回の記事でcloudformationとterraformの比較や紹介をしましたが、terraformがとっつきやすかったため、簡単なサンプルとメモを。

インストール

実行手順

基本知識

プロバイダー

使用されるサービスのことです。今回だとAWSやそのアカウント自体のことです。他にはAzureなど。

プロバイダーは下記のようなファイルや記述をいれておくか、awscliをインストールしておけば後述する terraform init コマンドで読み込ませることができます。

変数の値の設定

variable 〜で変数設定が可能です。

リソースの設定

実際に設定するサービスをresourceと定義します。

resource "aws_instance" "web"{} のようにリソースの種類、リソース名で定義をします。

具体的なリソースの種類の名前は公式ドキュメントを参考に。

https://www.terraform.io/docs/providers/aws/index.html

コマンド

terraform init

上記コマンドでawsのアカウントを読み込ませることが可能です。

そのあと下記のようにインフラのコードを記述し、 terraform plan で実行準備を行い、 terraform apply で反映させればOKです。

terraform plan

構文チェックと新しく追加された実行計画を表示します。

具体的には下記のような表示が出力されます。

terraform apply

実際に環境を構築します。上記だとAWS上でEC2のインスタンスを構築します。コンソール画面を見てますと実際にEC2が立ち上がるのがわかると思います。

他に terraform show 現段階のインフラ環境の確認や terraform destroy 環境の破壊などもあります。

次回以降さらなるVPCなどの環境構築などを書いていこうと思います。

参考リンク

Terraformでawsのec2インスタンスを立ち上げる

AWSでTerraformに入門

https://github.com/umanari145/IaC

-サーバー・ネットワーク
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

GitLabのWebhook

前回の記事でGitLabのCI/CDを特集しましたが、実は今回やりたかったのはそこまで大掛かりなCIではなく、プッシュ時にオートマージ、オートデプロイなどでしたので、もっと簡単な仕組みでできます。 例 …

no image

SQSのキュー登録とworkコマンドに関して

SQSでのキューの登録に関して以前やりましたが、再度扱うことがあったので、調査を。 リンク SQSについて Queueの登録と実際の処理に関して Contents1 キューの登録2 キューの監視 キュ …

no image

AWSセキュリティグループについて

AWSのセキュリティグループに関して。 AWSには標準でセキュリティグループという概念があり、それぞれのインスタンスに対して、アクセスするパケットをポート番号で制御でき、この定義をセキュリティグループ …

no image

vimの基本的な使い方 設定ファイル、基本コマンド他

もう4年ぐらいの付き合いになる憎らしくもかわいいエディタvi(vim)について。 雑誌に特集があったのでこれを機にまとめてみました。シリーズものになるかも・・・ Contents1 Vi(vim)とは …

no image

Vagarant+Eclipse(Perl)での作業環境構築

現在の案件でPerlの改修があるんですが、windowsだとモジュールの依存関係でうまくコンパイルできなかったりといろいろとトラブルが起こったんで、今はやりの仮想環境でやることに。 まだ完ぺきではない …

アーカイブ