2017-10-13 29 views
0

我的代码集:如何获得AWS区域名称(例如,美国东(N.弗吉尼亚州))的Python为RDS使用boto3

import boto3 
rds = boto3.setup_default_session(region_name=reg_name) 
client = boto3.client("rds", 
         aws_access_key_id=access_key_id, 
         aws_secret_access_key=secret_access_key) 
response = client.describe_source_regions()['SourceRegions'] 
print response 

作为输出我得到:

[{u'Status': 'available', 
    u'Endpoint': 'https: //rds.ap-northeast-1.amazonaws.com', 
    u'RegionName': 'ap-northeast-1'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.ap-northeast-2.amazonaws.com', 
    u'RegionName': 'ap-northeast-2'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.ap-south-1.amazonaws.com', 
    u'RegionName': 'ap-south-1'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.ap-southeast-1.amazonaws.com', 
    u'RegionName': 'ap-southeast-1'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.ap-southeast-2.amazonaws.com', 
    u'RegionName': 'ap-southeast-2'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.eu-central-1.amazonaws.com', 
    u'RegionName': 'eu-central-1'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.eu-west-1.amazonaws.com', 
    u'RegionName': 'eu-west-1'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.eu-west-2.amazonaws.com', 
    u'RegionName': 'eu-west-2'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.sa-east-1.amazonaws.com', 
    u'RegionName': 'sa-east-1'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.amazonaws.com', 
    u'RegionName': 'us-east-1'}, 
{u'Status': 'available', 
    u'Endpoint': 'https:// rds.us-west-2.amazonaws.com', 
    u'RegionName': 'us-west-2'}] 

但与地区如us-east-1我还需要它的地区名称,即美国东部(N. Virginia)。

回答

0

从CLI中可以使用命令get-regions,它在输出中返回displayName,我不知道boto3是否有API来获取displayName。

+0

它是Lightsail命令的一部分。所以你需要运行:'aws lightsail get-regions'。 – Dunedan

+0

当前AWS lightsail仅在某些特定区域可用,因此您将无法获取所有显示名称。 – mootmoot

1

在boto3中,region_name是region-id,没有确切的区域名称说明。如果你想要实际的区域描述,你需要自己创建你自己的映射,如下所示:AWS region name and region

+0

我们不能以编程方式进行研究,如果添加了新的区域,那么我们必须手动去改变我们映射的地方的列表。 –

+0

有一些“区域”在典型的用户范围之外。即AWS gov服务及其中国服务器。 – mootmoot

相关问题