Horizon Cloud Connetor(HCC)におけるライセンス同期トラブルシュート

Horizon Cloud Connetor(HCC)におけるライセンス同期トラブルシュート

Contents

HorizonCloud Connector トラブル時の切り分け方法

おはこんばんちわ
だいぶお久しぶりの投稿になってしまいました。
記事書くのを面倒くさがってしまい、こんなに間が空いてしまいました…

さて、今回の題材は最近対応が増えてきたHorizon Cloud Connector (通称HCC)の、
初期切り分けについてお話しできればと思います。

想定される内容

また、想定するトラブルとしては、
Horizon Cloud Connectorを通してVMwareコントロールプレーンから、
オンプレミスHorizonに対してライセンス同期が取れないといった内容を想定します。

まずはライセンス同期が、Horizon Cloud経由で行えているかを、
下記のように確認します。  

画像内の赤枠で囲った箇所が、ライセンス同期できている旨の内容になります。
しかしながら、ライセンス同期が出来ていない場合は、
上記のような出力にはなりません。

では、手始めに確認することとしては、
以下の通りです。

確認事項(トラブルシュート)

  • Horizon Cloud Connector から下記の宛先に対して、
    curlコマンドを実行した際にHTTP 503等のエラーを返さないこと
    確認先URL: https://horizonedgeprod.azurecr.io/ , https://edgehubprodjp.azure-devices.net/

    VMware Docs
    Horizon 8 環境に Horizon Edge Gateway をデプロイするために適切なターゲット URL をアクセス可能にする (vmware.com)
     

  • Horizon Cloud Connectorにて、kubectl get pods -A を実施し、
    下記の画像の通りSTATUSがRunningであることを確認してください。


    上記のSTATUS欄でRunning 以外の表記になっている場合は、
    kubectl rollout restart deployment hze-ccc -n hze-system
    kubectl rollout restart deployment hze-core -n hze-system

    と実行してください。deploymentの後ろに続く文字列は、上記画像の"NAME"に書かれている箇所
    -n の後ろに続く文字列は、上記画像の左端"NAMESPACE"に記載のある文字列となります。

    kubectl rollout restart deployment コマンドを実行すると、
    下記のような出力になります。おおよそ10分ほどでSTATUSに変化がみられる想定です。

  • Horizon Cloud Connetor から指定のURLへアクセスできること、
    kubectl rollout restart deployment コマンド実行後も、
    kubectl get pods -A で確認するとSTATUS欄がすべてRunningにならない場合は、
    STATUS欄でRunning表示になっていないモジュールに対して以下のコマンドを実行しましょう

    ex:) kubectl describe pods -A
    で展開されている全てのPod情報が表示されます。

    ex:) kubectl describe pods hze-ccc -n hze-system
    podsの後ろに続く文字列は、上記画像の"NAME"に書かれている箇所
    -n の後ろに続く文字列は、上記画像の左端"NAMESPACE"に記載のある文字列となります。
    上記のコマンドを実行することで、特定のPodのみに絞りこんで情報を出力させることが出来ます。

    出力された文字列を、メモ帳に張り付けてerrorやfailの出力があるか確認しましょう。

上記の手順を踏むことで大体の事象が治ることがわかりました。
まぁ、上記の手順で治らない場合はプロキシとかが間に挟まって、通信上の悪さをしている可能性が非常に高いです。

ほかにも、kubectl コマンドを実行するには、
kubernetes側の証明書が期限切れを迎えていないことが大事になってきたりもします。

もし、kubernetes上の証明書で期限切れを迎えていると、
証明書を更新してもkubectlコマンドは復活してこず詰みですww

結論

なので、Horizon Cloud Connectorの再展開をするのが、
もっとも効率的で自分へのストレスも軽くなることがわかりましたw

Kubernetesのトラブルシューティングとか、
アプリケーション側の人たちじゃないとあまり経験するものでもないでしょうから、
備忘録程度に残しておきます。

どうやって調査したか忘れるとクソ面倒ですしね..
さーて、自宅ラボの拡張と資料整備を再開しなければです。

ただし、これまた作業が膨大なのであまり気が進まない、
そんな一コマの記録でした。😇