vm.gowatana.jp

NEOにほんごVMware(仮)

VCF 9.0 で Foundation LB の vSphere Supervisor を構成してみる。Part-04:VCF CLI でのスーパーバイザー接続

VMware Cloud Foundation(VCF)9.0 の vCenter で、Foundation ロード バランサを使用したスーパーバイザーを有効化してみます。今回は、VCF CLI でスーパーバイザーに接続してみます。

前回はこちら。

 

今回の内容です。

 

1. 作業用マシンの用意

CLI で スーパーバイザーに接続する作業環境として、Linux マシンを用意してあります。

今回は、VMware Photon OS 5.0 の仮想マシンを使用します。

gowatana@vcf9-work-01 [ ~ ]$ cat /etc/photon-release
VMware Photon OS 5.0
PHOTON_BUILD_NUMBER=b9d98344d

 

2. VCF Consumption Command Line Interface(VCF CLI)のダウンロード

vSphere 名前空間の「サマリ」タブにある「開く」リンクをクリック、もしくスーパーバイザー制御プレーン IP アドレス(https で)を Web ブラウザで開きます。

 

証明書エラーを無視して進むと、「VCF Consumption Command Line Interface」ダウンロード ページを開きます。

 

作業マシンにあわせて、「Linux」を選択します。アーキテクチャは「AMD64」のままにしておきます。

 

「DOWNLOAD VCF CLI FOR LINUX (AMD64)」をクリックすると、Broadcom のサイトから、VCF CLI の tar アーカイブ ファイル(vcf-cli.tar.gz)をダウンロードできます。

 

Linux マシンの curl では、下記のようにダウンロードできます。

$ curl -kLO https://packages.broadcom.com/artifactory/vcf-distro/vcf-cli/linux/amd64/v9.0.0/vcf-cli.tar.gz

 

3. VCF CLI のインストール

VCF CLI の .tar アーカイブを、ホームディレクトリに配置してあります。

$ ls -l vcf-cli-linux_amd64
-rwxr-x--- 1 gowatana users 150474536 Mar 27 10:56 vcf-cli-linux_amd64

 

ちなみに、拡張子は .tar.gz ですが、gzip されていない tar アーカイブでした。

$ file vcf-cli.tar.gz
vcf-cli.tar.gz: POSIX tar archive

 

vcf-cli.tar.gz ファイルを展開します。

$ tar xvf vcf-cli.tar.gz

 

ユーザーのホーム ディレクトリ直下に bin ディレクトリを配置して、vcf コマンドをインストールします。

$HOME/bin ディレクトリを作成し、PATH 環境変数に追加します。

$ mkdir $HOME/bin
$ export PATH=$HOME/bin:$PATH
$ echo 'export PATH=$HOME/bin:$PATH' >> .bash_profile

 

vcf コマンドをインストールします。

$ install vcf-cli-linux_amd64 $HOME/bin/vcf

 

展開したファイルは削除しておきます。

$ rm vcf-cli-linux_amd64

 

vcf コマンドが実行可能になったことを確認しておきます。

gowatana@vcf9-work-01 [ ~ ]$ which vcf
/home/gowatana/bin/vcf
gowatana@vcf9-work-01 [ ~ ]$ vcf version
version: v9.0.0
buildDate: 2025-03-27
sha: d503801
arch: amd64

 

vcf コマンドでは、サブ コマンドの初回実行時に、必要に応じてプラグインをダウンロードするようです。

vcf context list の初回実行の様子です。

gowatana@vcf9-work-01 [ ~ ]$ vcf context list
[i] Some initialization of the CLI is required.
[i] Let's set things up for you.  This will just take a few seconds.

[i] Refreshing plugin inventory cache for "projects.packages.broadcom.com/vcf-cli/plugins/plugin-inventory:latest", this will take a few seconds.
[i] Reading plugin inventory for "projects.packages.broadcom.com/vcf-cli/plugins/plugin-inventory:latest", this will take a few seconds.
[i]
[i] Initialization done!
[i] ==
[i] The vcf cli essential plugins have not been installed and are being installed now. The install may take a few seconds.
[i] Installing plugins from plugin group 'vmware-vcfcli/essentials:v9.0.0'
[i] Installed plugin 'telemetry:v9.0.0'

  NAME  CURRENT  TYPE

[i] Use '--wide' to view additional columns.

 

vcf context list の2回目以降の実行の様子です。

gowatana@vcf9-work-01 [ ~ ]$ vcf context list
  NAME  CURRENT  TYPE

[i] Use '--wide' to view additional columns.

 

4. スーパーバイザーへの接続

VCF CLI でスーパーバイザーに接続してみます。今回は、下記のように接続しています。

スーパーバイザー制御プレーンのアドレス:192.168.79.180, 証明書エラーを無視する(--insecure-skip-tls-verify)コンテキスト名の先頭部分:sv-01、ユーザー:Administrator@vsphere.local

gowatana@vcf9-work-01 [ ~ ]$ vcf context create --endpoint=192.168.79.180 --insecure-skip-tls-verify
? Provide a name for the context:  sv-01
[i] Auth type vSphere SSO detected. Proceeding for authentication...
? Provide Username:  Administrator@vsphere.local
Provide Password:



Logged in successfully.

You have access to the following contexts:
   sv-01
   sv-01:demo-ns-01
   sv-01:svc-tkg-domain-c10
   sv-01:svc-velero-domain-c10

If the namespace context you wish to use is not in this list, you may need to
refresh the context again, or contact your cluster administrator.

To change context, use `vcf context use `
[ok] successfully created context: sv-01
[ok] successfully created context: sv-01:demo-ns-01
[ok] successfully created context: sv-01:svc-tkg-domain-c10
[ok] successfully created context: sv-01:svc-velero-domain-c10

 

以前からある kubectl vsphere login と同様に、スーパーバイザーへのログインが成功すると、自動的に vSphere 名前空間ごとのコンテキストが作成されます。コンテキストは、「vcf context list」で確認できます。前回の投稿で作成した「demo-ns-01」名前空間のコンテキストも自動作成されました。

gowatana@vcf9-work-01 [ ~ ]$ vcf context list
  NAME                         CURRENT  TYPE
  sv-01                        false    kubernetes
  sv-01:demo-ns-01             false    kubernetes
  sv-01:svc-tkg-domain-c10     false    kubernetes
  sv-01:svc-velero-domain-c10  false    kubernetes

[i] Use '--wide' to view additional columns.

 

「--wide」オプションでコンテキスト一覧を表示した様子です。

gowatana@vcf9-work-01 [ ~ ]$ vcf context list --wide
  NAME                         CURRENT  TYPE        ENDPOINT                    KUBECONFIGPATH               KUBECONTEXT   
  sv-01                        false    kubernetes  https://192.168.79.180:443  /home/gowatana/.kube/config  sv-01         
  sv-01:demo-ns-01             false    kubernetes  https://192.168.79.180:443  /home/gowatana/.kube/config  sv-01:demo-ns-01
  sv-01:svc-tkg-domain-c10     false    kubernetes  https://192.168.79.180:443  /home/gowatana/.kube/config  sv-01:svc-tkg-domain-c10
  sv-01:svc-velero-domain-c10  false    kubernetes  https://192.168.79.180:443  /home/gowatana/.kube/config  sv-01:svc-velero-domain-c10

 

コンテキストを切り替えるには、「vcf context use」を実行します。ここでは、「sv-01:demo-ns-01」コンテキストに切り替えてみます。

gowatana@vcf9-work-01 [ ~ ]$ vcf context use sv-01:demo-ns-01
[ok] Token is still active. Skipped the token refresh for context "sv-01:demo-ns-01"
[i] Successfully activated context 'sv-01:demo-ns-01' (Type: kubernetes)
[i] Fetching recommended plugins for active context 'sv-01:demo-ns-01'...
[i] Installing the following plugins recommended by context 'sv-01:demo-ns-01':
  NAME                INSTALLING
  cluster             v3.3.1
  kubernetes-release  v3.3.1
  namespaces          v9.0.0
  package             v3.3.1
  registry-secret     v3.3.1
  vm                  v9.0.0
[i] Installed plugin 'cluster:v3.3.1'
[i] Installed plugin 'kubernetes-release:v3.3.1'
[i] Installed plugin 'namespaces:v9.0.0'
[i] Installed plugin 'package:v3.3.1'
[i] Installed plugin 'registry-secret:v3.3.1'
[i] Installed plugin 'vm:v9.0.0'
[ok] Successfully installed all recommended plugins.

 

「sv-01:demo-ns-01」が、カレント コンテキストになりました。(CURRENT: true)

gowatana@vcf9-work-01 [ ~ ]$ vcf context list
  NAME                         CURRENT  TYPE
  sv-01                        false    kubernetes
  sv-01:demo-ns-01             true     kubernetes
  sv-01:svc-tkg-domain-c10     false    kubernetes
  sv-01:svc-velero-domain-c10  false    kubernetes

[i] Use '--wide' to view additional columns.

 

つづく。