すべてのプロダクト
Search
ドキュメントセンター

Container Compute Service:CCM が更新事前チェックに合格しない問題の対処方法

最終更新日:Jan 22, 2025

このトピックでは、Container Compute Service (ACS) クラスタを使用しているときに、Cloud Controller Manager (CCM) が更新事前チェックに合格しない問題のトラブルシューティング方法について説明します。

解決策

考慮事項

  • CCM を更新する前に、CCM の新機能について理解しておくことをお勧めします。詳細については、「Cloud Controller Manager」をご参照ください。

  • 更新事前チェック中にサービスを変更した場合、事前チェックの結果が不正確になる可能性があります。この場合は、事前チェックを再実行してください。 CCM が事前チェックに合格しない場合は、チケットを送信してください。

CCM 更新事前チェックのエラーメッセージと解決策

エラーメッセージ

原因

解決策

create a new load balancer

サービスの作成時または既存サービスの同期時に、Server Load Balancer (SLB) インスタンスが作成されます。

コンソールにログインするか、次のコマンドを実行して、サービスが Pending 状態かどうかを確認します。サービスが Running 状態であり、パブリック IP アドレスが使用されている場合は、事前チェックを再度実行します。 サービスが Pending 状態の場合は、チケットを送信してください。

kubectl get svc  [$Svc_Name] -n [$Namespace]
説明
  • [$Svc_Name] は、サービスの名前を指定します。

  • [$Namespace] は、サービスの名前空間を指定します。

modify the slb instance spec

SLB インスタンスのタイプが、サービスに指定されたタイプと異なります。

サービスオブジェクトのアノテーションで、service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec を SLB インスタンスの仕様に設定します。詳細については、「SLB を使用してサービスにアクセスする」をご参照ください。

delete the load balancer

サービスは存在しませんが、サービスに関連付けられている SLB インスタンスはまだ存在します。

SLB インスタンスが不要になった場合は、SLB コンソールで SLB インスタンスを削除します。 SLB インスタンスがまだ必要な場合は、チケットを送信してください。

modify the slb internet spec

SLB インスタンスの最大帯域幅または課金方法が、サービスに指定されたものと異なります。

  • 指定された帯域幅が無効な場合は、サービスオブジェクトのアノテーションで、service.beta.kubernetes.io/alibaba-cloud-loadbalancer-bandwidth を SLB インスタンスの対応する設定に設定します。詳細については、「帯域幅課金 SLB インスタンスを作成する」をご参照ください。

  • 指定された課金方法が無効な場合は、サービスオブジェクトのアノテーションで、service.beta.kubernetes.io/alibaba-cloud-loadbalancer-charge-type を SLB インスタンスの対応する設定に設定します。詳細については、「帯域幅課金 SLB インスタンスを作成する」をご参照ください。

remove backend servers

サービスのエンドポイントが、SLB インスタンスのバックエンドサーバーに指定されたものと異なります。

  • SLB コンソールでバックエンドサーバーの構成を変更していない場合:

    更新事前チェック中にサービスのエンドポイントを変更せず、事前チェックを再度実行します。

  • SLB コンソールでバックエンドサーバーの構成を手動で変更した場合:

    SLB インスタンスの vServer グループ構成を復元し、事前チェックを再度実行します。

add backend servers

stop listener

サービスのポートが、SLB リスナーに指定されたポートと異なります。

  • SLB コンソールでリスナー構成を変更していない場合:

    更新事前チェック中にサービスを変更せず、事前チェックを再度実行します。

  • SLB コンソールでリスナー構成を手動で変更した場合:

    次のコマンドを実行して異なる設定を見つけ、SLB コンソールでリスナー構成を復元し、事前チェックを再度実行します。

    kubectl -n [$Namespace] describe svc [$Svc_Name]

start listener

delete listener

サービスのポートが、SLB リスナーに指定されたポートと異なります。

  • SLB コンソールでリスナー構成を変更していない場合:

    更新事前チェック中にサービスを変更せず、事前チェックを再度実行します。

  • SLB コンソールでリスナー構成を手動で変更した場合:

    リスナーを削除し、事前チェックを再度実行します。

create listener

サービスのポートが、SLB リスナーに指定されたポートと異なります。

  • SLB コンソールでリスナー構成を変更していない場合:

    更新事前チェック中にサービスを変更せず、事前チェックを再度実行します。

  • SLB コンソールでリスナー構成を手動で変更した場合:

    削除されたリスナーを追加し、事前チェックを再度実行します。

update listener

サービスのポートが、SLB リスナーに指定されたポートと異なります。

  • SLB コンソールでリスナー構成を変更していない場合:

    更新事前チェック中にサービスを変更せず、事前チェックを再度実行します。

  • SLB コンソールでリスナー構成を手動で変更した場合:

    次のコマンドを実行して異なる設定を見つけ、証明書、アクセス制御設定、ヘルスチェック、Cookie など、SLB コンソールでリスナー構成を復元し、事前チェックを再度実行します。詳細については、「アノテーションを使用して CLB インスタンスを構成する」をご参照ください。

    kubectl -n [$Namespace] describe svc [$Svc_Name]

create VServerGroup

サービスのエンドポイントが、SLB インスタンスの vServer グループに指定されたものと異なります。

  • SLB コンソールで vServer グループ構成を変更していない場合:

    更新事前チェック中にサービスのエンドポイントを変更せず、事前チェックを再度実行します。 複数回事前チェックを実行した後も「create vServerGroup」エラーが続く場合は、チケットを送信してください。

  • SLB コンソールでバックエンドサーバーの構成を手動で変更した場合:

    SLB インスタンスの vServer グループ構成を復元し、事前チェックを再度実行します。

delete VServerGroup

サービスのエンドポイントが、SLB インスタンスの vServer グループに指定されたものと異なります。

  • SLB コンソールで vServer グループ構成を変更していない場合:

    更新事前チェック中にサービスのエンドポイントを変更せず、事前チェックを再度実行します。

  • SLB コンソールでバックエンドサーバーの構成を手動で変更した場合:

    SLB インスタンスの vServer グループ構成を復元し、事前チェックを再度実行します。

add VServerGroup backends

remove VServerGroup backends

modify loadbalancer instance charge type

サービスの課金方法が、SLB インスタンスに指定されたものと異なります。

  • SLB コンソールで CLB インスタンスの課金方法を PayByCLCU に手動で変更した場合:

    サービスから service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec アノテーションを削除します。

  • SLB コンソールで課金方法を変更していない場合:

    更新事前チェック中にサービスを変更せず、事前チェックを再度実行します。