AEM as a Cloud Service の高度なネットワーク機能の設定 configuring-advanced-networking
この記事では、AEM as a Cloud Service で使用できる高度なネットワーク機能について説明します。 これらの機能には、VPN、非標準ポート、専用エグレス IP アドレスのセルフサービスおよび API プロビジョニングが含まれます。
このドキュメントに加えて、高度なネットワークオプションのそれぞれを説明する一連のチュートリアルも用意されています。 高度なネットワーク機能を参照してください。
高度なネットワーク機能の設定(VPN の作成など)を自動化するには、Cloud Manager API を使用できます。
| code language-bash |
|---|
|
概要 overview
AEM as a Cloud Service では、次の高度なネットワークオプションを提供します。
- フレキシブルポートエグレス - AEM as a Cloud Service を設定して、非標準ポートからの送信トラフィックを許可します。
- 専用エグレス IP アドレス - 一意の IP アドレスから送信されるように AEM as a Cloud Service からのトラフィックを設定します。
- 仮想プライベートネットワーク(VPN) - VPN を使用している場合は、インフラストラクチャと AEM as a Cloud Service の間のトラフィックを保護します。
この記事では、これらの各オプションを詳しく説明し、使用する理由を説明してから、Cloud Manager UI および API を使用してオプションを設定する方法を説明します。 この記事では、最後にいくつかの高度なユースケースを紹介します。
要件と制限事項 requirements
高度なネットワーク機能を設定する場合、次の制限が適用されます。
-
プログラムは、単一の高度なネットワークオプション(柔軟なポートエグレス、専用エグレス IP アドレスまたは VPN)をプロビジョニングできます。
-
高度なネットワーク機能は、サンドボックスプログラムでは使用できません。
-
プログラムにネットワークインフラストラクチャを追加して設定するには、ユーザーが 管理者 の役割を持っている必要があります。
-
プログラムにネットワークインフラストラクチャを追加する前に、本番環境を作成する必要があります。
-
ネットワークインフラストラクチャは、本番環境のプライマリ地域と同じ地域に存在する必要があります。
- 本番環境に追加の公開地域がある場合は、追加の各地域をミラーリングする別のネットワークインフラストラクチャを作成できます。
- 作成できるネットワークインフラストラクチャの数は、本番環境で設定された最大地域数を超えることはできません。
- 本番環境で使用可能な地域と同じ数のネットワークインフラストラクチャを定義できますが、新しいインフラストラクチャは以前に作成したインフラストラクチャと同じタイプにする必要があります。
- 複数のインフラストラクチャを作成する場合は、高度なネットワークインフラストラクチャが作成されていない地域のみから選択できます。
高度なネットワーク機能の設定と有効化 configuring-enabling
高度なネットワーク機能を使用するには、次の 2 つの手順が必要です。
- 高度なネットワークオプションの設定(フレキシブルポートエグレス、専用エグレス IP アドレスまたは VPN)は、まずプログラムレベルで行う必要があります。
- 使用するには、高度なネットワークオプションを環境レベルで有効にする必要があります。
どちらの手順も、Cloud Manager UI または Cloud Manager API を使用して実行できます。
-
Cloud Manager UI を使用する場合、つまり、プログラムレベルでウィザードを使用して高度なネットワーク設定を作成し、その設定を有効にする各環境を編集することです。
-
Cloud Manager API を使用する場合、
/networkInfrastructuresAPI エンドポイントがプログラムレベルで呼び出され、目的のタイプの高度なネットワーク機能を宣言します。 その後、各環境の/advancedNetworkingエンドポイントへの呼び出しが行われ、インフラストラクチャを有効にして環境固有のパラメーターを設定します。
フレキシブルポートエグレス flexible-port-egress
高度なネットワーク機能を使用すると、デフォルトで開いている HTTP(ポート 80)と HTTPS(ポート 443)以外のポートからトラフィックを送信するように、AEM as a Cloud Service を設定することができます。
UI 設定 configuring-flexible-port-egress-provision-ui
-
my.cloudmanager.adobe.com で Cloud Manager にログインし、適切な組織を選択します。
-
マイプログラムコンソールで、プログラムを選択します。
-
プログラムの概要 ページで、環境 タブに移動し、左側のパネルで ネットワークインフラストラクチャ を選択します。
-
ネットワークインフラストラクチャを追加ウィザードで、「フレキシブルポートエグレス」を選択します。
-
地域ドロップダウンメニューから目的の地域を選択し、「続行」をクリックします。
-
「確認」タブには、選択内容と次の手順がまとめられています。 「保存」をクリックして、インフラストラクチャを作成します。
サイドパネルの ネットワークインフラストラクチャ 見出しに、新しいレコードが表示されます。 これには、インフラストラクチャのタイプ、ステータス、地域、有効になっている環境などの詳細が含まれます。
API 設定 configuring-flexible-port-egress-provision-api
プログラムごとに 1 回、POST /program/<programId>/networkInfrastructures エンドポイントが呼び出され、kind パラメーターの flexiblePortEgress の値と地域が渡されます。 エンドポイントは、応答として network_id の他に、ステータスなどの他の情報も返します。
呼び出しの後、ネットワークインフラストラクチャがプロビジョニングされるまで、通常は 15 分ほどかかります。 Cloud Manager のネットワークインフラストラクチャ GET エンドポイントの呼び出しで「準備完了」のステータスが表示されます。
トラフィックルーティング flexible-port-egress-traffic-routing
80 または 443 以外のポートに送信される http または https トラフィックの場合、次のホストおよびポート環境変数を使用してプロキシを設定する必要があります。
- HTTP の場合:
AEM_PROXY_HOST/AEM_HTTP_PROXY_PORT(AEM リリース 6094 未満では、デフォルトはproxy.tunnel:3128) - HTTPS の場合:
AEM_PROXY_HOST/AEM_HTTPS_PROXY_PORT(AEM リリース 6094 未満では、デフォルトはproxy.tunnel:3128)
www.example.com:8443 にリクエストを送信するサンプルコードを以下に示します。
String url = "www.example.com:8443"
String proxyHost = System.getenv().getOrDefault("AEM_PROXY_HOST", "proxy.tunnel");
int proxyPort = Integer.parseInt(System.getenv().getOrDefault("AEM_HTTPS_PROXY_PORT", "3128"));
HttpClient client = HttpClient.newBuilder()
.proxy(ProxySelector.of(new InetSocketAddress(proxyHost, proxyPort)))
.build();
HttpRequest request = HttpRequest.newBuilder().uri(URI.create(url)).build();
HttpResponse<String> response = client.send(request, BodyHandlers.ofString());
非標準の Java™ ネットワークライブラリを使用する場合は、上記のプロパティを使用して、すべてのトラフィックに対してプロキシを設定します。
portForwards パラメーターで宣言されたポート経由の宛先を持つHTTP/S以外のトラフィックは、マッピングされたポートと共にAEM_PROXY_HOSTというプロパティを参照する必要があります。 次に例を示します。
DriverManager.getConnection("jdbc:mysql://" + System.getenv("AEM_PROXY_HOST") + ":53306/test");
次の表にトラフィックルーティングを示します。
次の環境変数とプロキシポート番号を使用して設定された http プロキシを介した(80 または 443 以外の他のポートでの)非標準トラフィック。 Cloud Manager API 呼び出しの portForwards パラメーターで宛先ポートを宣言しないでください。
- AEM_PROXY_HOST(AEM リリース 6094 未満では、デフォルトは `proxy.tunnel`)
- AEM_HTTPS_PROXY_PORT(AEM リリース 6094 未満では、デフォルトはポート 3128)
portForwards API パラメーターで宣言された portOrig を使用して、AEM_PROXY_HOST 環境変数のプロキシホストに接続mysql.example.com:3306db.example.com:5555Apache/Dispatcher 設定 apache-dispatcher
AEM Cloud Service の Apache/Dispatcher 層の mod_proxy ディレクティブは、上記のプロパティを使用して設定できます。
ProxyRemote "http://example.com:8080" "http://${AEM_PROXY_HOST}:3128"
ProxyPass "/somepath" "http://example.com:8080"
ProxyPassReverse "/somepath" "http://example.com:8080"
SSLProxyEngine on //needed for https backends
ProxyRemote "https://example.com:8443" "http://${AEM_PROXY_HOST}:3128"
ProxyPass "/somepath" "https://example.com:8443"
ProxyPassReverse "/somepath" "https://example.com:8443"
出力専用 IP アドレス dedicated-egress-ip-address
専用 IP アドレスは、SaaS ベンダー(CRM ベンダーなど)との統合や、IP アドレスの許可リストを提供する AEM as a Cloud Service 外部のソリューションと統合する場合のセキュリティを強化します。 専用 IP アドレスを許可リストに追加することで、AEM Cloud Service からのトラフィックのみが外部サービスに送信されるようになります。 このアプローチは、その他の許可されている IP からのトラフィックに追加されます。
同じ専用 IP がプログラム内のすべての環境に、オーサーサービスとパブリッシュサービスの両方に適用されます。
専用 IP アドレス機能を有効にしない場合、AEM as a Cloud Service からのトラフィックは、共有する一連の IP を流れていきます。 これらの IP は、AEM as a Cloud Service の他のお客様が使用します。
専用エグレス IP アドレスの設定は、フレキシブルポートエグレスと似ています。 主な違いは、設定後、トラフィックは常に専用の一意のIPからエグレスすることです。 その IP を確認するには、DNS リゾルバーを使用して、p{PROGRAM_ID}.external.adobeaemcloud.com に関連付けられている IP アドレスを特定します。 この IP アドレスは固定ですが、変更する必要がある場合は、事前に通知されます。
UI 設定 configuring-dedicated-egress-provision-ui
-
my.cloudmanager.adobe.com で Cloud Manager にログインし、適切な組織を選択します。
-
マイプログラムコンソールで、プログラムを選択します。
-
プログラムの概要 ページで、環境 タブに移動し、左側のパネルで ネットワークインフラストラクチャ を選択します。
-
開いた ネットワークインフラストラクチャを追加 ウィザードで、「専用エグレス IP アドレス」をクリックします。
-
地域ドロップダウンメニューから目的の地域を選択し、「続行」をクリックします。
-
「確認」タブには、選択内容と次の手順がまとめられています。 「保存」をクリックして、インフラストラクチャを作成します。
サイドパネルの ネットワークインフラストラクチャ 見出しの下に新しいレコードが表示されます。 これには、インフラストラクチャのタイプ、ステータス、地域、有効になっている環境などの詳細が含まれます。
API 設定 configuring-dedicated-egress-provision-api
プログラムごとに 1 回、POST /program/<programId>/networkInfrastructures エンドポイントが呼び出され、kind パラメーターの dedicatedEgressIp の値と地域が渡されます。 エンドポイントは、応答として network_id の他に、ステータスなどの他の情報も返します。
呼び出しの後、ネットワークインフラストラクチャがプロビジョニングされるまで、通常は 15 分ほどかかります。 Cloud Manager のネットワークインフラストラクチャ GET エンドポイントの呼び出しで「準備完了」のステータスが表示されます。
トラフィックルーティング dedicated-egress-ip-traffic-routing
HTTPまたはHTTPS トラフィックは、プロキシ設定に標準のJava™ システムプロパティを使用する場合、事前設定済みのプロキシを経由します。
portForwards パラメーターで宣言したポートで宛先とやり取りする HTTP/HTTPS 以外のトラフィックは、マッピングされたポートと共に、AEM_PROXY_HOST というプロパティを参照する必要があります。 次に例を示します。
DriverManager.getConnection("jdbc:mysql://" + System.getenv("AEM_PROXY_HOST") + ":53306/test");
api.windows.net
nonProxyHosts パラメーターに一致するホストnonProxyHosts パラメーターに一致するホストportForwards API パラメーターで宣言されている portOrig を使用して、AEM_PROXY_HOST 環境変数のプロキシホストに接続mysql.example.com:3306機能の使用 feature-usage
この機能は、プロキシ設定に標準の Java™ システムプロパティを使用する場合、送信トラフィックを発生させる Java™ コードまたはライブラリと互換性があります。 実際には、このアプローチでは、最も一般的なライブラリを含める必要があります。
次にコード例を示します。
public JSONObject getJsonObject(String relativePath, String queryString) throws IOException, JSONException {
String relativeUri = queryString.isEmpty() ? relativePath : (relativePath + '?' + queryString);
URL finalUrl = endpointUri.resolve(relativeUri).toURL();
URLConnection connection = finalUrl.openConnection();
connection.addRequestProperty("Accept", "application/json");
connection.addRequestProperty("X-API-KEY", apiKey);
try (InputStream responseStream = connection.getInputStream(); Reader responseReader = new BufferedReader(new InputStreamReader(responseStream, Charsets.UTF_8))) {
return new JSONObject(new JSONTokener(responseReader));
}
}
一部のライブラリでは、プロキシ設定に標準の Java™ システムプロパティを使用するために、明示的な設定が必要です。
Apache HttpClientを使用した例。この例では、Apache HttpClientでHttpClientBuilder.useSystemProperties()または使用HttpClients.createSystem():
public JSONObject getJsonObject(String relativePath, String queryString) throws IOException, JSONException {
String relativeUri = queryString.isEmpty() ? relativePath : (relativePath + '?' + queryString);
URL finalUrl = endpointUri.resolve(relativeUri).toURL();
HttpClient httpClient = HttpClientBuilder.create().useSystemProperties().build();
HttpGet request = new HttpGet(finalUrl.toURI());
request.setHeader("Accept", "application/json");
request.setHeader("X-API-KEY", apiKey);
HttpResponse response = httpClient.execute(request);
String result = EntityUtils.toString(response.getEntity());
}
デバッグの考慮事項 debugging-considerations
期待される専用 IP アドレスでトラフィックが実際に発信されていることを検証するには、目的のサービスでログを確認します(可能な場合)。 それ以外の場合は、呼び出し元の IP アドレスを返す https://ifconfig.me/ip などのデバッグサービスを呼び出すと便利です。
仮想プライベートネットワーク(VPN) vpn
VPN を使用すると、作成者、公開、またはプレビューインスタンスからオンプレミスインフラストラクチャまたはデータセンターに接続できます。 この機能は、データベースへのアクセスを保護する場合などに役立ちます。 また、VPN をサポートしている CRM ベンダーなどの SaaS ベンダーへの接続も可能になります。
IPSec 技術を搭載したほとんどの VPN デバイスがサポートされています。 このデバイスのリストの RouteBase の設定手順の列にある情報を参照してください。 表の説明に従って、デバイスを設定します。
- サポートは 1 つの VPN 接続に制限されています。
- プライベートホスト名を解決するには、DNS リゾルバーをゲートウェイアドレス空間にリストする必要があります。
UI 設定 configuring-vpn-ui
-
my.cloudmanager.adobe.com で Cloud Manager にログインし、適切な組織を選択します。
-
マイプログラムコンソールで、プログラムを選択します。
-
プログラムの概要 ページで、環境 タブに移動し、左側のパネルで ネットワークインフラストラクチャ を選択します。
-
開始される ネットワークインフラストラクチャを追加 ウィザードで、「仮想プライベートネットワーク」を選択し、必要な情報を入力してから、「続行」をクリックします。
-
地域 - インフラストラクチャを作成する必要がある地域。
-
アドレス空間 - アドレス空間に使用できるのは、独自のスペース内の 1 つの /26 CIDR(64 IP アドレス)またはそれより大きい IP 範囲のみです。
- この値を後で変更することはできません。
-
DNS情報 - リモート DNS リゾルバーのリスト。
- DNS サーバーのアドレスを入力した後、
Enterを押して別のアドレスを追加します。 - アドレスの後の
Xをクリックして削除します。
- DNS サーバーのアドレスを入力した後、
-
共有キー - VPN 事前共有キー。
- 「共有キーを表示」を選択してキーを表示し、その値を再確認します。
-
-
ウィザードの「接続」タブで、VPN 接続を特定するための 接続名 を入力し、「接続を追加」をクリックします。
-
接続を追加ダイアログボックスで、VPN 接続を定義し、「保存」をクリックします。
-
接続名 - 前の手順で指定した VPN 接続のわかりやすい名前。ここで更新できます。
-
アドレス - VPN デバイスの IP アドレス。
-
アドレス空間 - VPN 経由でルーティングする IP アドレス範囲。
- 範囲を入力した後、
Enterを押して別の範囲を追加します。 - 範囲の後の
Xをクリックして削除します。
- 範囲を入力した後、
-
IP セキュリティポリシー - 必要に応じてデフォルト値から調整します
-
-
ダイアログボックスが閉じて、ウィザードの「接続」タブに戻ります。 「続行」をクリックします。
-
「確認」タブには、選択内容と次の手順がまとめられています。 「保存」をクリックして、インフラストラクチャを作成します。
サイドパネルの ネットワークインフラストラクチャ 見出しの下に新しいレコードが表示されます。 これには、インフラストラクチャのタイプ、ステータス、地域、有効になっている環境などの詳細が含まれます。
API 設定 configuring-vpn-api
プログラムごとに 1 回、POST /program/<programId>/networkInfrastructures エンドポイントが呼び出されます。 設定情報のペイロードが渡されます。 この情報には、kind パラメーター、地域、アドレス空間(CIDR のリスト - この値は後で変更できません)、DNS リゾルバー(ネットワーク内の名前を解決するため)の vpn の値が含まれます。 また、ゲートウェイ設定、共有 VPN キー、IP セキュリティポリシーなどの VPN 接続情報も含まれます。 エンドポイントは、応答として network_id の他に、ステータスなどの他の情報も返します。
呼び出しの後、ネットワークインフラストラクチャがプロビジョニングされるまで、通常は 45~60 分かかります。 API の GET メソッドを呼び出してステータスを返すことができ、最終的に creating から ready に変わります。 すべてのステータスについては、 API ドキュメントを参照してください。
トラフィックルーティング vpn-traffic-routing
次の表にトラフィックルーティングを示します。
api.windows.net
nonProxyHosts パラメーターに一致するホストnonProxyHosts パラメーターに一致するホスト10.0.0.1:443ホスト名を指定することもできます。
portForwards API パラメーターで宣言されている portOrig を使用して AEM_PROXY_HOST 環境変数のプロキシホストにクライアントが接続する場合10.0.0.1:3306ホスト名を指定することもできます。
portForwards API パラメーターで宣言されている portOrig を使用して AEM_PROXY_HOST 環境変数のプロキシホストにクライアントが接続する場合設定に役立つドメイン vpn-useful-domains-for-configuration
次の図は、設定と開発に役立つ一連のドメインと関連 IP を視覚的に表したものです。 図の下の表に、これらのドメインと IP を示します。
p{PROGRAM_ID}.external.adobeaemcloud.comp{PROGRAM_ID}.{REGION}-gateway.external.adobeaemcloud.com環境での高度なネットワーク設定の有効化 enabling
プログラムの高度なネットワークオプションを設定したら、フレキシブルポートエグレス、専用エグレス IP アドレスまたは VPN のいずれで使用する場合であっても、環境レベルでそのオプションを有効にする必要があります。
環境の高度なネットワーク設定を有効にすると、オプションのポート転送と非プロキシホストも有効にすることができます。 柔軟性を持たせるために、パラメーターは環境ごとに設定できます。
-
ポート転送 - ポート転送ルールは、http または https プロトコルを使用しない場合に限り、80/443 以外の宛先ポートに対して宣言する必要があります。
- ポート転送ルールは、宛先ホストのセット(名前または IP およびポート)を指定することによって定義されます。
- http/https 経由のポート80/443を使用するクライアント接続でも、接続でプロキシ設定を使用して、高度なネットワークのプロパティを接続に適用する必要があります。
- 宛先ホストごとに、宛先ポートを 30000~30999 のポートにマッピングする必要があります。
- ポート転送ルールは、すべての高度なネットワークタイプで使用できます。
-
非プロキシ ホスト – 非プロキシ ホストでは、専用IPではなく共有IP アドレス範囲を経由するホストのセットを宣言できます。
- このアプローチは、共有IP アドレスを通じてエグレスするトラフィックをさらに最適化する可能性があるので、有用です。
- 非プロキシホストは、専用エグレス IP アドレスおよび VPN の高度なネットワークタイプでのみ使用できます。
UI を使用した有効化 enabling-ui
-
my.cloudmanager.adobe.com で Cloud Manager にログインし、適切な組織を選択します。
-
マイプログラムコンソールで、プログラムを選択します。
-
プログラムの概要ページから「環境」タブに移動し、左側のパネルの 環境 見出しの下から、高度なネットワーク設定を有効にする環境を選択します。 次に、選択した環境の「高度なネットワーク設定」タブを選択し、「ネットワークインフラストラクチャを有効にする」をタップまたはクリックします。
-
高度なネットワーク機能を設定ダイアログボックスが開きます。
-
「非プロキシホスト」タブでは、専用グレス IP アドレスと VPN に対して、オプションでホストのセットを定義できます。 これらの定義されたホストは、非プロキシ ホスト フィールドにホスト名を指定し、追加をクリックして、専用IP アドレスではなく共有IP アドレス範囲を通じてルーティングする必要があります。
- ホストがタブ上のホストのリストに追加されます。
- 複数のホストを追加する場合は、この手順を繰り返します。
- ホストを削除する場合は、行の右側にある「X」をクリックします。
- このタブは、フレキシブルポートエグレス設定では使用できません。
-
「ポート転送」タブでは、HTTP または HTTPS を使用しない場合、80/443 以外の宛先ポートに対するポート転送ルールをオプションで定義できます。 名前、送信元ポート、宛先ポートを入力し、「追加」をクリックします。
- ルールがタブ上のルールのリストに追加されます。
- 複数のルールを追加する場合は、この手順を繰り返します。
- ルールを削除する場合は、行の右側にある「X」をクリックします。
-
ダイアログボックスで「保存」をクリックして、設定を環境に適用します。
高度なネットワーク構成が、選択した環境に適用されます。 「環境」タブに戻ると、選択した環境に適用された設定の詳細とステータスが表示されます。
API を使用した有効化 enabling-api
環境の高度なネットワーク設定を有効にするには、環境ごとに PUT /program/<program_id>/environment/<environment_id>/advancedNetworking エンドポイントを呼び出す必要があります。
API はわずか数秒で応答し、updating のステータスを示します。 約 10 分後、Cloud Manager の環境 GET エンドポイントを呼び出すと、ready のステータスが表示され、環境へのアップデートが適用されたことが示されます。
環境ごとのポート転送ルールは、PUT /program/{programId}/environment/{environmentId}/advancedNetworking エンドポイントを呼び出し、設定パラメーターのサブセットではなく完全なセットを含めることによって更新できます。
専用エグレス IP アドレスと VPN の高度なネットワークタイプは、nonProxyHosts パラメーターをサポートします。 このサポートにより、専用IPではなく共有IP アドレス範囲を経由するホストのセットを宣言できます。 nonProxyHost URL は example.com または *.example.com のパターンに従うことができます(このパターンでは、ワイルドカードはドメインの先頭でのみ使用できます)。
環境のトラフィックルーティングルール(ホストまたはバイパス)がない場合でも、空のペイロードを渡して PUT /program/<program_id>/environment/<environment_id>/advancedNetworking を呼び出す必要があります。
環境での高度なネットワーク設定の編集と削除 editing-deleting-environments
環境に対して高度なネットワーク設定を有効にした後、設定の詳細を更新または削除できます。
UI を使用した編集または削除 editing-ui
-
my.cloudmanager.adobe.com で Cloud Manager にログインし、適切な組織を選択します。
-
マイプログラムコンソールで、プログラムを選択します。
-
プログラムの概要ページから「環境」タブに移動し、左側のパネルの 環境 見出しの下から、高度なネットワーク設定を有効にする環境を選択します。 次に、選択した環境の「高度なネットワーク設定」タブを選択し、省略記号ボタンをクリックします。
-
省略記号メニューで「編集」または「削除」を選択します。
- 「編集」を選択した場合は、前の UI を使用した有効化の節で説明した手順に従って情報を更新し、「保存」をクリックします。
- 「削除」を選択した場合は、ネットワーク設定を削除ダイアログボックスで「削除」を選択して削除を確認するか、「キャンセル」を選択して中止します。
変更は「環境」タブに反映されます。
API を使用した編集または削除 editing-api
特定の環境で高度なネットワーク機能を削除するには、DELETE [/program/{programId}/environment/{environmentId}/advancedNetworking]() を呼び出します。
プログラムのネットワークインフラストラクチャの編集と削除 editing-deleting-program
プログラムのネットワークインフラストラクチャを作成すると、編集できるプロパティは制限されます。 不要になった場合は、プログラム全体の高度なネットワーク インフラストラクチャを削除できます。
- 削除では、すべての環境の高度なネットワークが無効になっている場合にのみ、インフラストラクチャが削除されます。
- ネットワークインフラストラクチャのステータスが作成中、更新中または 削除中 の場合は編集できません。
- 作成後に編集できるのは、VPN の高度なネットワークインフラストラクチャタイプのみであり、その後は制限されたフィールドのみ編集できます。
- セキュリティ上の理由から、VPN の高度なネットワークインフラストラクチャを編集する際は、キー自体を編集していない場合でも、常に 共有キー を指定する必要があります。
UIを使用した編集、テスト、削除 delete-ui
-
my.cloudmanager.adobe.com で Cloud Manager にログインし、適切な組織を選択します。
-
マイプログラムコンソールで、プログラムを選択します。
-
プログラムの概要ページから、「環境」タブに移動します。
-
左側のパネルで、ネットワークインフラストラクチャをクリックします。
-
編集、テスト、または削除するインフラストラクチャの横にある
をクリックします。
-
編集、テスト、または 削除 をクリックします。
-
次のいずれかの操作を行います。
-
「編集」を選択すると、ネットワークインフラストラクチャを編集ウィザードが開きます。 インフラストラクチャの作成時に説明した手順に従い、必要に応じて編集します。
-
環境レベルで有効にする前に接続をセルフテストするために テスト を選択した場合、最近のテスト ドロップダウンメニューで、設定を再読み込みするエントリを選択し、テストをクリックします。 テストが実行されていない場合、メニューに 最近のテストはありません と表示されます。
または、ホスト テキストフィールドに、必要なターゲットホスト名を入力します。 次に、Port ドロップダウンメニューで、必要な適切なポートを選択します。 「テスト」をクリックします。 結果は、ダイアログボックスのテスト結果 セクションに表示されます。
-
「削除」を選択した場合は、ネットワーク設定を削除ダイアログボックスで「削除」を選択して削除を確認するか、「キャンセル」を選択して中止します。
-
変更は「環境」タブに反映されます。
APIを使用した編集と削除 delete-api
プログラムのネットワークインフラストラクチャを 削除 するには、DELETE /program/{program ID}/networkinfrastructure/{networkinfrastructureID} を呼び出します。
プログラムの高度なネットワーク インフラストラクチャの種類を変更する changing-program
プログラムに対して一度に設定できる高度なネットワークインフラストラクチャは、1 つのタイプのみです。 高度なネットワークインフラストラクチャは、フレキシブルポートエグレス、専用エグレス IP アドレス、または VPN のいずれかにする必要があります。
既に設定したタイプ以外の高度なネットワークインフラストラクチャタイプが必要であると判断した場合は、既存のタイプを削除して、別のタイプを作成します。 次の手順を実行します。
- すべての環境で高度なネットワーク機能を削除します。
- 高度なネットワークインフラストラクチャを削除します。
- 現在必要な、高度なネットワークインフラストラクチャタイプ(フレキシブルポートエグレス、専用エグレス IP アドレスまたは VPN)を作成します。
- 環境レベルで高度なネットワーク機能を再度有効にします。
ダウンタイムがビジネスに大きな影響を与える場合は、カスタマーサポートにお問い合わせください。既に作成された内容と変更の理由を説明します。
他のパブリッシュ地域の高度なネットワーク設定 advanced-networking-configuration-for-additional-publish-regions
高度なネットワーク機能が既に設定されている環境にさらに地域を追加すると、追加の公開地域からのトラフィックは既存のルールに従います。 デフォルトでは、一致するトラフィックはプライマリ地域を通じてルーティングされます。 ただし、プライマリ地域が使用できなくなった場合、その他の地域で詳細ネットワークが有効になっていないと、高度なネットワークトラフィックは破棄されます。 いずれかの地域で障害が発生した場合に、待ち時間を最適化して可用性を高めるには、追加の公開地域の高度なネットワークを有効にする必要があります。 次の節では、2 つの異なるシナリオについて説明します。
専用エグレス IP アドレス additional-publish-regions-dedicated-egress
プライマリ地域で既に有効になっている高度なネットワーク already-enabled
プライマリ地域で既に高度なネットワーク設定が有効になっている場合は、次の手順に従います。
- 専用の AEM IP アドレスが許可リストに表示されるようにインフラストラクチャをロックダウンした場合は、そのインフラストラクチャ内の拒否ルールを一時的に無効にします。 この手順をスキップすると、インフラストラクチャは新しい地域の IP アドレスからのリクエストを一時的に拒否します。
p1234.external.adobeaemcloud.comなどの完全修飾ドメイン名(FQDN)を使用してインフラストラクチャをロックダウンしている場合、この手順は必要ありません。 すべての AEM 地域では、同じ FQDN から高度なネットワークトラフィックを送信します。 - 高度なネットワークのドキュメントに記載されるように、Cloud Manager Create Network Infrastructure API への POST 呼び出しを通じて、セカンダリ地域のプログラム範囲のネットワークインフラストラクチャを作成します。 ペイロードの JSON 設定のプライマリ地域に対する唯一の違いは、地域プロパティです
- AEM トラフィックを許可するためにIPでインフラストラクチャをロックダウンする必要がある場合は、
p1234.external.adobeaemcloud.comに対応するIP アドレスを追加します。 地域ごとに 1 つ必要です。
どの地域にもまだ設定されていない高度なネットワーク not-yet-configured
手順は、前述の手順とほとんど同じです。 ただし、本番環境でまだ高度なネットワークが有効にされていない場合は、まずステージング環境で有効にして設定をテストできます。
- Cloud Manager Create Network Infrastructure API への POST 呼び出しを通して、すべての地域のネットワークインフラストラクチャを作成します。 ペイロードの JSON 設定のプライマリ地域に対する唯一の違いは、地域プロパティです。
- ステージング環境の場合は、
PUT api/program/{programId}/environment/{environmentId}/advancedNetworkingを実行して、環境範囲を指定した高度なネットワークを有効にし、設定します。 詳しくは、API のドキュメントを参照してください - 必要に応じて、できれば FQDN(例えば
p1234.external.adobeaemcloud.com)で、外部インフラストラクチャをロックダウンします。 それ以外の場合は、IP アドレスで行うことができます - ステージング環境が期待どおりに動作する場合は、実稼動環境用に環境範囲を定めた高度なネットワーク設定を有効にして設定します。
VPN vpn-regions
手順は、専用のエグレス IP アドレスの手順とほとんど同じです。 唯一の違いは、地域プロパティの設定がプライマリ地域とは異なることです。 さらに、オプションで connections.gateway フィールドを設定できます。 設定では、組織が運用する、新しい地域と地理的に近い、別の VPN エンドポイントにルーティングできます。
トラブルシューティング
次の点は、参考となるガイドラインとして提供され、トラブルシューティングのベストプラクティスを含んでいることをお勧めします。 これらのレコメンデーションは、問題の効果的な診断と解決を支援することを目的としています。
接続プーリング connection-pooling-advanced-networking
接続プーリングは、接続のリポジトリを作成および維持するためにカスタマイズされた技術です。接続を必要とする可能性のあるすべてのスレッドですぐに使用できる状態になっています。 様々なオンラインプラットフォームやリソースに数多くの接続プーリング手法があり、それぞれに独自のメリットと考慮事項があります。 お客様には、これらの手法を調査して、システムのアーキテクチャに最も適合する手法を特定することをお勧めします。
適切な接続プーリング戦略の実装は、システム設定における一般的な監視を修正するためのプロアクティブな手段です。これにより、パフォーマンスの最適化が妨げられることがよくあります。 Adobe Experience Manager(AEM)では、接続プーリングを正しく設定することで、外部呼び出しの効率を向上させることができます。 このアプローチにより、リソースの消費が削減されるだけでなく、サービス中断のリスクが軽減され、アップストリームサーバーとの通信時に失敗したリクエストが発生する確率が低くなります。
この情報に基づいて、アドビでは現在の AEM 設定を確認することをお勧めします。 また、高度なネットワーク機能の設定と共に接続プーリングを意図的に使用することも考慮してください。 並列接続数を管理し、古い接続を減らすことで、ネットワークのパフォーマンスを最適化できます。 これらのアクションにより、プロキシサーバーが接続制限に達するリスクが低減されます。 したがって、この戦略的実装は、リクエストが外部エンドポイントに到達できない可能性を減らすように設計されています。
接続制限に関するFAQ
高度なネットワーク機能を使用する場合、環境全体の安定性を確保し、下位の環境で使用可能な接続が使い果たされるのを防ぐために、接続数が制限されます。
接続数は AEM インスタンスごとに 1000 に制限され、接続数が 750 に達すると顧客にアラートが送信されます。
接続制限は、非標準ポートからの送信トラフィックにのみ適用されますか、それともすべての送信トラフィックに適用されますか?
制限は、高度なネットワーク機能(非標準ポートでのエグレス、専用のエグレス IP の使用または VPN)を使用した接続にのみ適用されます。
送信接続数は大幅に増加していないようです。 通知が届いたのはなぜですか?
顧客が動的に接続を作成する場合(リクエストごとに 1 つ以上など)、トラフィックが増加すると、接続が急増する可能性があります。
過去にも同様の状況が発生し、アラートがトリガーされなかった可能性はありますか?
アラートは、ソフトリミットに到達した場合にのみ送信されます。
上限に達した場合はどうなりますか?
ハード制限に達すると、高度なネットワークを介したAEMからの新しいエグレス接続(非標準ポートでのエグレス、専用エグレス IP、またはVPNを使用)がドロップされ、DoS攻撃から保護されます。
制限を引き上げることはできますか?
いいえ、接続数が多いと、パフォーマンスに大きな影響を与え、ポッドや環境全体で DoS の原因となる可能性があります。
一定期間が経過すると、AEM システムによって接続が自動的に閉じられますか?
はい、接続は、JVM レベルと、ネットワークインフラストラクチャの様々なポイントで閉じられます。 ただし、このワークフローは、実稼動サービスには遅すぎます。 接続プールを使用する場合、接続は、不要になった際に明示的に閉じるか、プールに戻す必要があります。 そうしないと、リソースの消費量が高くなりすぎて、リソースが枯渇する可能性があります。
接続数の上限に達した場合、ライセンスに影響し、追加コストが発生しますか?
いいえ、この制限に関連するライセンスやコストはありません。 これは技術的な制限です。
現在の使用量は、上限にどれくらい近づいていますか? 許可される上限はどれくらいですか?
接続数が 750 を超えるとアラートがトリガーされます。 AEM インスタンスあたりの接続数の上限は 1,000 です。
この制限は VPN に適用されますか?
はい、制限は VPN を含む高度なネットワーク機能を使用した接続に適用されます。
専用のエグレス IPを使用する場合、制限はまだ適用されますか?
はい、専用のエグレス IP を使用する場合、制限は引き続き適用されます。