何かやってみるブログ

興味をもったことに関して書いています。技術系の記事が多いです。

TerraformでEC2を動かしてみた

最近業務でインフラにさわる機会が増えたのですが、あまりにも面倒くさい作業が多く辛くなるケースが多いです。 そんな中、もっと楽にできたらいいのになぁと調べてみたらInfrastructure as CodeとかChefとかAnsibleとかTerraformというキーワードが出てきて興味をもったので、今回はTerraformをハンズオンしてみました。

ハンズオンした内容

learn.hashicorp.com

  • Terraformの設定ファイルを用いてnginxのDockerを立ち上げてブラウザで起動を確認
  • AWS CLIとTerraformの設定ファイルを用いてEC2インスタンスを作成、変更、削除
  • ローカルでのプロビジョニング、リモートでのプロビジョニング

詰まったこと

いくつかハンズオンで詰まった箇所があったのでメモとして残します。

AWS CLIのインストールと設定

  • AWC CLIをインストールする

(参照) https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html

  • IAMで適切な権限を設定したユーザーを作成して、認証情報を取得してAWS CLIの設定をする
$ aws configure
AWS Access Key ID [None]: 取得したAccess Key ID
AWS Secret Access Key [None]: 取得したSecret Access Key
Default region name [None]: us-west-2 
Default output format [None]: json

設定が完了すると.awsという設定ディレクトリが作成される。

$ ls ~/.aws
config   credentials

(参照) https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-where

感想

個人開発でも業務でもマネジメントコンソールからいつもポチポチしてたのですがEC2インスタンスの作成や削除をCLIから実行できることに感動しました。