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