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

Container Compute Service:Cloud Controller Manager (CCM) コンポーネントのアップグレードチェックの失敗

最終更新日:Mar 01, 2026

Container Compute Service (ACS) クラスターで Cloud Controller Manager (CCM) をアップグレードすると、システムは事前チェックを実行し、各 Server Load Balancer (SLB) インスタンスが対応する Kubernetes サービス仕様と一致することを確認します。不一致が見つかった場合、事前チェックは失敗し、意図した変更を説明するエラーメッセージが返されます。

このトピックでは、各事前チェックエラーをカテゴリ別に一覧表示し、根本原因を説明し、解決手順を説明します。

事前準備

  • Cloud Controller Manager のドキュメントを確認し、新しいバージョンで導入される変更点を理解してください。

  • 事前チェックの進行中は、いかなるサービスも変更しないでください。事前チェック中にサービスを変更すると、不正確な結果が生じる可能性があります。その場合は、事前チェックを再実行してください。それでも事前チェックが失敗する場合は、チケットを送信してください。

重要

CCM は、Kubernetes サービスのアノテーションに基づいて SLB インスタンスを管理します。CCM が SLB インスタンスを管理している間に SLB コンソールで手動で変更すると、設定ドリフトが発生し、これが事前チェック失敗の一般的な原因となります。ロードバランサーは、Kubernetes サービスのアノテーションを通じて完全に管理するか、外部で管理される SLB を使用するかのいずれかの方法を選択し、両方のアプローチを混在させないでください。

SLB の仕様と課金の不一致

これらのエラーは、SLB インスタンスの仕様、帯域幅、課金方法がサービスアノテーションで指定された内容と異なる場合に発生します。

modify the slb instance spec

原因:SLB インスタンスの仕様が、サービスアノテーションの値と一致しません。

解決策:サービスアノテーションの service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec を、実際の SLB インスタンスの仕様と一致するように設定します。詳細については、「アノテーションを使用した CLB インスタンスの設定」をご参照ください。

modify the slb internet spec

原因:SLB の最大帯域幅または課金方法が、サービスアノテーションと一致しません。

解決策:

  • 帯域幅が正しくない場合は、サービスアノテーションの service.beta.kubernetes.io/alibaba-cloud-loadbalancer-bandwidth を SLB インスタンスと一致するように設定します。詳細については、「帯域幅課金型の CLB インスタンスの作成」をご参照ください。

  • 課金方法が正しくない場合は、サービスアノテーションの service.beta.kubernetes.io/alibaba-cloud-loadbalancer-charge-type を SLB インスタンスと一致するように設定します。詳細については、「帯域幅課金型の CLB インスタンスの作成」をご参照ください。

modify loadbalancer instance charge type

原因:サービスの課金方法が SLB インスタンスと異なります。

解決策:

  • SLB コンソールで Classic Load Balancer (CLB) インスタンスの課金方法を PayByCLCU に手動で変更した場合は、サービスから service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec アノテーションを削除します。

  • SLB コンソールで課金方法を変更していない場合は、事前チェック中にサービスを変更せず、事前チェックを再実行してください。

サービスのライフサイクルの不一致

これらのエラーは、SLB インスタンスのライフサイクルが Kubernetes サービスと同期していない場合に発生します。

create a new load balancer

原因:サービスの作成または既存のサービスの同期の一環として、SLB インスタンスが作成されています。

解決策:サービスが Pending または Running 状態であるかを確認します:

kubectl get svc <service-name> -n <namespace>

<service-name> をサービス名に、<namespace> をサービスの名前空間に置き換えます。

  • サービスが Running 状態で、パブリック IP アドレスを持っている場合は、事前チェックを再実行してください。

  • サービスが Pending 状態の場合は、チケットを送信してください。

delete the load balancer

原因:サービスは存在しなくなりましたが、関連付けられた SLB インスタンスが削除されていません。

解決策:

  • SLB インスタンスが不要になった場合は、SLB コンソールで削除してください。

  • SLB インスタンスがまだ必要な場合は、チケットを送信してください。

リスナー設定の不一致

これらのエラーは、サービスポートの設定が SLB リスナーの設定と異なる場合に発生します。これは通常、SLB コンソールでリスナーを手動で変更した後に発生します。

stop listener / start listener

原因:サービスポートが SLB リスナーポートと異なります。

解決策:

  • SLB コンソールでリスナーを変更していない場合は、事前チェック中にサービスを変更せず、事前チェックを再実行してください。

  • SLB コンソールでリスナーを手動で変更した場合は、サービス設定を SLB リスナーと比較し、リスナー設定を復元してから、事前チェックを再実行してください:

      kubectl -n <namespace> describe svc <service-name>

delete listener

原因:サービスポートが SLB リスナーポートと異なります。

解決策:

  • SLB コンソールでリスナーを変更していない場合は、事前チェック中にサービスを変更せず、事前チェックを再実行してください。

  • SLB コンソールでリスナーを手動で変更した場合は、余分なリスナーを削除し、事前チェックを再実行してください。

create listener

原因:サービスポートが SLB リスナーポートと異なります。

解決策:

  • SLB コンソールでリスナーを変更していない場合は、事前チェック中にサービスを変更せず、事前チェックを再実行してください。

  • SLB コンソールでリスナーを手動で変更した場合は、不足しているリスナーを追加し、事前チェックを再実行してください。

update listener

原因:サービスポートが SLB リスナーポートと異なります。

解決策:

  • SLB コンソールでリスナーを変更していない場合は、事前チェック中にサービスを変更せず、事前チェックを再実行してください。

  • SLB コンソールでリスナーを手動で変更した場合は、サービス設定を SLB リスナー設定と比較し、リスナー設定 (証明書、アクセス制御設定、ヘルスチェック、Cookie を含む) を復元します。その後、事前チェックを再実行してください。これらの設定を制御するアノテーションの詳細については、「アノテーションを使用した CLB インスタンスの設定」をご参照ください。

      kubectl -n <namespace> describe svc <service-name>

バックエンドサーバーと vServer グループの不一致

これらのエラーは、サービスエンドポイントが SLB インスタンスのバックエンドサーバーまたは vServer グループの設定と異なる場合に発生します。

remove backend servers / add backend servers

原因:サービスエンドポイントが SLB バックエンドサーバーの設定と異なります。

解決策:

  • SLB コンソールでバックエンドサーバーの設定を変更していない場合は、事前チェック中にサービスエンドポイントを変更せず、事前チェックを再実行してください。

  • SLB コンソールでバックエンドサーバーの設定を手動で変更した場合は、SLB インスタンスの vServer グループ設定を復元し、事前チェックを再実行してください。

create VServerGroup / delete VServerGroup / add VServerGroup backends / remove VServerGroup backends

原因:サービスエンドポイントが SLB インスタンスの vServer グループ設定と異なります。

解決策:

  • SLB コンソールで vServer グループを変更していない場合は、事前チェック中にサービスエンドポイントを変更せず、事前チェックを再実行してください。create VServerGroup エラーが複数回の事前チェック後も続く場合は、チケットを送信してください。

  • SLB コンソールでバックエンドサーバーの設定を手動で変更した場合は、SLB インスタンスの vServer グループ設定を復元し、事前チェックを再実行してください。

サポートの利用

解決手順に従っても事前チェックが失敗し続ける場合は、チケットを送信してください。トラブルシューティングを迅速化するために、次の情報を含めてください:

  • ACS クラスター ID

  • アップグレード元とアップグレード先の CCM バージョン

  • 正確な事前チェックのエラーメッセージ

  • サービスの YAML 出力:

      kubectl get svc <service-name> -n <namespace> -o yaml
  • SLB インスタンス ID と SLB コンソールでの現在の設定