Loading...

We've detected that your browser language is Chinese. Would you like to visit our Chinese website? [ Dismiss ]
By: Emma

vCenterの「no healthy upstream」エラーは再起動直後やメンテナンス作業後に発生することが多く、ほぼ必ず「503 Service Unavailable」のレスポンスを伴います。

このエラーの本質は、Envoyプロキシがvpxdvsphere‑uivapi‑endpointといったバックエンドサービスに接続できない状態を指します。主な原因は大きく2つ、ディスク容量の枯渇または証明書の有効期限切れです。

本ガイドでは5つのトラブルシューティング手法を紹介し、根本原因を特定してvSphere環境を迅速に復旧させる手順を解説します。

vCenterで「No Healthy Upstream」が発生する要因

vCenterのno healthy upstreamエラーの代表的な技術的原因を以下に記載します。

1. 証明書の期限切れ(最も多い原因)

証明書の有効期限切れが本エラーの最頻出要因です。VCSA内部通信において特に重要な2種類の証明書が存在します。

  • STS証明書:Security Token Service証明書が期限切れになると、SSOがトークンの検証を行えなくなり、内部サービスの認証がすべて停止します。
  • Machine SSL証明書:こちらが期限切れになると、リバースプロキシがバックエンドサービスと安全な接続を確立できず、503エラーが発生します。

2. ディスク容量の枯渇

VCSAの各パーティションはストレージ容量の制限に敏感です。パーティションが100%に達すると、サービスはログや一時ファイルを書き込めなくなり即座に異常終了します。代表的な箇所は下記です。

  • /storage/log:ログファイルの肥大化により容量が飽和します。
  • /storage/seat:統計情報やイベントデータで埋まり、vpxdサービスの障害を引き起こすケースが多いです。

3. サービスの異常停止(vsphere‑ui、vpxd)

「upstream」とはリクエストを処理する内部サービスのことです。これらが停止またはハングアップすると、プロキシは通信先を失います。

  • vsphere‑ui:クライアント画面を描画するWebコンソールサービス。
  • vpxd:vCenterの中核エンジン。データベース起因でクラッシュすると管理機能全体が利用不可となります。コアサービスが起動に失敗する場合、VMwareがホストと同期できない症状が出ることもあり、管理ネットワークまたは基盤データベースの整合性に深い問題がある兆候となります。

4. メモリ不足によるリソース枯渇

VCSA、特にアップグレード後は厳密なRAM確保が必要です。

  • OOM Killer:v7.0/v8.0以降は12GB以上のメモリを必要とします。メモリ割り当てが不足するとLinuxのOOM Killerがカーネル保護のため重要なJavaプロセスを強制終了し、サービスが正常状態になれなくなります。

5. DNS解決の失敗

vCenterはFQDN(完全修飾ドメイン名)で自身のエンドポイントを特定するため、正常なDNS動作が必須です。

  • 解決異常:VCSAが自身のFQDNを解決できない、または逆引きDNS(PTR)レコードが存在しない場合、サービス起動シーケンスが失敗し、プロキシと内部サービスの通信連鎖が断たれます。

「No Healthy Upstream」エラーの解決方法:トラブルシューティング手順

vCenterのno healthy upstreamの根本要因を把握したら、体系的な手順でサービスを修復できます。このエラーは基本的にEnvoyプロキシがリクエストの転送先となる正常なバックエンドサービスを見つけられない状態を示します。

再起動後あるいは通常運用中に本エラーが発生した場合でも、下記の技術手順に従うことで障害の特定と解消が可能です。

注記:
  1. トラブルシューティングを実施する前に、VCSAのSSHを有効にするかESXiのDCUIからアクセスしてください。
  2. 再起動やサービス再起動直後は「no healthy upstream」が一時的に表示されることがあります。続行する前に10‑15分待機し、サービスが完全に初期化されるのを待ってください。

手順1:ディスク空き容量を確認

各種設定を変更する前に、VCSAがプロセス実行に必要な空き領域を確保できているか確認してください。ディスク枯渇はサービス起動失敗の主要因です。

  1. VCSAへSSH接続し、シェルに入ります。
  2. 下記コマンドを実行します。

df -h

確認ポイント:出力結果から100%に達しているパーティションがないか確認します。VCSA環境では/storage/log/storage/coreが問題になるケースが最も多いです。

対処方法:/storage/logが満杯の場合、古い圧縮ログを手動で削除する必要があります。環境が現在のディスク割り当てを超えて成長している場合はESXi側の設定で仮想ディスクを拡張してください。その後下記コマンドで内部のリサイズ処理とサービスのリフレッシュを実行します。

service-control --stop --all && service-control --start --all

手順2:証明書の有効性を検証

証明書の期限切れはvCenter no healthy upstreamメッセージを引き起こす代表的な技術障害です。Security Token Service(STS)またはMachine SSL証明書が無効だと、サービス同士が相互認証を行えません。

注記:

証明書をリセットする前には必ずファイルベースのバックアップまたはVMスナップショットを取得してください。より安全かつ効率的なバックアップソリューションとしてi2Backupの活用をご検討ください。

下記コマンドを実行し、VCSA内の各ストアにある証明書の有効期限を確認します。

for i in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list); do echo "STORE: $i"; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $i --text | grep -ie "Not After"; done

対処方法:期限切れの証明書が存在する場合、VMware Certificate Managerユーティリティを起動します。

/usr/lib/vmware-vmca/bin/certificate-manager

証明書の不具合が原因の大半の「No Healthy Upstream」事案では、オプション8(Reset all Certificates:すべての証明書をリセット)が完全復旧に最も有効な選択肢となります。

手順3:サービス状態を確認

ディスクに空きがあり証明書も有効な場合、「upstream」側のサービス自体が停止またはクラッシュしている可能性があります。

どのサービスが異常な状態か特定するため下記を実行します。

service-control --status --all

確認ポイント:vsphere‑ui(HTML5クライアント)またはvpxd(vCenterコアサービス)が「Stopped」停止状態になっていないか確認します。

対処方法:重要なサービスが停止している場合、サービススタック全体を手動でクリーンに再起動します。

service-control --stop --all

service-control --start --all

手順4:DNSと時刻同期を確認

vSphereの各サービスは正確な時刻と名前解決に強く依存します。VCSAが自身を名前解決できない、または時刻がずれているとトークンが拒否されます。

  • DNS確認:vCenterが自身のFQDNを解決できることを確認します。

nslookup <vcenter‑fqdn>

  • 時刻確認:アプライアンスの現在時刻がインフラのNTPソースまたはドメインコントローラーと一致しているか確認します。

date

対処方法:時刻が数分以上ずれているとSecurity Token Serviceが認証リクエストを拒否し、upstreamエラーが発生します。vCenter Management Interface(VAMI)またはdateコマンドで時刻を修正し、NTP同期を有効にしてください。

手順5:UIログの確認(最終的な手がかり)

service‑control上ではサービスが起動しているように見えても「no healthy upstream」エラーが出る場合、vSphere ClientのJavaランタイム側に問題がある可能性が高いです。サービスプロセスは起動していても完全に初期化に失敗している場合、ヒントはwrapperログに残ります。

シェルにアクセスし、vSphere Clientのログを末尾から表示します。

tail -n 100 /var/log/vmware/vsphere-ui/logs/vsphere_client_virgo.log

確認ポイント:

  • lang.OutOfMemoryError:VCSAにUIサービスが必要とするJavaヒープサイズを支えるだけの物理RAMが割り当てられていないことを示します。アップグレード後の再起動時に本エラーが出る代表的な原因です。
  • lang.NullPointerException:プラグインの破損、またはルックアップサービスとの通信失敗を示すことが多いです。

対処方法:OutOfMemoryErrorが検出された場合はVCSAをシャットダウンし、vSphere設定にてメモリ割り当て量を増やしてください。

プラグイン関連の例外が発生している場合はSerenityデータベースのクリア、もしくはManaged Object Browser(MOB)を使用して古くなった拡張機能の登録解除を実施する必要があります。

FAQ

Q1:サービスを再起動してもvCenterで「no healthy upstream」が表示されるのはなぜですか?

A:根本的な原因(証明書期限切れ、RAM不足、DNSの問題)が解消されていない可能性が高いです。ログを確認するか、上記の簡易トラブルシューティングコマンドを実行し問題箇所を特定してください。

Q2:SSHアクセスなしでvCenter no healthy upstreamを修復できますか?

A:可能です。ESXi DCUIを使用しVCSAシェルにアクセスするか、VAMIから時刻・DNSの問題を修正できます。証明書リセットにはSSHが便利ですが必須ではありません。

Q3:VMスナップショットを使用してエラーを修復することは安全ですか?

A:スナップショットのロールバックは一時的な回避策になり得ますが、長期的な解決策としては推奨されません。ロールバック実行前には必ずファイルベースのバックアップを取得し、事後的に根本原因(例:証明書期限切れ)を解消してください。

Q4:df‑hでディスク容量は正常に見えるのにエラーが発生するのはなぜですか?

A:DNS、時刻同期、もしくはサービスのデッドロックが原因の可能性が高いです。まずDNS解決と時刻を確認し、そのあと全サービスを再起動してください。

Q5:vCenter 8.0でEnvoyプロキシが起動しているか確認する方法は?

A:コマンド service-control --status envoyproxy を実行します。停止している場合は service-control --start envoyproxy で再起動します。

Q6:証明書を修正したあとvCenterの再起動は必要ですか?

A:必要です。証明書リセット後は service-control --stop --all && service-control --start --all で全サービスを再起動し変更を適用してください。

Q7:vCenterアップグレード後にだけエラーが発生するのはなぜですか?

A:アップグレードにより必要なRAM量が増加したり、証明書が自動更新されなかったりすることが要因です。まずメモリ割り当てと証明書の有効期限を確認してください。

Q8:プラグインの問題がvCenter no healthy upstreamを引き起こすことはありますか?

A:あります。破損または古いプラグインによりvsphere‑uiサービスがクラッシュします。UIログのNullPointerExceptionを確認し、古いプラグインの登録を解除してください。

Q9:本エラーを回避するためのvCenter 8.0の最小RAM要件はいくつですか?

A:推奨16GB、最小12GBです。ただし12GB環境ではOOM Killerやno healthy upstreamエラーが発生しやすくなります。

Q10:vCenter再起動後、トラブルシューティングを開始するまでどれくらい待機すべきですか?

A:10‑20分待機してください。再起動やアップグレード後はサービスの完全起動に時間を要します。20分経過してもエラーが解消しない場合にトラブルシューティングを開始してください。

まとめ

vCenterのno healthy upstreamエラーは、本質的にVCSAのコアサービス同士の通信ができなくなっている状態を知らせるシグナルです。503メッセージはリバースプロキシから返される汎用的な応答に過ぎませんが、証明書期限切れ、ディスク枯渇、サービスクラッシュといった根本原因はCLIを活用した体系的な手順で簡単に特定可能です。

no healthy upstreamエラーを効果的に解決するには、まずSTS証明書と各パーティションの状態確認を優先してください。適切なリソース余裕を確保しサービスログを監視することで、再起動後にno healthy upstreamが発生する事態を予防し、vSphere環境の安定稼働を維持できます。証明書やサービスの大規模な修復作業を実施する前には、必ずファイルベースのバックアップまたはVMスナップショットを取得してください。

概要は準備中です

関連記事

[解決済み] VMware「ホストを同期できない」エラーの解決方法
vCenter と ESXi 管理エージェント間の通信断の箇所を特定し、VMware「ホストを同期できない」エラーを解消します。本ガイドでは、サービスのハング、ポート 902 の接続性、ゲスト OS‑ホスト間の時刻ずれといった項目をトラブルシューティングし、vCenter のホスト同期障害を解決する実績のある手順を紹介します。
記事を読む
VMware HA:vSphere 高可用性完全ガイド
このガイドでは、リーダー選出からデータストアハートビートまで、VMware vSphere HAの内部動作メカニズムを解説します。VMware HAのメリットとデメリットを分析することで、IT管理者は迅速な復旧とリソース負荷の均衡を図ったVMwareクラスタを適切に設計できます。
記事を読む
vCenter 間で VMware 仮想マシンを移行する 4 つの手法
本記事ではvCenter間でVMware仮想マシンを移行する4つの安定的な手法を紹介し、停止時間、規模、環境の複雑さに応じて適切な移行方式を選定するための参考情報を提供します。
記事を読む
VMware P2V:エンタープライズ無停止移行ガイド
物理環境のワークロードを仮想環境へ移行することは、データセンターのモダナイゼーションにおける重要な工程です。本ガイドではVMware P2V移行に伴う技術的課題を整理し、データの整合性と業務の連続稼働を担保する専門的な施策を紹介します。
記事を読む
目次:
最新情報を購読
最新のインサイト、ニュース、限定コンテンツをお届けします。いつでも配信解除が可能です。
購読する
ビジネスデータのセキュリティ強化を始めませんか?
60日間の無料トライアルまたはデモで、Info2softが企業データをどのように保護するかをご確認ください。
フォームにご記入の上、送信してください。担当者より追ってご連絡いたします。
このフォームを送信することにより、 プライバシー通知を読み、同意したことを確認します。
{{ isSubmitting ? '送信中...' : '送信する' }}