クラスターにパブリックの containers.appdomain.cloud サブドメインがないのはなぜですか?

仮想プライベート・クラウド クラシック・インフラストラクチャー

Ingress コントローラー・サブドメインを介してアプリを公開すると、パブリック経路の代わりに <service_name>-<project_name>.router.default.svc.cluster.local という形式のローカル・サブドメインを取得します。

Red Hat OpenShift Web コンソールまたは別のアプリ経路をブラウザーで開こうとすると、以下のようなエラーが表示されることがあります。

Application is not available
The application is currently not serving requests on this endpoint.

クラスターが作成されて 通常 状態になった後でも、Ingress コントローラーのサブドメイン・ネットワーキングとロード・バランシングのコンポーネントのデプロイには時間がかかります。

ネットワーキング・コンポーネントが完全にプロビジョンされる前にアプリを公開した場合、またはコンポーネントでエラーが発生した場合、アプリはデフォルトの Ingress コントローラーの svc.cluster.local ドメインを使用して内部でのみ公開できます。

コンポーネントが完全にプロビジョンされると、<cluster-name>-<accountID-hashed>-<ssll>.<region>.containers.appdomain.cloud という形式のパブリック Ingress コントローラー・サブドメインがアプリで使用可能になります。

  1. クラスターを作成した後、クラスターが normal 状態になっても、アプリを公開するまでしばらく待ちます。

  2. Master Status」を確認します。 「Master Status」が「Ready」でない場合は、状況を確認し、トラブルシューティング情報に従って問題を解決してください。

    ibmcloud oc cluster get -c <cluster_name_or_ID>
    
  3. ネットワーク・コンポーネントがデプロイ時にマスターと通信するためのパブリック接続がクラスターにあることを確認します。

    • パブリックおよびプライベート・クラウド・サービスのエンドポイントが有効になっているVPCクラスタ:クラスタが接続されている 各サブネットでパブリック・ゲートウェイが有効になっていることを確認します。 Web コンソールや OperatorHub などのデフォルト・コンポーネントが、セキュアなパブリック接続を使用して、リモートのプライベート・レジストリーからイメージをプルするなどのアクションを実行するためには、パブリック・ゲートウェイが必要です。 クラスターに対してプライベート・サービス・エンドポイントのみが有効にされている場合、パブリック・ゲートウェイは必要ありません。OpenShift Web コンソールや OperatorHub などの OpenShift コンポーネントにアクセスするのに、プライベートクラウド・サービス・エンドポイントがデフォルトで使用されるためです。
    • クラシック・クラスター:
      • 手順 2 の出力で、クラスターにパブリック・サービス・エンドポイント URL があることを確認します。 クラスタにパブリック・クラウド・サービスのエンドポイントがない場合は、有効にします。
      • クラスター内の少なくともいくつかのワーカー・ノードにパブリック IP アドレスがあることを確認します。 ワーカーノードがない場合は、少なくとも1つのワーカープールにパブリックVLANを設定する必要があります。
        ibmcloud oc workers -c <cluster_name_or_ID>
        
  4. 手順 2 の出力で、Ingress Subdomain があることを確認します。 クラスター内の Ingress コンポーネントをプロビジョンしてからでないと、Ingress コントローラー・コンポーネントを作成できません。 Ingress SubdomainIngress Secret がない場合は、クラスターの作成後に Ingress サブドメインが存在しないのはなぜですか? を参照してください。

  5. Ingress コントローラー・サブドメインのホスト名の形式が <cluster-name>-<accountID-hashed>-<ssll>.<region>.containers.appdomain.cloud であることを確認します。

    ibmcloud oc nlb-dns ls -c <cluster_name_or_ID>
    
    • クラスターの作成後 2 時間経っても Ingress コントローラー・サブドメインが更新されない場合は、クラスターのマスターの状況を再度確認し、トラブルシューティングの手順に従って問題を解決してください。

トラブルシューティングの手順を実行しても問題が解決しない場合は、ヘルプの入手を参照してください。