2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

IBM Turbonomic | SecureClient構築手順例

2
Last updated at Posted at 2025-06-13

はじめに

本ドキュメントでは以下に記載されたTurbonomicのSecureClientの設定手順例をご紹介するものです。
実際に作業される際は、その時点の最新版のマニュアルを参照頂き、こちらのページは参考資料として参照下さい。
https://www.ibm.com/docs/ja/tarm/latest?topic=saas-managing-prem-targets-using-secure-client

そもそもSecureClientとは?

OSSの技術であるSkupperを用いて、異なるネットワーク環境に存在するk8sクラスタを仮想ネットワークで接続し、一つのk8sクラスタとして接続する構成となります。
https://github.com/skupperproject

その中で、Secure Client本体は、以下図の右側のお客様環境内にOVAから展開された仮想マシンとなり、その仮想マシンの中に構築されたk8s(実体はSkupper podやTurbonomicの情報収集podから構成)を、左側のSaaS版Turbonomicのk8sの名前空間の一部として仮想的に接続する形となります。

image.png

SecureClinetのOVAイメージdownload

こちらより最新のOVAファイルをダウンロード下さい
https://community.ibm.com/community/user/viewdocument/turbonomic-latest-releases-downlo

SecureClientの実体はOVA版Turbonomicと同等のイメージとなります。
特にSecureClient専用のイメージがあるわけではないのでご認識下さい。

OVAイメージの展開 -> IPアドレスの設定まで

仮想マシンの電源を投入し、マニュアルの以下箇所を参照の上、OVAの導入からIPアドレスの設定まで進めます。
https://www.ibm.com/docs/ja/tarm/8.16.x?topic=client-secure-deployment-ova#Configure_Client_Instance__OVA_install__title__1

尚、OVAを展開した後、電源を投入する前に、監視対象の規模に応じて、仮想マシンとしてのHW構成を調整します。一般的な用途(管理対象5000台以下程度)であれば、8 vCPU/32GBメモリの構成とします。
https://www.ibm.com/docs/ja/tarm/8.16.x?topic=client-secure-deployment-ova#Configure_Client_Instance__OVA_prereqs__title__1

セキュアクライアントからTurbonomicサーバへのネットワーク疎通確認

IPアドレスの設定後、SecureClientを介してアクセスされるSaaS版Turbonomicへのネットワーク疎通の可否を確認します。
まずTurbonomic側の設定 -> セキュアクライアント管理のページから、Turbonomic側のエンドポイントのURLを確認します。

image.png

上記ページで確認出来た3つのURLへの疎通をSecureClient側のLinuxコンソールから確認します。

[turbo@turbo3013 ~]$ /opt/local/bin/check_connection.sh --ip claims-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com --port 443
Checking connectivity to claims-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com:443...
The request to claims-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com:443 was successful
[turbo@turbo3013 ~]$
[turbo@turbo3013 ~]$ /opt/local/bin/check_connection.sh --ip skupper-edge-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com --port 443
Checking connectivity to skupper-edge-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com:443...
The request to skupper-edge-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com:443 was successful
[turbo@turbo3013 ~]$
[turbo@turbo3013 ~]$ /opt/local/bin/check_connection.sh --ip skupper-inter-router-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com --port 443
Checking connectivity to skupper-inter-router-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com:443...
The request to skupper-inter-router-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com:443 was successful
[turbo@turbo3013 ~]$

併せて、同等に "icr.io" への疎通についても確認しておきます。
こちらはSecureClient自身のアップグレード等に際して必要となるIBMのコンテナレジストリのURLとなります。(icr = IBM Container Registry)

[turbo@turbo3013 ~]$ /opt/local/bin/check_connection.sh --ip icr.io --port 443
Checking connectivity to icr.io:443...
The request to icr.io:443 was successful
[turbo@turbo3013 ~]$

なお、もしFirewall等で接続可能なURLを制限している場合は、こちらのマニュアルに記載の通り、上記で記載したURL以外に、*.icr.ioについても疎通を許可下さい。実際のイメージのダウンロードではdd2.icr.ioといったURLへ接続されますが、dds.の部分については、変更される可能性がありますため、*.として許可頂く様お願いします。

セットアップスクリプトの実行

SecureClientの構成自動セットアップスクリプト(/opt/local/bin/t8cClientInstall.sh)を実行します。
これによって、Linux内部でKubernetesが構成され、セキュアクライアントの稼働に必要な各種podが自動的に展開されます。

似たような名前のスクリプトとして"t8cInstall.sh"がありますが、そちらはTurbonomicサーバ自体を構成する場合に実行するものとなります。今回はセキュアクライアントのセットアップになりますので、実行するスクリプトの名前にはご注意下さい。

ネットワークのセットアップは完了していますので、 y を押します。

[turbo@turbo3013 ~]$ /opt/local/bin/t8cClientInstall.sh

###############################################################
                    Initializing Kubernetes
###############################################################

Have you run the ipsetup script to setup networking yet? [y/n] y

セキュア・クライアント・オペレーターの自動更新を有効にします。これによって、SaaS版Turbonomic本体がアップグレードされた際、自動的にセキュアクライアントもアップグレードが実行されます。(オンラインアップグレードの為のicr.ioへの疎通が必要となります)

###############################################################
               Installing Turbonomic Secure Client
###############################################################

Do you wish to automatically update the Turbonomic Secure Client application - this requires internet access to icr.io? [y/n] y

インストールに成功すると、以下のメッセージが表示されます。

Installation complete!
You can now perform the token exchange to connect to your SaaS instance

インストールを検証します。(kubectl get pod)

出力は、次の例と同様なものになります。全てのPodがRunningでありREADY状態である事をご確認下さい。

[turbo@turbo3013 ~]$ kubectl get pod
NAME                                                      READY   STATUS    RESTARTS        AGE
kube-state-metrics-86dbd4db86-95xg7                       1/1     Running   0               8m22s
mediation-netapp-b867d8b88-6vdm7                          1/1     Running   0               8m21s
mediation-pure-547b6df5dd-clqxd                           1/1     Running   0               8m21s
mediation-ucs-b6449898b-2rknf                             1/1     Running   0               8m21s
mediation-vcenter-7d579d8686-6rmkj                        1/1     Running   0               8m21s
mediation-vcenterbrowsing-6cfcf768-fpkdg                  1/1     Running   0               8m21s
rsyslog-courier-mst48                                     1/1     Running   0               8m21s
skupper-router-6c9dcfb746-6mpn6                           2/2     Running   0               5m
skupper-service-controller-79878788b5-mf2dz               1/1     Running   1 (2m4s ago)    5m
skupper-site-controller-54f68cb6b4-p7n7g                  1/1     Running   0               8m22s
t8c-client-operator-controller-manager-79d4d5ccb8-s8zzc   1/1     Running   3 (3m41s ago)   8m34s
tsc-site-resources-5669bc77df-27cg2                       1/1     Running   0               8m21s
[turbo@turbo3013 ~]$

セキュア・クライアントとSaaS Turbonomicサーバー間のセキュアな接続の確立

こちらを参考に手順を進めます。
https://www.ibm.com/docs/ja/tarm/8.16.x?topic=client-secure-deployment-ova#Configure_Client_Instance__OVA_connection__title__1

生成されたトークンをセキュアクライアントに登録する際の実行例:
※実行後、エンターを2回押下する必要があります。

[turbo@turbo3013 ~]$ /opt/local/bin/tokenExchange.sh -n turbonomic
Paste token provided by your Turbonomic SaaS instance, and then press ENTER twice:
{
  "apiVersion": "v1",
  "kind": "Secret",
  "metadata": {
    "name": "e4828764-46a0-11f0-a12e-0a58ac151242",
    "annotations": {
      "skupper.io/claim-expiration": "2025-06-11T09:48:49Z",
      "skupper.io/generated-by": "7f281277-8565-454b-bdcf-101e65c06024",
      "skupper.io/site-version": "1.8.3",
      "skupper.io/url": "https://claims-xxxxx.apps.trbo-prod-cp-10.x6tl.p1.openshiftapps.com:443/e4828764-46a0-11f0-a12e-0a58ac151242"
    },
    "labels": {
      "skupper.io/type": "token-claim"
    }
  },
  "data": {
    "ca.crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURMRENDQWhTZ0F3SUJBZ0lRZHlvNWlPNjRDUDRrNEV2RDhjNmp5REFOQmdrcWhraUc5dzBCQVFzRkFEQWEKTVJnd0ZnWURWUVFERXc5emEzVndjR1Z5TFhOcGRHVXRZMkV3SGhjTk1qVXdNekV5TVRReE9EUXlXaGNOTXpBdwpNekV4TVRReE9EUXlXakFhTVJnd0ZnWURWUVFERXc5emEzVndjR1Z5TFhOcGRHVXRZMkV3Z2dFaU1BMEdDU3FHClNJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUMrTktCbWFydlRrd2JBRFE2eHMxZzdvZW1uVnhMRVlOUm0KN25LQ0Jkbm9pSGl6L1ZaUGY0TWdmVGJYQ1FXV3Exb2xDYVFCcTRKdEZrd09jc2V0Wm9HQkpVTTVvVU5sYXdxegoxOUlNaklFTmFuMnRaRTZGbUpyUjdYZFU3VnBZaFFpcmJoVzFlcXVISEZJZjVtdXZTeFNINVpNYUltTDkzL09xCnpyME41bTJKamIvc1lDZjhNbjNEUk5HUDlLZ0Zka2toTUdkTFRVbkJWNXQ2VjBlMDhYelBXNWRpZ29VQlRDQjIKeStSZDEzOXV5d0xwcEpSWXZ2c3h3Mkxta25UQWt6YjVLbWxIMlpRQ2xzaDJ4QzdOMFFEREoyQmt5ajNMV1NBZwpncDZSZHZYY3M2cW5WK3R0UnhjeWRMeURRQjhPaVpmMkFSbTZoT2NsNHEzNi9PM0gxQksxQWdNQkFBR2piakJzCk1BNEdBMVVkRHdFQi93UUVBd0lDcERBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFRWUlLd1lCQlFVSEF3SXcKRHdZRFZSMFRBUUgvQkFVd0F3RUIvekFkQmdOVkhRNEVGZ1FVb0s0QzA4ZmVSTEJHaXBZTVl3eHN1OHQ5L1NFdwpDd1lEVlIwUkJBUXdBb0lBTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFDTzRHQS93dmNReEZBNmQ2NnYvcWI3CjFEZFBJSGVQaldKYU9IbHRzWml6aGRnVkpiRE5NcUNLdTlkSTR5d1Zxd0t4M0g0TG5mYWlrdk5pUzdOVWxtaHIKcTRiUThHZ2cwcFZENDNvd2FYTGo1bnFGbk1TWTBXZndZTG9yTzBOTjRDcjdwWnRHVTZDR3MzTHRVeEpGUVpMegpRT0tPcE5BRjFSekxLL0p2bmdOOUwxbHZ1MFY3OGczM2tnYnd5OEpUSVFRS1ZYTWpxQW5SVDFTcG95bHRPZlQvCjU1TlQ5YnBYbFhpbHFLazc5dVBQc0NyU1Q1Z2R0MkNocUxSSklaTThUN3JoaFFwbXZ1UUNtZjFDVWplUk1TK2EKQlh4elE5T3JTaXUrNkZLelJMZzI0KzIvbWZGS1dEQlJod2lSalE4eXpkRHh3SFhmUXVncS9iVnlZRnA5K2RCWAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==",
    "password": "R0VublRNbTNwVlVmSnZtVUdXNDZCQjF4VjhKZ2V1S2FDTW1RcmRMSWFjc0RlemVYQllaZUFhYWdmY2FQSFVFa2hhSU9MWlJhYWdkemFQN2NqY0pRajlTbFFWUjBlSGxJV0trempTaFViNmluYnowa0dGWUhNWG42UHpaY09ZWDQ="
  }
}

Applying raw token
Token applied successfully. Waiting up to 30s for connection to be established...
Connection has been established.
Token exchange successful.
[turbo@turbo3013 ~]$

設定が反映され、SaaS版Turbonomicサーバとの接続が確立された事を確認します。

[turbo@turbo3013 ~]$ kubectl get services | grep ^remote
remote-nginx-tunnel         ClusterIP      10.233.54.132   <none>                                        9080/TCP            2m28s
remote-rsyslog              ClusterIP      10.233.41.230   <none>                                        2514/TCP,8080/TCP   2m28s
[turbo@turbo3013 ~]$

また、各種mediation-xxxという名前のPodが再起動され、Running/READYに戻る事を確認します。

[turbo@turbo3013 ~]$ kubectl get pod
NAME                                                      READY   STATUS    RESTARTS      AGE
kube-state-metrics-86dbd4db86-95xg7                       1/1     Running   0             17m
mediation-netapp-dcb75f447-8vdwv                          1/1     Running   0             2m25s
mediation-pure-77b6ddfb55-n5bmf                           1/1     Running   0             2m24s
mediation-ucs-769556747f-c7446                            1/1     Running   0             2m24s
mediation-vcenter-5bfcf66d65-vldq6                        1/1     Running   0             2m24s
mediation-vcenterbrowsing-7b7d5dfdb7-dvnll                1/1     Running   0             2m24s
rsyslog-courier-hqvck                                     1/1     Running   0             2m24s
skupper-router-8544f4cdd8-w2kvd                           2/2     Running   0             2m16s
skupper-service-controller-66c4554f66-tzhw5               1/1     Running   0             2m16s
skupper-site-controller-6b8ffcb454-zj8z5                  1/1     Running   0             2m25s
t8c-client-operator-controller-manager-79d4d5ccb8-s8zzc   1/1     Running   3 (12m ago)   17m
tsc-site-resources-9fb8b78bd-x9f6t                        1/1     Running   0             2m25s
[turbo@turbo3013 ~]$

Turbonomic側でvCenter等のターゲット追加が可能になった事を確認

ここまでの手順にてセキュアクライアントが無事にTurbonomicサーバと疎通が取れると、Turbonomicのターゲット登録対象の画面に、vCenterなどが追加されます。

TurbonomicのUI(設定 -> ターゲット構成)からvCenterなどが選択可能になった事をご確認下さい。

image.png

以上です。

※以降の作業としては、管理対象のvCenterへのターゲット登録に進んでいただくことになります。
https://www.ibm.com/docs/ja/tarm/latest?topic=targets-vcenter-server
なお、その際に指定するvCenterのIPアドレス/FQDNについては、SecureClientを起点と考えて接続可能な宛先をご指定ください。
例:SecureClientからvCenterに対してはローカルな内部IPアドレスで到達可能であれば、そのローカルのIPアドレスをTurbonomicのUI上で指定頂くことになります。(SaaS版Turbonomic本体からの到達可否は気にしなくて大丈夫です)

補足

SecureClientからSaaS版Turbonomicの接続に当たって、Proxyの利用は可能か?

はい、可能ですが、2025年6月現在、ご利用可能なProxyはいわゆる "透過型Proxy" に限定されます。(明示的にProxyサーバのIPアドレスを指定・経由させるタイプの一般的なProxyは利用不可です)具体的な透過型Proxyサーバの構成例は以下に記載されておりますので、必要に応じてご参照下さい。
https://www.ibm.com/docs/en/tarm/latest?topic=client-configuring-proxy-server-secure

※具体的には以下の3つすべてを満たす必要があります:

TLS over TCP
通信が純粋なTLS(HTTPS)トラフィックである必要があります。プロキシはそのまま中継するだけで、通信内容を解釈・変更してはいけません。

TLS passthrough
プロキシは、TLS接続を終端せずにそのままバックエンドへパススルーします。
➔ 通信の暗号化はエンドツーエンドで保たれる必要があります。

SNI(Server Name Indication)サポート
クライアントがTLSハンドシェイク時に送るSNIを使って、プロキシが通信先をルーティングできる必要があります。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?