vSphere Web Client で「503 Service Unavailable」エラーが発生した場合:どう対処すべきか?
vSphere の中央管理拠点である VMware vCenter Server は、仮想化データセンター内の ESXi ホスト、クラスター、VM、およびその他のコンポーネントを管理するために使用されます。このブログ記事では、 503 サービス利用不可 vCenter に接続しようとした際に vSphere Client で表示されるエラーについて。このエラーの考えられる原因と解決方法については、以下をご覧ください。
“の"503 Service Unavailable"エラー(” )とは何ですか?
503 サービス利用不可 は、クライアントがサーバーにリクエストを送信した際にサーバーから返される標準的なHTTPステータスコードの一つです。5xxクラスのHTTPステータスコードは、サーバーエラーをユーザーに通知するために使用されます。これに基づき、 503 サービス利用不可 これは、サーバー側のエラーを示すレスポンスです。通常、このエラーはサーバーがリクエストを処理できないことを示しており、アプリケーションをホストしているWebサーバーで問題の原因を調査する必要があります。
以下は、VMware vSphere Clientにおけるこのエラーの全文です:
503 Service Unavailable (Failed to connect to endpoint: [N7Vmacore4Http20NamedPipeServiceSpecE:0x000055615a4d7a70] _serverNamespace = / action = Allow _pipeName =/var/run/vmware/vpxd-webserver-pipe)
vCenterの場合 503 Service Unavailable エラーが発生する場合、その原因はさまざまな要因による可能性があります:
- 一部のサービスはまだ読み込まれておらず、実行されていません(よくある問題として、リバースプロキシサービスやvSphere Web Clientサービスが停止していることが挙げられます)。
- vCenter Serverはメンテナンス中です
- vCenter Server に過負荷がかかっています
- vCenter Serverでディスクの問題が発生しました
- vCenterで使用されているデータベースに問題があります
- ファイアウォールの設定ミス(WindowsにインストールされたvCenterの場合)およびネットワークの問題
エラーはクライアント側ではなく、vCenterサーバー上で特定し、修正する必要があります。
サービスはまだ開始されていません
vCenterインスタンスを起動したばかりで、必要なサービスがすべてまだ起動していない場合は、数分待ってから再度お試しください。
- 別のクライアントからvCenterに接続してみてください。
それでも解決しない場合は、必要なサービスがすべて起動しているか確認してください。
- Webブラウザで、vCenterのIPアドレスまたはFQDN(完全修飾ドメイン名)とポート番号5480を入力して、アプライアンス管理インターフェース(vCenter Server Appliance用)を開きます。例:
https://192.168.101.103:5480/ui/services - vCenterサービスのステータスを確認するには、
Servicesセクション。たとえば、vSphere Web Client サービスがStarted、そしてvCenter ServerサービスはStopped、VMware503 Service Unavailableエラーが発生する可能性があります。
- vCenterサービスのステータスは、コンソールおよびコマンドラインインターフェイス(CLI)で確認できます。SSHログイン、コンソールCLI、およびBashシェルを有効にするには、
AccessvCenter Appliance管理インターフェースのセクション。
- 別の方法として、vCenter Server Appliance(VCSA)のDCUI(Direct Console User Interface)でBashシェルとSSHアクセスを有効にすることもできます。
Troubleshooting Modeオプション。

-
お使いのコンピュータから以下のコマンドを実行し、コンピュータとvCenterサーバーが接続されていることを確認してください(vCenterのホスト名またはIPアドレスを入力してください):
telnet vcenter_fqdn 9443 - SSH経由でvCenterに接続するか、VCSAコンソールに接続します(
Alt+F1vCenterのDCUIにログインし、次のように入力しますshell,そして、押してくださいEnter). -
vCenter を実行しているマシンで以下のコマンドを実行し、vCenter サービスの状態を確認します:
service-control --status --all

- 外部のプラットフォーム・サービス・コントローラー(PSC)がある場合は、vCenterとPSC間の接続を確認してください。また、PSC上のサービスも確認してください。
-
一部のサービスが停止している場合は、次のコマンドを実行してすべてのサービスを開始してください:
service-control --start --all -
vSphere Client サービスを停止して、再度起動してみてください:
service-control --stop vsphere-client
service-control --start vsphere-client - サービスが開始されるまで10~15分ほど待ち、その後vSphere ClientからvCenterにアクセスしてみてください。
ログファイルを確認する
ログファイルを確認することで、vCenterを含むエラーの原因を特定するのに役立ちます 503 Service Unavailable エラー。
まず、 vsphere_client_virgo.log ファイル。
- Windows 版の vCenter Server では、ログは次の場所に保存されます:
C:ProgamDataVMwarevCenterServerlogsvsphere-clientlogs - vCenter Server Appliance の場合、vCenter のログは次の場所に保存されます:
/var/log/vmware/vsphere-client/logs/
また、以下の点もご確認ください vpxd.log ファイル。
- Windows上で動作するvCenterでは、
vpxd.logは次の場所に保存されています:
C:ProgramDataVMwarevCenterServerlogsvmware-vpx - vCenter Server Appliance では、
vpxd.logは次の場所に保存されています:
/var/log/vmware/vpxd/
利用可能なハードウェアリソースが不足しています
ディスク容量不足はvCenterの原因にはなりません 503 サービス利用不可 エラーそのものです。ただし、空きディスク容量がないと一部のサービスが起動できず、これが原因で 503 サービス利用不可 エラー。vCenterのストレージレイテンシが高いことも、このエラーの原因となる可能性があります。VCSA 6.5以降、アプライアンスには12個の仮想ディスクが提供されるようになりました(それ以前のVCSAでは2個でした)。そのため、いずれかの仮想ディスクで問題が発生する可能性があります。vCenter Serverに過負荷がかかっている場合、サーバーが処理能力を超えているため、リクエストを処理できなくなります。
- 空きディスク容量を確認し、vCenter Server側でコマンドを実行してください。vCenter Server Applianceを使用している場合は、次のコマンドを実行してください:
df -h - その
/storage/archive/VCSA 6.7 ではパーティションが満杯になることがありますが、これは VMware の vCenter 6.7 の設計上、想定内(正常)の動作です。空きメモリとプロセッサリソースを確認してください:
top - vCenter を実行しているマシンのファイルシステムを確認してください。次のコマンドを使用してください
e2fsckVCSAのファイルシステムを確認し、次のコマンドを実行しますe2fsck -y filesystem例えば:
e2fsck -y /dev/sda1 - エラーが見つかり、修正された場合は、vCenter Server を再起動してください:
reboot
vCenter データベースに関する問題
データベースは、vCenter Server を正常に動作させるために不可欠なコンポーネントです。データベースが正常に動作していない場合、vCenter で次のようなエラーが発生します。"vCenter 503 サービスが利用できません"というエラーが発生することがあります。考えられるデータベースの問題と、その解決方法について見ていきましょう。
場合によっては、次のようなエラーが vpxd ログファイル:
An unrecoverable problem has occurred, stopping the VMware VirtualCenter service. Error: Error[VdbODBCError] (-1) "ODBC error: (23505) - ERROR: duplicate key value violates unique constraint "pk_vpx_vm_virtual_device";
Error while executing the query" is returned when executing SQL statement "INSERT INTO VPX_VM_VIRTUAL_DEVICE
- vCenterがWindowsにインストールされている場合は、 イベント ビューアー アプリケーションのイベントログを確認するには。
これは、vCenterの正常な動作に使用される組み込みのPostgresデータベース内のエントリが重複していることに起因する不具合です。
- vCenter Server Appliance のコマンドラインインターフェースを開き、たとえば SSH 経由でサーバーに接続します。
- Postgresのログディレクトリに移動します:
cd /var/log/vmware/vpostgres - ログファイルを確認してください。ログファイルの名前は
postgresql-“dayofmonth”.log形式。たとえば、その月の3日目のログファイルは"postgresql-03.log"。もし今日が5月3日であれば、該当するログファイルの内容を確認してください:cat postgresql-03.log
2020-05-03 16:05:12.749 UTC 38a12db9.5481 1008636 VCDB vc ERROR: duplicate key value violates unique constraint “pk_vpx_vm_virtual_device”
2020-05-03 16:05:12.749 UTC 38a12db9.5481 1008636 VCDB vc DETAIL: Key (id, device_key)=(8101, 4002) already exists. - あのことを覚えていますか
IDそしてDEVICE_KEYこの例では、これらの値はそれぞれ8101と4002です。 - vCenterで使用されている組み込みのPostgresデータベースに接続します:
/opt/vmware/vpostgres/current/bin/psql -d VCDB -U postgres - 重複しているエントリを削除してください:
DELETE FROM vc.vpx_vm_virtual_device where id=’8101′ and device_key=’4002′;
"DELETE 1"出力に表示されるということは、すべて正常であることを意味します。 - データベースCLIを終了します:
q - 種類
rebootvCenter Server を再起動してください。vCenter Server および各サービスが起動するまで待ち、vSphere Client を開いてみてください。
再起動後に同じエラーが再び発生する可能性があります。データベースのログを再度確認してください。重複エントリが再び作成されていた場合は、それらを削除してvCenterを再起動してください。問題が解決するまで、重複エントリの削除とvCenter Serverの再起動を数回繰り返す必要がある場合があります。
- 場合によっては、影響を受けたVMを特定し、インベントリからそのVMを削除した後、再度インベントリに登録(追加)する必要があることがあります。
- この方法で問題が完全に解決しない場合は、vCenter を vCenter 6.7 以降にアップグレードしてみてください。
- SQLデータベースを使用している場合は、SQLデータベースのログを保存するための空きディスク容量があるか確認してください。SQLデータベースのログ用ファイルシステムに空き容量がない場合、エラーが発生する可能性があります。
権限に関する問題
vCenterがWindows Serverにインストールされている場合、アカウントの権限に関する問題が発生することがあります。
"バッチジョブとしてログオンするグループポリシーエディタで""ポリシーを確認し、必要なアカウントがすべて存在していることを確認してください。vCenterがインストールされているWindows Serverで権限が不足していると、vSphereが 503 Service Unavailable エラー。
- Windows でローカル グループ ポリシー エディターを開きます (
Start > Run > gpedit.msc). - グループポリシーエディターで、次の場所へ移動します
Computer Configuration > Windows Settings > Security Settings > Local Policies > User Rights Assignment > Log on as a batch job. - 以下のユーザーアカウントがポリシーの対象外となっている場合は、追加してください:
cm
content-library
eam
imagebuilder
mbcs
netdumper
perfcharts
rbd
vapiEndpoint
vmware-vpostgres
vsan-health
vsm
vsphere-client
vsphere-ui - クリック
Add User or Groupアカウントを追加するには。
- 次のコマンドを使用して、vSphere Client サービスを停止および開始します。
service-control --stop vsphere-client
service-control --start vsphere-client - vSphere ユーザーインターフェイス サービスを開始します:
service-control --start vsphere-ui - サービスが開始されるまでお待ちください。
- vCenter Server を再起動し、vCenter が正常に動作しているか確認してください。
通常、グループポリシーエディターでこのポリシーが手動で設定されるまでは、必要なアカウントはvCenterのインストーラーによって自動的に追加されるはずです。
ネットワークおよびDNSに関する問題
vCenter の DNS 名が正しく設定されており、vCenter Server の IP アドレスが解決されることを確認してください。DNS のエントリに誤りがある場合、次のエラーが発生する可能性があります。 503 Service Unavailable エラー。vCenter をインストールする際は、ステージ 1 の手順 7(ネットワーク設定の構成)で DNS 名を設定してください。

外部PSCを使用している場合、PSCのIPアドレスは、フォワードルックアップとリバースルックアップの両方において解決可能でなければなりません。
- のホスト名を確認してください
/etc/hostsvCenter Server Appliance 上で。このファイルに、完全修飾ドメイン名(FQDN)と短縮名が以下の形式で記載されていることを確認してください:
vCenter_IP vCenter Server Appliance FQDN vcenter short name
例えば:
192.168.101.103 vCenter6-7.vsphere.local vCenter6-7 - DNSの設定を変更した後、
vpxdサービス:
service vmware-vpxd restart - のステータスを確認できます
vpxd次のコマンドでサービスを実行します:
vpxd status service vmware-vpxd status - PSC上で、関連するサービスを再起動するために以下のコマンドを実行してください:
/etc/init.d/vmware-stsd restart
/etc/init.d/vmware-sts-idmd restart
service vmware-cm restart - を再起動する vpxd vCenterがインストールされているマシンでのサービス:
service vmware-vpxd restart - 必要なサービスがすべて起動するまで待ち、VMware vSphere Client を開いてみてください。
ネットワークの問題を最小限に抑えるため、PSC を組み込んだ vCenter 展開モデルの使用をお勧めします。vCenter 7.0 などの最新バージョンの vCenter では、PSC を組み込んだインストールのみがサポートされています。
それでもvCenterが表示される場合は 503 Service Unavailable エラーが発生した場合は、次の方法を試してください。
- IPv6を有効または無効にしてみてください。開いてください
/etc/sysctl.confそして、net.ipv6.conf.eth0.disable_ipv6出典:1~へ0IPv6を有効にするには:
#Disabling SLAAC/Link Local addresses
net.ipv6.conf.eth0.disable_ipv6=0 - 同様に、IPv6を無効にするには1を設定してください。
- 設定を保存したら、次のコマンドを実行してください:
sysctl -a
sysctl -p - 今すぐVMware vSphere Clientを開いてください。再起動後、すべてが正常に動作しているか確認してください。
- SMBv1を無効にし、代わりにSMBv2を有効にしてみてください。その後、vCenter Serverを再起動し、この方法で問題が解決したか確認してください。
パスワードに関する問題
vCenter Server Appliance の root パスワードの有効期限が切れていないか確認してください。有効期限が切れている場合、vCenter にログインして設定の編集や、vCenter Appliance を含むエラーの修正を行うことができません。 503 Service Unavailable 回避策のないエラーです。root パスワードの有効期限を 0 パスワードの有効期限を無期限にしたい場合は。
- vCenter Server Appliance Management の GUI で、root パスワードの有効期限設定を編集できます:
https://your_vCenter_IP:5480/ui/administration
- もしパスワードが一致しない場合は
vmdirdで指定されたアカウントに対してvmdird-syslog.logこの要因が、以下のエラーが発生する原因となっている可能性があります:503 Service Unavailable (Failed to connect to endpoint: [N7Vmacore4Http20NamedPipeServiceSpecE:0x7f3d084a60c0] _serverNamespace = / _isRedirect = false _pipeName =/var/run/vmware/vpxd-webserver-pipe)" - 以下を確認してください
/var/log/vmware/vmdird/vmdird-syslog.logどのアカウントのパスワードが無効で、リセットが必要かを特定するためのファイル。
注: 設定を変更する前に、vCenterのバックアップを作成してください。vCenter Serverが仮想マシン上で実行されている場合は、少なくともスナップショットを取得してください。外部Platform Service Controllerを使用している場合は、そちらについても同様の対応を行ってください。 - vCenter Server Appliance に次のようにログインします
rootSSH経由で。次のように入力してくださいshell.set --enabled trueそして入力してくださいShellBashコンソールにアクセスするには。 - を開く vdcadmintool 次のコマンドを実行してツールを実行します:
/usr/lib/vmware-vmdir/bin/vdcadmintool - 3番目の選択肢を選択してください:
Reset account password - [ ] 内の情報に従って、パスワードをリセットしたいアカウントの名前を入力してください。
vmdird-syslog.logファイル。 - 新しいパスワードが自動的に生成されます。このパスワードをコピーして、メモしておいてください。
注: パスワードに空白文字が表示されている場合は、前の手順に戻って新しいパスワードを生成してください。この問題は、パスワードに特殊文字が含まれている場合、それらが欠落(空白)文字として表示されることで発生します。 - 前述の手順に従って、SSH経由でvCenter Serverに接続します(外部PSCを使用している場合)。組み込みPSCを使用している場合は、次の手順に進んでください。
- 新しいパスワードを更新するために、次のコマンドを実行してください:
/opt/likewise/bin/lwregshell
cd HKEY_THIS_MACHINEservicesvmdir
set_value dcAccountPassword "new password"
quit - 次のコマンドを使用して、vCenter Server Appliance のサービスを再起動します:
service-control --stop --all
service-control --start --all
vCenterのバックアップを実行する
一般的に、設定完了後にvCenterのバックアップを作成することをお勧めします。vCenterが正常に動作していることを確認した後、設定を編集する前にバックアップを作成しておくことで、万が一問題が発生した場合でもvCenterを復元できるようになります。vCenterの設定は運用中に変更される可能性があり、vCenterインベントリに項目が追加されることもあるため、定期的にバックアップを作成することが最善の対策です。障害がいつ発生するかは予測できません。
NAKIVO Backup & Replication これは、VMware vSphereの仮想マシンや、WindowsおよびLinuxを実行する物理マシン(SQLデータベースを含む)のバックアップが可能な、汎用的なデータ保護ソリューションです。vCenter Serverマシンを保護するには、 NAKIVO Backup & Replicationまた、vCenterに何らかの問題が発生した場合でも、正常な構成を短時間で復元できます。増分バックアップとGFS保持ポリシーのサポートにより、VMware vCenterのバックアップをより効率的に実行できます。本製品はSQLログの切り捨てに対応しており、ストレージ容量を節約できるほか、大規模なデータベースログによるディスク容量不足が原因で発生するエラーの可能性を低減します。