ApsaraDB RDSインスタンスが仮想プライベートクラウド (VPC) にあり、パブリックエンドポイントを提供していない場合、インターネット経由でRDSインスタンスのAPI操作を呼び出すことはできません。 このトピックでは、Alibaba Cloudの内部ネットワークを介してこのタイプのRDSインスタンスでAPI操作を呼び出す方法について説明します。
このタスクについて
ApsaraDB RDSは、インターネット経由のアクセスを許可するパブリックエンドポイントを提供します。 RDSインスタンスのパブリックエンドポイントを申請していない場合、Alibaba Cloud CLIやSDKなどのツールを使用している場合でも、インターネット経由でAPI操作を呼び出すことはできません。 この場合、次のいずれかの方法を使用して、Alibaba Cloudの内部ネットワーク上でAPI操作を呼び出すことができます。
SDK: Alibaba Cloud SDK for Javaコアライブラリv4.5.3以降を使用します。
CLI: Alibaba Cloud CLIを使用し、RDSインスタンスが属するリージョンのエンドポイントを入力します。
上記の方法を使用する場合は、RDSインスタンスがVPCにあることを確認し、RDSインスタンスが属するリージョンのエンドポイントを入力します。 次に、RDSインスタンスのリージョンからリソースに対してAPI操作を呼び出すことができます。 他のリージョンからリソースに対してAPI操作を呼び出すことはできません。
次の表は、内部ネットワーク上でAPI操作を呼び出すために利用できるエンドポイントについて説明したものです。 次の表に示すエンドポイントを使用する必要があります。
Alibaba Cloud リージョン | リージョン ID | サービスアドレス |
中国 (杭州) | cn-hangzhou | rds-vpc.cn-hangzhou.aliyuncs.com |
中国 (上海) | cn-shanghai | rds-vpc.cn-shanghai.aliyuncs.com |
中国 (北京) | cn-beijing | rds-vpc.cn-beijing.aliyuncs.com |
中国 (張家口) | cn-zhangjiakou | rds-vpc.cn-zhangjiakou.aliyuncs.com |
中国 (フフホト) | cn-huhehaote | rds-vpc.cn-huhehaote.aliyuncs.com |
中国 (深セン) | cn-shenzhen | rds-vpc.cn-shenzhen.aliyuncs.com |
中国 (成都) | cn-chengdu | rds-vpc.cn-chengdu.aliyuncs.com |
中国 (香港) | cn-hongkong | rds-vpc.cn-hongkong.aliyuncs.com |
杭州(中国東部)金融 | cn-hangzhou-finance | rds-vpc.cn-hangzhou-finance.aliyuncs.com |
シンガポール | ap-southeast-1 | rds-vpc.ap-southeast-1.aliyuncs.com |
オーストラリア (シドニー)サービス終了 | ap-southeast-2 | rds-vpc.ap-southeast-2.aliyuncs.com |
マレーシア (クアラルンプール) | ap-southeast-3 | rds-vpc.ap-southeast-3.aliyuncs.com |
インドネシア (ジャカルタ) | ap-southeast-5 | rds-vpc.ap-southeast-5.aliyuncs.com |
日本 (東京) | ap-northeast-1 | rds-vpc.ap-northeast-1.aliyuncs.com |
ドイツ (フランクフルト) | eu-central-1 | rds-vpc.eu-central-1.aliyuncs.com |
イギリス (ロンドン) | eu-west-1 | rds-vpc.eu-west-1.aliyuncs.com |
UAE (ドバイ) | me-east-1 | rds-vpc.me-east-1.aliyuncs.com |
方法1: (推奨) Alibaba Cloud SDKを使用して内部ネットワーク経由でAPI操作を呼び出す
Alibaba Cloud SDKを使用して内部ネットワーク経由でAPI操作を呼び出す場合は、簡単な設定を実行するだけで済みます。 次のコードは、Alibaba Cloud SDK for Javaを使用して内部ネットワーク経由でAPI操作を呼び出す方法を示しています。
DefaultProfile profile = DefaultProfile.getProfile("<RegionId>", "<AccessKeyId>", "<AccessKeySecret>");
IAcsClientクライアント=新しいDefaultAcsClient (プロファイル);
// グローバル設定を設定します。 プロダクト名として <product> を指定します。 この例では、Rdsと入力します。
DefaultProfile.addEndpoint("<RegionId>", "<product>", "<Endpoint>");
// リクエストに対してのみ設定を行います。 この例では、DescribeRegions操作を呼び出します。
DescribeRegionsRequest regionsRequest = new DescribeRegionsRequest();
// productNetworkパラメーターを設定する場合は、SysEndpointパラメーターを設定する必要はありません。
regionsRequest.setSysEndpoint("<Endpoint>");
// ネットワークを設定します。 productNetworkパラメーターの有効な値: vpcとpublic。
// 内部ネットワーク経由で操作を呼び出す場合は、パラメーターをvpcに設定します。 インターネット経由で操作を呼び出す場合は、パラメーターをpublicに設定します。 デフォルト値 : public
regionsRequest.productNetwork = "vpc";
DescribeRegionsResponse regionsResponse = client.getAcsResponse(regionsRequest);
方法2: Alibaba Cloud CLIを使用して内部ネットワーク経由でAPI操作を呼び出す
次のコマンドは、内部ネットワーク上でDescribeRegions操作を呼び出す方法を示しています。
aliyun rds DescribeRegions-endpoin t rds-vpc.cn-hangzhou.aliyuncs.com