PrivateLink 経由で Cloud Control API を呼び出すことで、トラフィックをパブリックインターネットに公開することなく、サービスにプライベートにアクセスできます。
概要
PrivateLink とは
PrivateLink は、VPC と Alibaba Cloud サービス間にプライベート接続を確立し、トラフィックをパブリックインターネットから分離することで、セキュリティと安定性を向上させます。
ユースケース
PrivateLink は、本番環境から Cloud Control API を呼び出す場合に推奨されます。一般的なユースケースは次のとおりです:
-
高いセキュリティとコンプライアンス要件:企業のセキュリティポリシーで、パブリックインターネットへのアクセスが禁止または制限されている場合。
-
コスト最適化:パブリックデータ転送料金を削減し、総所有コスト (TCO) を低減したい場合。
-
クロスリージョンデプロイ:統一されたネットワークアーキテクチャで、複数のリージョンにまたがってアプリケーションをデプロイする必要がある場合。
メリット
|
メリット |
説明 |
|
低レイテンシー |
ダイレクトなプライベート接続により、パブリックインターネット経由のアクセスと比較して、ネットワークレイテンシーが 30% から 50% 削減されます。 |
|
高い安定性 |
パブリックインターネットの変動性の影響を受けません。 |
|
安全な隔離 |
トラフィックはパブリックインターネットを経由しません。 |
前提条件
権限要件
PrivateLink エンドポイントを設定するには、以下の権限が必要です:
-
AliyunVPCFullAccess:VPC へのフルアクセス権限。 -
AliyunPrivateLinkFullAccess:PrivateLink へのフルアクセス権限。
リソース要件
呼び出す Cloud Control API サービスのリージョンで、以下のリソースが利用可能であることを確認してください:
|
API サービスリージョン |
ドメイン名 |
VPC リージョン |
|
国内サービス |
cloudcontrol.aliyuncs.com |
cn-zhangjiakou (中国 (張家口)) |
|
国際サービス |
cloudcontrol.ap-southeast-1.aliyuncs.com |
ap-southeast-1 (シンガポール) |
リソースのチェックリスト:
-
対象リージョンに VPC インスタンスがあること。
-
VPC 内に利用可能な vSwitch が少なくとも 1 つあること。
-
vSwitch に十分な利用可能な IP アドレスがあることを確認してください。
サービスリージョン
Cloud Control API は、以下のリージョンで利用可能です。ビジネスニーズに基づいてリージョンを選択してください。
国内サービス (cn-zhangjiakou)
-
エンドポイントサービス:
com.aliyuncs.privatelink.cn-zhangjiakou.cloudcontrol-api -
パブリックドメイン名:
cloudcontrol.aliyuncs.com -
プライベートドメイン名:
cloudcontrol.vpc-proxy.aliyuncs.com
国際サービス (ap-southeast-1)
-
エンドポイントサービス:
com.aliyuncs.privatelink.ap-southeast-1.cloudcontrol -
パブリックドメイン名:
cloudcontrol.ap-southeast-1.aliyuncs.com -
プライベートドメイン名:
cloudcontrol-vpc.ap-southeast-1.aliyuncs.com
PrivateLink の設定後、対応するプライベートドメイン名を使用するよう、アプリケーションコードを更新してください。
手順
同一リージョン内の設定
アプリケーションが Cloud Control API サービスと同じリージョン (cn-zhangjiakou または ap-southeast-1) にデプロイされている場合、そのリージョンで直接エンドポイントを作成できます。
ステップ1:コンソールへのログイン
-
VPC コンソールにログインします。
-
左側のナビゲーションペインで、[エンドポイント] をクリックします。
-
[Interface Endpoint] タブで、 [Enable PrivateLink] をクリックします。
ステップ2:リージョンの選択
[Region] ドロップダウンリストから、リージョンを選択します:
-
国内サービスにアクセスするには、[中国(張家口)] を選択します。
-
国際サービスにアクセスするには、[シンガポール]を選択します。
ステップ3:基本情報の設定
|
パラメーター |
説明 |
例 |
|
Endpoint Name |
エンドポイントのわかりやすい名前を入力します。 |
|
|
Endpoint Type |
[Interface Endpoint] を選択します。 |
Interface Endpoint |
|
Resource Type |
[Alibaba Cloud Service] を選択します。 |
Alibaba Cloud Service |
ステップ4:エンドポイントサービスの選択
-
[エンドポイントサービス] 検索ボックスには、対象のサービスに応じてサービス名を入力します:
-
国内サービス:
com.aliyuncs.privatelink.cn-zhangjiakou.cloudcontrol-api -
国際サービス:
com.aliyuncs.privatelink.ap-southeast-1.cloudcontrol
-
-
検索結果からエンドポイントサービスを選択します。
ステップ5:カスタムドメイン名の有効化
[カスタムドメイン名を有効化] を選択します。システムが自動的にプライベートドメイン名を割り当てます。
-
国内サービスのドメイン名:
cloudcontrol.vpc-proxy.aliyuncs.com -
国際サービスのドメイン名:
cloudcontrol-vpc.ap-southeast-1.aliyuncs.com
ステップ6:ネットワーク設定
|
パラメーター |
説明 |
ベストプラクティス |
|
VPC |
アプリケーションがデプロイされている VPC を選択します。 |
VPC がアプリケーションのデプロイと一致することを確認します。 |
|
ゾーンと vSwitch |
少なくとも 1 つの vSwitch を選択します。高可用性を確保するために、複数の vSwitch を選択することを推奨します。 |
本番環境では、2 つから 3 つの異なるゾーンにある vSwitch を選択します。 |
|
セキュリティグループ |
アクセス元を制限するためのセキュリティグループを選択します。 |
アプリケーションのセキュリティグループからのみアクセスを許可するルールを設定します。 |
複数ゾーン設定の例:
ゾーン A:vsw-xxxxx
ゾーン B:vsw-yyyyy
ステップ7:エンドポイントポリシーの設定
エンドポイントポリシーは、どのアカウントまたは RAM ユーザーがエンドポイント経由でサービスにアクセスできるかを定義します。
最小権限の原則に基づき、必要なアカウントにのみアクセスを許可してください。
デフォルトポリシー (すべてを許可):
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "*",
"Resource": "*"
}
]
}
推奨ポリシー (現在のアカウントのみを許可):
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Aliyun": [
"acs:ram::YOUR_ACCOUNT_ID:root"
]
},
"Action": "*",
"Resource": "*"
}
]
}
ステップ8:作成と検証
-
[OK] をクリックしてエンドポイントを作成します。
-
エンドポイントのステータスが [アクティブ] になるまで 2〜5 分待ちます。
-
接続ステータスが [接続済み]に変わります。
ステータスの説明:
-
作成中:エンドポイントが作成されています。
-
アクティブ:エンドポイントが使用可能な状態です。
-
異常:作成に失敗したか、接続が機能していません。設定を確認してください。
エンドポイントが作成された後、その詳細ページで以下を確認します:[Basic Information] セクションで、[Status] が アクティブ であり、[Connection Status] が 接続済み であること、[Endpoint Service Domain Name] セクションで、[Custom Domain Name] が有効になっており、想定されるドメインが表示されていることを確認します。
クロスリージョン設定
cn-zhangjiakou または ap-southeast-1 以外のリージョンから接続するには、CEN を使用してリージョン間接続を確立する必要があります。
ステップ1:ターゲットリージョンでのエンドポイント作成
-
cn-zhangjiakouまたはap-southeast-1にエンドポイントを作成します。詳細については、「同一リージョン設定」をご参照ください。 -
エンドポイントが配置されている VPC の ID を記録します。
ステップ2:CEN を使用したリージョン間接続
CEN の設定方法については、「リージョン間での VPC 接続」をご参照ください。
検証とテスト
接続性の検証
アプリケーションを実行する ECS またはコンテナインスタンスにログインし、次のコマンドを実行します:
国内サービスの検証:
curl -v cloudcontrol.vpc-proxy.aliyuncs.com
国際サービスの検証:
curl -v cloudcontrol-vpc.ap-southeast-1.aliyuncs.com
成功の指標:
接続に成功すると、HTTP レスポンスに x-acs-request-id ヘッダーが含まれます。出力例:
< HTTP/1.1 401 Unauthorized
< date: Thu, 09 Oct 2025 10:30:00 GMT
< content-type: application/json
< x-acs-request-id: 23C12345-1234-1234-1234-123456789ABC
< x-acs-trace-id: 0b12345678901234567890123456789a
...
リクエストに認証情報が含まれていないため、API は 401 ステータスコードを返します。
x-acs-request-id ヘッダーが存在することにより、リクエストがプライベート接続を介して Alibaba Cloud サービスエンドポイントに到達したことを確認できます。
アプリケーション統合の例
Java の例
import com.aliyun.cloudcontrol20220830.Client;
import com.aliyun.teaopenapi.models.Config;
public class PrivateLinkExample {
public static void main(String[] args) throws Exception {
// クライアントを設定します。
Config config = new Config()
.setAccessKeyId("<YOUR-ACCESS-KEY-ID>")
.setAccessKeySecret("<YOUR-ACCESS-KEY-SECRET>")
// プライベートエンドポイントを使用するようにクライアントを設定します。
// ご利用のサービスに応じて、以下のいずれかの設定を有効にしてください。
// --- 国内サービス (cn-zhangjiakou) の場合 ---
.setEndpoint("cloudcontrol.vpc-proxy.aliyuncs.com")
.setHost("cloudcontrol.aliyuncs.com")
// --- 国際サービス (ap-southeast-1) の場合 ---
// 上記の国内サービス用の設定をコメントアウトし、
// 以下の2行のコメントを解除してください。
// .setEndpoint("cloudcontrol-vpc.ap-southeast-1.aliyuncs.com")
// .setHost("cloudcontrol.ap-southeast-1.aliyuncs.com")
.setProtocol("https");
Client client = new Client(config);
// 以降の API 呼び出しにはクライアントオブジェクトを使用します。
try {
var response = client.listResources(...);
System.out.println("Request successful: " + response.getBody().getRequestId());
} catch (Exception e) {
System.err.println("Request failed: " + e.getMessage());
}
}
}