エンドポイントサービスが複数のエンドポイントに接続されている場合、PrivateLinkを使用すると、エンドポイントサービスのサービスリソースを置き換えてトラフィックを分散できます。これにより、サービスリソースの過負荷による業務中断を防ぐことができます。
制限事項
デフォルトでは、サービスリソースの置き換えとサービスリソースの自動割り当ての機能は無効になっています。これらの機能を使用するには、クォータセンターコンソールにログインし、クォータID privatelink_whitelist/svc_res_mgt_uat を検索して、申請を送信します。
クラシックロードバランサー(CLB)インスタンスとアプリケーションロードバランサー(ALB)インスタンスがエンドポイントサービスのサービスリソースとして機能する場合にのみ、同じゾーン内のサービスリソースを置き換えることができます。
エンドポイント、エンドポイントサービス、およびサービスリソースは、同じリージョンの同じゾーンにデプロイする必要があります。CLBインスタンスがサービスリソースとして機能する場合、PrivateLinkを使用して、CLBインスタンスのプライマリゾーン内でのみ接続を確立できます。ゾーンをまたがるディザスタリカバリを実装する場合は、ALBインスタンスまたはネットワークロードバランサー(NLB)インスタンスをサービスリソースとして指定できます。
例
このトピックでは、次の図のシナリオを例として使用します。企業Aは、中国(杭州)リージョンのゾーンHにVPC 1、VPC 2、VPC 3を作成します。VPC 1とVPC 2は、PrivateLinkを使用して、VPC 3のサービスリソースCLB 1にアクセスできます。ビジネスの成長に伴い、企業AはCLB 1からCLB 2へのトラフィックの一部を分散して、VPC 1がPrivateLinkを使用してCLB 1にアクセスし、VPC 2がPrivateLinkを使用してCLB 2にアクセスできるようにする必要があります。これにより、CLB 1の過負荷による業務中断を防ぎます。
前提条件
VPC 1、VPC 2、VPC 3は中国(杭州)リージョンに作成され、各仮想プライベートクラウド(VPC)にvSwitchが作成されます。詳細については、「IPv4 CIDRブロックを持つVPCを作成する」トピックの手順1:VPCとvSwitchを作成するセクションを参照してください。
ECS 01はVPC 1に作成され、ECS 02はVPC 2に作成され、リクエストの送信に使用されます。ECS 03、ECS 04、ECS 05、ECS 06はVPC 3に作成され、リクエストの受信と処理に使用されます。VPC 3のElastic Compute Service(ECS)インスタンスには、異なるNGINXサービスがデプロイされています。詳細については、Alibaba Cloud Linux 2または3を実行するECSインスタンスにLNMPスタックを構築するを参照してください。
サービスリソースとして機能するCLB 1とCLB 2は、VPC 3に作成されます。PrivateLinkをサポートするCLBインスタンスの作成方法の詳細については、「PrivateLinkを使用して別のVPCのCLBインスタンスにアクセスする」トピックの手順1:PrivateLinkをサポートするCLBインスタンスを作成するセクションを参照してください。
リスナーとECSインスタンスは、CLB 1とCLB 2のために作成されます。詳細については、「PrivateLinkを使用して別のVPCのCLBインスタンスにアクセスする」トピックの手順2:CLBインスタンスを設定するセクションを参照してください。
エンドポイントはVPC 1に作成され、エンドポイントはVPC 2に作成されます。エンドポイントサービスはVPC 3に作成され、ゾーンHのCLB 1をサービスリソースとして使用します。エンドポイントとエンドポイントサービスの作成方法の詳細については、「PrivateLinkを使用して別のVPCのCLBインスタンスにアクセスする」トピックの「手順3:エンドポイントサービスを作成する」セクションと「手順4:エンドポイントを作成する」セクションを参照してください。PrivateLinkを使用して別のVPCのCLBインスタンスにアクセスする
次の表は、VPC 1、VPC 2、VPC 3のネットワーク計画を示しています。
パラメーター | VPC1 | VPC2 | VPC3 |
ネットワークインスタンスリージョン | 中国(杭州) | 中国(杭州) | 中国(杭州) |
CIDRブロック |
|
|
|
vSwitchゾーン | ゾーンH | ゾーンH | ゾーンH |
ECSインスタンスIPアドレス | ECS 01:10.10.0.190 | ECS 02:172.16.233.103 |
|
手順
手順1:ゾーンにサービスリソースを割り当て、サービスリソースに接続する
ゾーンにサービスリソースを割り当て、サービスリソースに接続する前に、次の要件が満たされていることを確認してください。
エンドポイント接続が切断済み状態である。
エンドポイントのゾーンが、接続待機中または切断済み状態です。
サービスリソースがゾーンHで使用可能である。
エンドポイント接続タブで、管理するエンドポイントを見つけ、許可操作列のをクリックします。
接続を許可ダイアログボックスで、ビジネス要件に基づいて次の手順を実行します。
システムが自動的にサービスリソースを割り当てるようにする場合:
接続を許可し、サービスリソースを自動的に割り当てます。を選択し、OKをクリックします。
エンドポイントの前にあるアイコンをクリックして、ゾーンの詳細を表示します。次に、管理するゾーンを選択します。この例では、杭州ゾーンHが選択されています。
サービスリソースを手動で割り当てる場合は、接続を許可し、サービスリソースを自動的に割り当てます。のチェックボックスをオフにします。
エンドポイントの前にあるアイコンをクリックして、ゾーンの詳細を表示します。次に、管理するゾーンを選択します。この例では、杭州ゾーンHが選択されています。
ゾーンのアクション列のサービスリソースの割り当てをクリックします。
サービスリソースの割り当てダイアログボックスで、手動割り当てを選択し、ドロップダウンリストでCLB 1を選択して、OKをクリックします。
説明エンドポイントのゾーンにサービスリソースが存在し、自動割り当てを選択した場合、既存のサービスリソースはクリアされます。エンドポイント接続に対して「接続を許可し、サービスリソースを自動的に割り当てる」を選択すると、サービスリソースを自動的に割り当てることができます。
管理するエンドポイントのアクション列の許可をクリックします。
ECS 01とECS 02にリモートログインし、curlコマンドを実行して、ECS 01とECS 02がVPC 3のECS 03にデプロイされたサービスにアクセスできるかどうかをテストします。ECSインスタンスへのログイン方法の詳細については、接続方法の概要を参照してください。
curl <エンドポイントのゾーンのドメイン名またはIPアドレス>
次の図に示す情報が表示された場合、ECS 01とECS 02はECS 03にデプロイされたサービスにアクセスできます。
手順2:アラートルールを作成する
CloudMonitorコンソールにログインします。
左側のナビゲーションペインで、
を選択します。クラウド製品のモニタリングページで、すべてのクラウド製品をクリックします。 を選択します。
PrivateLink エンドポイントノードサービスページで、アラームルールを作成をクリックします。
アラームルールを作成パネルで、次のセクションで説明するパラメーターを指定し、確認をクリックします。
次のセクションでは、エンドポイントサービスに関連する主要なパラメーターについて説明します。その他のパラメーターの詳細については、アラートルールを作成するを参照してください。
製品:この例では、PrivateLink エンドポイントノードサービスが選択されています。
リソース:アラートルールの適用範囲を指定します。この例では、インスタンスリストが選択されています。
関連リソース:この例では、VPC 2に作成されたエンドポイントサービスが選択されています。
ルールの内容:アラートルールの内容を指定します。指定されたメトリックが指定された条件を満たすと、アラートがトリガーされます。
ルールの追加をクリックします。ルールの説明を設定パネルで、次のパラメーターを設定し、OKをクリックします。
パラメーター
説明
アラームルール名
ルールの名前を入力します。
インジケータータイプ
アラートをトリガーするために使用されるメトリックのタイプを選択します。この例では、単一メトリックが選択されています。
モニタリングメトリック
ドロップダウンリストからメトリックを選択します。この例では、Service Resource Inbound Bandwidthが選択されています。
ディメンションを選択
ゾーンIDとサービスリソースIDを選択します。
この例では、zoneIdパラメーターにcn-hangzhou-hが選択され、resourceIdパラメーターにVPC 2のCLB 1のIDが選択されています。
しきい値とアラームレベル
アラートルールのしきい値とアラートレベルを指定します。
この例では、アラートレベルとして警告が選択され、アラート条件として1連続サイクル(1サイクル= 1分)平均>= 20 Mibit/sが指定されています。これは、サービスリソースの受信帯域幅が1分ごとに1回チェックされることを示します。受信帯域幅が20 Mbit/s以上の場合、アラートがトリガーされます。
チャートプレビュー
指定された期間内のメトリックのモニタリングチャートを表示します。
チャンネル沈黙サイクル → ミュートサイクル:アラートがクリアされない場合にアラートを再送信する間隔を指定します。この例では、30分が選択されています。
有効期間:アラートルールが有効な期間を指定します。CloudMonitorは、指定された期間中にのみモニタリングデータをチェックし、アラートを生成するかどうかを判断します。この例では、00:00 - 23:59が指定されています。
アラーム連絡先グループ:アラートの送信先となる連絡先グループを指定します。連絡先と連絡先グループの作成方法の詳細については、アラート連絡先またはアラート連絡先グループを作成するを参照してください。
手順3:wrkを使用してストレステストを実行する
wrkを使用して、VPC 3のCLB 1でストレステストを実行できます。CLB 1の受信帯域幅が指定されたアラートしきい値に達すると、CloudMonitorでアラートがトリガーされます。
この例では、ECSインスタンスはAlibaba Cloud Linuxオペレーティングシステムを実行しています。他のオペレーティングシステムでのwrkのインストール方法と使用方法の詳細については、使用するオペレーティングシステムのユーザーガイドを参照してください。
VPC 1のECS 01にリモートログインします。
VPC 1のECS 01で次のコマンドを順番に実行して、wrkをインストールします。
sudo yum -y install luajit sudo yum -y install wrk
次の図に示す情報が表示された場合、wrkはインストールされています。
wrkがインストールされたら、次のコマンドを実行して、wrkを使用してCLB 1でストレステストを実行します。
wrk -c 100 -d 600 -t 1 http://<エンドポイントのゾーンのドメイン名またはIPアドレス>
次のエコー応答パケットが返された場合、ストレステストは完了です。
アラームルールページに戻ります。数分後、ステータス列にアラートがオレンジ色で表示されます。これは、CLB 1の受信帯域幅がアラートしきい値に達したことを示します。この場合、CLB 1のトラフィックの一部をCLB 2に分散する必要があります。
手順4:ゾーンにサービスリソースを追加する
エンドポイントサービスコンソールにログインします。
上部のナビゲーションバーで、VPC 3のエンドポイントサービスがデプロイされているリージョンを選択します。この例では、中国(杭州)が選択されています。
エンドポイントサービスページで、管理するエンドポイントサービスを見つけ、そのIDをクリックします。
サービスリソースセクションで、サービスリソースの追加をクリックします。
サービスリソースの追加ダイアログボックスで、トラフィックを受信するゾーンを選択し、エンドポイントサービスに関連付けるCLBインスタンスを選択します。
この例では、杭州ゾーンHとCLB 2のIDが選択されています。
OKをクリックします。
手順5:ゾーンのサービスリソースを置き換える
サービスリソースを置き換えると、現在の接続は約3秒間閉じられます。サービスリソースを置き換える前に、リスクを評価することをお勧めします。
サービスリソースを置き換える前に、次の要件が満たされていることを確認してください。
エンドポイント接続は、接続済み状態です。
エンドポイントのゾーンは、接続済み または 切断済み 状態です。
CLB 1に加えて、少なくとも1つのサービスリソースがゾーンHで使用可能です。
CLB 2 では自動割り当てが無効になっています。詳細については、このトピックのサービスリソースの自動割り当てを有効化および無効化するセクションを参照してください。
エンドポイントサービスコンソールにログオンします。
上部のナビゲーションバーで、エンドポイントサービスがデプロイされているリージョンを選択します。この例では、中国 (杭州) が選択されています。
エンドポイントサービスページで、管理するエンドポイントサービスを見つけ、そのIDをクリックします。
エンドポイントサービスの詳細ページで、エンドポイント接続タブをクリックし、VPC 2 のエンドポイントを見つけ、エンドポイントの前にあるアイコンをクリックしてゾーンの詳細を表示します。
管理するゾーンを選択し、[サービスリソースの置換] を [アクション] 列でクリックします。
サービスリソースの置換ダイアログボックスで、スムーズ移行または強制移行を選択し、ドロップダウンリストからCLB 2を選択して、OKをクリックします。
説明スムーズ移行は、次の方法で動作します。
システムは、エンドポイントのElastic Network Interface (ENI) を自動的に作成します。次に、新しいエンドポイントENIをCLB 2に接続し、エンドポイントENIのIPアドレスを記録し、そのIPアドレスでDomain Name System (DNS) 解決を実行します。
システムは、元のエンドポイントENIのIPアドレスをDNS解決リストから自動的に削除します。
既存のサービスがすべて削除されたことを確認した後、手順 7 および 手順 8 を実行して、元のエンドポイントENIからCLB 1を切断します。CLB 1が元のエンドポイントENIから切断されると、元のエンドポイントENIは削除されます。
ゾーンの以前のサービスリソースから切断アクション列のをクリックします。
以前のサービスリソースから切断しますか? というメッセージが表示されたら、はいをクリックします。
CLB 1が置き換えられた後、ECS 02にリモートログオンし、curlコマンドを実行して、VPC 2のECS 02がVPC 3のECS 05にデプロイされているサービスにアクセスできるかどうかをテストします。
curl <Domain name or IP address of the zone of the endpoint>
次の図に示されている情報が表示された場合、ECS 02はECS 05にデプロイされているサービスにアクセスできます。
次の手順
サービスリソースの自動割り当てを有効または無効にする
サービスリソースの自動割り当てを無効にする前に、自動的に割り当てることができるサービスリソースがゾーンに少なくとも 1 つあることを確認します。
エンドポイントサービスコンソールにログオンします。
上部のナビゲーションバーで、エンドポイントサービスがデプロイされているリージョンを選択します。
エンドポイントサービスページで、管理するエンドポイントサービスを見つけ、そのIDをクリックします。
エンドポイントサービスの詳細ページで、サービスリソース セクションで管理するサービスリソースを見つけ、ビジネス要件に基づいて 自動割り当て 列のスイッチをオンまたはオフにします。
無効 をオンにします。自動割り当てを有効化してもよろしいですか。 というメッセージが表示されたら、許可 をクリックします。
有効をオフにします。自動割り当てを無効化してもよろしいですか。 というメッセージで、無効化をクリックします。
ゾーン内のサービスリソースから切断する
ゾーン内のサービスリソースから切断する前に、以下の要件が満たされていることを確認します。
エンドポイント接続は、接続済み状態です。
エンドポイントのゾーンは、接続済み状態です。
サービスリソースがエンドポイントのゾーンに割り当てられていること。
エンドポイントサービスコンソールにログオンします。
上部のナビゲーションバーで、エンドポイントサービスがデプロイされているリージョンを選択します。
エンドポイントサービスページで、管理するエンドポイントサービスを見つけ、そのIDをクリックします。
エンドポイントサービスの詳細ページで、エンドポイント接続タブをクリックし、管理するエンドポイントを見つけて、エンドポイントの前にあるアイコンをクリックしてゾーンの詳細を表示します。
管理するゾーンを選択し、以下のシナリオに基づいてサービスリソースとの接続を切断を操作列でクリックします。
スムーズな移行シナリオでは、以前のサービスリソースとの接続を切断 をクリックします。表示されるメッセージで、[はい] をクリックします。次に、サービスリソースとの接続を切断 をクリックします。
強制移行が実行されるシナリオ、または移行が実行されないシナリオでは、サービスリソースとの接続を切断 をクリックします。
説明スムーズな移行シナリオでは、新しいエンドポイント ENI と元のエンドポイント ENI がゾーンの詳細に表示されます。
以前のサービスリソースとの接続を切断してもよろしいですか。 というメッセージで、○ をクリックします。
サービスリソースを削除する
エンドポイントサービスからサービスリソースを削除すると、他の VPC は PrivateLink 接続を介してエンドポイントサービスのサービスリソースにアクセスできなくなります。この操作を実行するときは注意してください。
エンドポイントサービスコンソールにログオンします。
上部のナビゲーションバーで、エンドポイントサービスがデプロイされているリージョンを選択します。
エンドポイントサービスページで、管理するエンドポイントサービスを見つけ、そのIDをクリックします。
エンドポイントサービスの詳細ページで、サービスリソース セクションで管理するサービスリソースを見つけ、以下のシナリオに基づいて操作を実行します。
サービスリソースがエンドポイントのゾーンに割り当てられていない場合:
サービスリソースの操作列にある削除をクリックします。
リソースの削除 メッセージで、OK をクリックします。
サービスリソースがエンドポイントのゾーンに割り当てられている場合:
サービスリソースの操作列にあるリソースの交換をクリックします。
サービスリソースの交換 ダイアログボックスで、次の表に示すパラメーターを指定し、OK をクリックします。
パラメーター
説明
移行タイプ
ビジネス要件に基づいて、スムーズな移行または強制移行を選択します。
スムーズな移行 を選択した場合は、移行完了後に、操作 列の 以前のエンドポイント接続をリリース をクリックします。以前の接続が解放された後、サービスリソースを削除します。
強制移行 を選択した場合、移行完了後にサービスリソースを直接削除できます。
移行先サービスリソースの選択
現在のサービスリソースを置き換えるために使用するサービスリソースを選択します。
移行元エンドポイント接続の選択
現在のサービスリソースに関連付けられているエンドポイント接続を選択します。
サービスリソースの操作列にある削除をクリックします。
リソースの削除 メッセージで、OK をクリックします。
説明削除するサービスリソースがエンドポイントのゾーンに割り当てられている場合は、有効を、自動割り当て列のサービスリソースセクションでオフにする必要があります。
参照
UpdateVpcEndpointZoneConnectionResourceAttribute:エンドポイント接続が属するゾーン内のサービスリソースを変更します。
EnableVpcEndpointZoneConnection:関連付けられたゾーン内のエンドポイントからの接続リクエストを受け入れます。
DisableVpcEndpointZoneConnection:関連付けられたゾーン内のエンドポイントからの接続リクエストを拒否します。
UpdateVpcEndpointServiceResourceAttribute:エンドポイントサービスに追加されたサービスリソースの属性を変更します。
DetachResourceFromVpcEndpointService:エンドポイントサービスからサービスリソースを削除します。