aws-cliのインストール
homebrewを使ってインストールします。
$ brew install awscli
バーションが確認できればインストールは成功です。
$ aws --version
aws-cliの初期化
事前にAWSコンソールから、アクセスキーとシークレットアクセスキー、regionを確認しておき、下記実行時にそれぞれの項目に設定します。
outputformatについては指定しなければjsonになります。
$ aws configure
AWS Access Key ID [None]:
AWS Secret Access Key [None]:
Default region name [None]:
Default output format [None]:
設定したAWS認証が正しいか確認します。
$ aws sts get-caller-identity
{
"UserId": "XXXXXXXXXXXXXXXX",
"Account": "<AWSアカウントID>",
"Arn": "arn:aws:iam::<AWSアカウントID>:user/<IAMユーザー名>"
}
ローカル環境からRDSへ接続する
ローカル環境のターミナルにて以下コマンドを実施し、Session Managerへポートフォワード実施します。
$ aws ssm start-session --target <踏み台インスタンスID> --document-name AWS-StartPortForwardingSessionToRemoteHost --parameters '{"host":["<RDSのエンドポイント>"],"portNumber":["<ポートナンバー>"], "localPortNumber":["<ローカルポートナンバー>"]}'
ポートフォワード実施後、ローカル環境のDBクライアントツールを使用し、接続を行います。
ホスト名、ポートは以下の通りとなります
ホスト名: <RDSのエンドポイント>
Port: 「3. Session Managerへポートフォワード実施」の「localPortNumber」で指定したPort番号
configureの切り替え
検証環境や本番環境へ接続を切り替える場合は、credentialsを修正します。
書き換える場合
ファイルを開いて編集するとわかりやすいです。
$ cd .aws
$ open credentials
書き換えずに切り替える場合
defaultで登録してある情報とは別に、ユーザー名で指定して情報を追加登録できます。
$ aws configure --profile ユーザー名
credentialsに追加されているか確認します。
$ aws sts get-caller-identity --profile ユーザー名
下記コマンドでアカウントを切り替えます。
$ export AWS_DEFAULT_PROFILE=ユーザー名