我正在尝试将RDS端点用于cli的用户数据,但无法弄明白。 我需要将RDS端点注入到php文件中,但是当我尝试以下操作时,我得到:
Unable to locate credentials. You can configure credentials by running "aws configure".
我正在使用CLI构建ec2和vpc,并且需要能够将RDS端点作为Userdata的一部分。
我在EC2实例上尝试了以下操作,我收到了上述错误。
aws rds --region ca-central-1 describe-db-instances --query "DBInstances[*].Endpoint.Address"
即使我能够解决这个问题,我也需要能够让端点作为userdata的一部分传递。这甚至可能吗?
答案 0 :(得分:1)
Unable to locate credentials
错误表明AWS Command-Line Interface (CLI)没有任何凭据来调用AWS API。
您应该describe-db-instances
。请参阅:IAM Roles for Amazon EC2
然后,您的用户数据可以包含以下内容:
#!
RDS=`aws rds --region ca-central-1 describe-db-instances --query "DBInstances[*].Endpoint.Address"`
echo >file $RDS
或将其作为参数传递:
php $RDS
答案 1 :(得分:-1)
我可以使用它-
mac = curl -s http://169.254.169.254/latest/meta-data/mac
VPC_ID = curl -s http://169.254.169.254/latest/meta-data/network/interfaces/macs/ $ mac / vpc-id
aws rds describe-db-instances --region us-east-2 | jq -r --arg VPC_ID "VPC_ID" '.DBInstances[] |select (.DBSubnetGroup.VpcId=="'$VPC_ID'") | .Endpoint.Address'