terraformでVPC+EC2+RDS(aurora-mysql)の設定 - 株式会社CoLabMix

terraformでVPC+EC2+RDS(aurora-mysql)の設定

terraformを使ってVPC+EC2+RDS(aurora-mysql)の設定を実施してみます。

かなり一般的な構成だと思うのですがaurora-mysqlでまとまっているものが調べるのが大変でしたので記載してみます。

VPC+EC2+RDSのベーシックな構成をシンプルにまとめてみます。

terraformでVPCの設定

まず、VPCの部分から記載しています。

ここでは特に難しい部分はないですが、RDSではサブネットを複数に所属する必要があるのでサブネットを2つ作っています。

 

 

terraformでEC2の設定

今回、EC2への接続についてはローカルでssh keyの作成をしてからの構築を行なっています。
指定する値は公開鍵をterraformで指定して、秘密鍵を使ってsshで接続する方式です。

まず、鍵の作成は以下で行います。

 

こちらでできた「test-key.pub」の中身を「public_key」に設定しています。

 

AMIでは「Amazon Linux 2 AMI (HVM), SSD Volume Type」を設定してEC2インスタンスを構築しています。

「vpc_security_group_ids」では自身で接続する環境のIPを指定してください。

 

terraformでRDS(aurora-mysql)の設定

aurora-mysqlのRDSの構築となります。
ユーザーIDとパスワードを記載していますが通常ではこちらはtfvarsなどのファイルに隠してgitなどにもアップしないでください。

 

「aws_db_parameter_group」ではmysqlに関する様々なパラメーターを指定できます。
文字コードなどもこちらで設定できます。

こちらをapplyするとRDSなど管理コンソールで作成されているのが確認できます。

 

EC2にSSHログインし、mysql-clientをインストールするとRDSにログインできます。(エンドポイントやIPは管理コンソールで確認してください)

 

慣れるとRDSでの接続環境が非常に早く構築できます。

 

 

このブログは株式会社CoLabMixによる技術ブログです。

GCP、AWSなどでのインフラ構築・運用や、クローリング・分析・検索などを主体とした開発を行なっています。

Ruby on RailsやDjango、Pythonなどの開発依頼などお気軽にお声がけください。

開発パートナーを増やしたいという企業と積極的に繋がっていきたいです。

お問い合わせやご依頼・ご相談など

    関連記事

    1. Pythonでのgoogle-cloud-bigqueryライブラリを…

    2. Firefoxの「RESTClient」からPOSTの値の送信

    3. Elasticsearch 6 を使ったデータ検証 その4(チュートリ…

    4. Django でWebアプリケーションを作成してみる その1(ubun…

    5. Ubuntu 18.04 に MariaDBのインストール

    6. さくらVPS の CentOS7 サーバに Elasticsearch…