REGION_CODE="ap-northeast-2"
RDS_NAME="demo-storage-rds-instance"
SECRETS_MANAGER_NAME="demo-rds-secrets"
ENDPOINT_ID=$(aws ec2 describe-vpc-endpoints --query "VpcEndpoints[].VpcEndpointId" --output text --region $REGION_CODE)
RCFG_ID=$(aws vpc-lattice list-resource-configurations --query "items[?contains(name, '$RDS_NAME')].id" --output text --region $REGION_CODE)
DB_USER=$(aws secretsmanager get-secret-value --secret-id $SECRETS_MANAGER_NAME --query "SecretString" --output text --region $REGION_CODE | jq -r ".username")
DB_PASSWORD=$(aws secretsmanager get-secret-value --secret-id $SECRETS_MANAGER_NAME --query "SecretString" --output text --region $REGION_CODE | jq -r ".password")
DB_HOST="$ENDPOINT_ID.$RCFG_ID.4232ccc.vpc-lattice-rsc.$REGION_CODE.on.aws"
DB_PORT=$(aws secretsmanager get-secret-value --secret-id $SECRETS_MANAGER_NAME --query "SecretString" --output text --region $REGION_CODE | jq -r ".port")
DB_NAME=$(aws secretsmanager get-secret-value --secret-id $SECRETS_MANAGER_NAME --query "SecretString" --output text --region $REGION_CODE | jq -r ".dbname")
mysql -h $DB_HOST -P $DB_PORT -u $DB_USER -p$DB_PASSWORD -D $DB_NAME

image.png