PowerVC 2.3 の導入 (on RHEL9.4 ppc64le)

### はじめに

2024年12月に PowerVC 2.3 がリリースしました。

IBM Power上の RHEL 9.4 LPAR に導入したログです。

PowerVC 2.3 導入にご参考ください。



---
### PowerVC 2.3 新機能


https://www.ibm.com/docs/ja/powervc-cloud/2.3.0?topic=introduction-whats-new-in-powervc-private-cloud

(一部抜粋)

>・OpenStack（Caracal）とPython3.11のサポート
>・PowerVCの非sudoユーザーサポート
>・仮想シリアル番号（VSN）
>・ホストグループ間のマイグレーション
>・同時ログインの制限
>・ユーザー設定メニュー
>・対応OSの変更(RHEL8.10および RHEL9.4 サポート)


"ホストグループ間のマイグレーション" は ホストグループ間でLPM(Live Partition Mobility)ができる機能と考えられます。
以前のバージョンではホストグループに所属しているとホストグループ間の移動ができなかったので機能改善されていてありがたい箇所です。

<br>

上記は一部抜粋です。新機能のすべての内容はマニュアルをご確認ください。



---
### 検証環境


SW: PowerVC 2.3 (OpenStack Caracal ベースです)
　　=> PowerVC 管理ノードは 1 ノード構成

https://www.ibm.com/docs/en/powervc-cloud/2.3.0?topic=powervc-hardware-software-requirements

> PowerVC version 2.3.0 is built on OpenStack Caracal release.


OS: RHEL 9.4 (Server with GUI edition, CPU 1 Core, Memory 32 GB) on Power (ppc64le)

<font color="LightGray">CPU は 2 Core 推奨ですが、不足していたため 1 Core で実施しています。Requirement 足りていませんが導入できてよかった...(本当は良くないですが)</font>


HW: S1014

HMC (Hardware Management Console) V10 R3.1050.0

VIOS (Virtual I/O Server)  version 3.1.4.10





---

### 必要モジュール

・PowerVC 2.3 (powervc-opsmgr-rhel-ppcle-2.3.0.tgz )
　　=> ダウンロードメディアからRHEL版を抜き出しています
　　=> <font color="Red"> Ansible は PowerVC 同梱のモジュールを使用。</font>
　　インストールのPrecheckでAnsibleのバージョン・チェックがあるため、同梱モジュールを使用が望ましいです。
  

・RHEL 9.4 Base iso メディア
・Red Hat High Availability Add-On  (RHEL9)
・<font color="Red">追加RPM : libknet1-1.28-1.el9.ppc64le、 libknet1 and mysql-libs</font>

<br>

・[Installing from download](https://www.ibm.com/docs/en/powervc-cloud/2.3.0?topic=uninstalling-installing-from-download)

(抜粋)

> Yum repository for PowerVC install through RHN and make sure that the following repos are enabled.
>    AppStream
>    BaseOS
>    Supplementary
>    High Availability (HA repo is not available with standard RHEL subscription. For subscription details, see Red Hat® Enterprise Linux® High Availability Add-On ).
>    Codeready Builder (CRB) (for RHEL 9.x only) with these RPMs, libknet1 and mysql-libs.


・マニュアルには Supplementary の記載がありますが、RHEL9 のダウンロードモジュールに Supplementary の iso が見当たらなかったため、使用していません。

<br>


・RHEL ダウンロードサイトの　Codeready Builder リポジトリから libknet1 と mysql-libs のRPMを単独で入手しました。


<br>


<font color="Red">
PowerVC 2.3 では、PowerVC 2.2 までは存在していた Legacy install の記載がありませんでした。HA 構成前提と考えられます。</font>



----


### RHEL 設定準備


RHEL 9.4 Base media で OS導入を行いました。

参考：


・[HMC GUIでVIOS 仮想メディア・リポジトリの iso ファイルをLPARに割り当てる](https://qiita.com/c_u/items/ca38caa9518e128a6782)

・[RHEL9 マニュアル: IBM Power サーバーへのRHELインストール](https://docs.redhat.com/ja/documentation/red_hat_enterprise_linux/9/html-single/performing_a_standard_rhel_9_installation/index#rhel-installations-on-ibm-power-servers_installing-RHEL)

・[RHEL 8.4 (ppc64le) で iso ファイルを使用した yum repository の設定](https://qiita.com/c_u/items/29d9b00d5805cd1eb67c)

<br>


iso の loopmount


```
# ls -l /work/RHEL/iso/
-rw-r--r--. 1 root root 8935112704 Dec 28 21:35 rhel-9.4-ppc64le-dvd.iso
-rw-r--r--. 1 root root   18438144 Dec 28 21:35 rhel-highavailability-9.4-ppc64le-dvd.iso

# mkdir -p /media/rhel94/
# mkdir -p /media/rhel94ha/

# mount -t iso9660 -o loop /work/RHEL/iso/rhel-9.4-ppc64le-dvd.iso /media/rhel94/
# mount -t iso9660 -o loop /work/RHEL/iso/rhel-highavailability-9.4-ppc64le-dvd.iso /media/rhel94ha/

```

yum を以下のように設定しています。


```
# cat /etc/dnf/dnf.conf
[main]
gpgcheck=0
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False

[BaseOS]
name=RHEL94_BaseOS
baseurl=file:///media/rhel94/BaseOS/
enabled=1
gpgcheck=0
gpgkey=file:///media/rhel94/RPM-GPG-KEY-redhat-release

[AppStream]
name=RHEL94_AppStream
baseurl=file:///media/rhel94/AppStream/
enabled=1
gpgcheck=0
gpgkey=file:///media/rhel94/RPM-GPG-KEY-redhat-release

[HA]
name=RHEL94_High_Availabilityt
baseurl=file:////media/rhel94ha/
enabled=1
gpgcheck=0
gpgkey=file:////media/rhel94ha/RPM-GPG-KEY-redhat-release

```

subscription-manager を disable に修正します。

```
# cat /etc/dnf/plugins/subscription-manager.conf
[main]
enabled=0

# When following option is set to 1, then all repositories defined outside redhat.repo will be disabled
# every time subscription-manager plugin is triggered by dnf or yum
disable_system_repos=0
```

enabled=1 から enabled=0 に変更。


----

### 前提モジュール導入


####  ・mysql-libs-8.0.36-1.el9_3.ppc64le.rpm 導入

Codeready Builder からダウンロードした mysql-libs-8.0.36-1.el9_3.ppc64le.rpm を 前提を含めて導入するため dnf で導入します。

```
# dnf install mysql-libs-8.0.36-1.el9_3.ppc64le.rpm
RHEL94_BaseOS                                    40 MB/s | 1.4 MB     00:00
RHEL94_AppStream                                197 MB/s | 6.0 MB     00:00
RHEL94_High_Availabilityt                       8.7 MB/s |  82 kB     00:00
依存関係が解決しました。
================================================================================
 パッケージ                   Arch      バージョン        リポジトリー    サイズ
================================================================================
インストール:
 mysql-libs                   ppc64le   8.0.36-1.el9_3    @commandline    1.3 M
依存関係のインストール:
 mariadb-connector-c-config   noarch    3.2.6-1.el9_0     AppStream    11 k
 mysql-common                 ppc64le   8.0.36-1.el9_3    AppStream    78 k

トランザクションの概要
================================================================================
インストール  3 パッケージ

合計サイズ: 1.4 M
インストール後のサイズ: 7.1 M
これでよろしいですか? [y/N]:
パッケージのダウンロード:
トランザクションを確認しています
トランザクションの確認に成功しました。
トランザクションをテストしています
トランザクションのテストに成功しました。
トランザクションを実行しています
  準備中           :                                                        1/1
  インストール中   : mariadb-connector-c-config-3.2.6-1.el9_0.noarch        1/3
  インストール中   : mysql-common-8.0.36-1.el9_3.ppc64le                    2/3
  インストール中   : mysql-libs-8.0.36-1.el9_3.ppc64le                      3/3
  scriptletの実行中: mysql-libs-8.0.36-1.el9_3.ppc64le                      3/3
  検証中           : mariadb-connector-c-config-3.2.6-1.el9_0.noarch        1/3
  検証中           : mysql-common-8.0.36-1.el9_3.ppc64le                    2/3
  検証中           : mysql-libs-8.0.36-1.el9_3.ppc64le                      3/3
インストール済みの製品が更新されています。

インストール済み:
  mariadb-connector-c-config-3.2.6-1.el9_0.noarch
  mysql-common-8.0.36-1.el9_3.ppc64le
  mysql-libs-8.0.36-1.el9_3.ppc64le

完了しました!
```

 mariadb-connector-c-config-3.2.6-1.el9_0.noarch と mysql-common-8.0.36-1.el9_3.ppc64le も合わせて導入されました。
 
<br>

#### ・libknet1-1.28-1.el9.ppc64le.rpm の導入

```
# dnf install libknet1-1.28-1.el9.ppc64le.rpm
メタデータの期限切れの最終確認: 0:03:16 前の 2024年12月28日 21時38分56秒 に実施しました。
依存関係が解決しました。
================================================================================
 パッケージ       Arch            バージョン         リポジトリー         サイズ
================================================================================
インストール:
 libknet1         ppc64le         1.28-1.el9         @commandline          90 k

トランザクションの概要
================================================================================
インストール  1 パッケージ

合計サイズ: 90 k
インストール後のサイズ: 247 k
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
トランザクションを確認しています
トランザクションの確認に成功しました。
トランザクションをテストしています
トランザクションのテストに成功しました。
トランザクションを実行しています
  準備中           :                                                        1/1
  インストール中   : libknet1-1.28-1.el9.ppc64le                            1/1
  scriptletの実行中: libknet1-1.28-1.el9.ppc64le                            1/1
  検証中           : libknet1-1.28-1.el9.ppc64le                            1/1
インストール済みの製品が更新されています。

インストール済み:
  libknet1-1.28-1.el9.ppc64le

完了しました!
```

#### ・PowerVC 2.3 モジュールの解凍

```
# gzip -d powervc-opsmgr-rhel-ppcle-2.3.0.tgz
# tar -xvf powervc-opsmgr-rhel-ppcle-2.3.0.tar
powervc-opsmgr-2.3.0/
powervc-opsmgr-2.3.0/images/
powervc-opsmgr-2.3.0/images/RPM-GPG-KEY-PowerVC
powervc-opsmgr-2.3.0/setup_opsmgr.sh
powervc-opsmgr-2.3.0/update_opsmgr.sh
powervc-opsmgr-2.3.0/uninstall-opsmgr.sh
powervc-opsmgr-2.3.0/opsmgr-version.properties
powervc-opsmgr-2.3.0/images/powervc-install-ppcle-rhel-2.3.0.tgz
powervc-opsmgr-2.3.0/images/powervc-opsmgr.tgz
powervc-opsmgr-2.3.0/images/powervc-hmc-computeplane-rhel-2.3.0.tgz
powervc-opsmgr-2.3.0/version.properties
powervc-opsmgr-2.3.0/packages/
powervc-opsmgr-2.3.0/packages/noarch/
powervc-opsmgr-2.3.0/packages/noarch/python311-netaddr-0.10.1-5.ibm.el8.noarch.rpm

~ 途中省略 ~


powervc-opsmgr-2.3.0/license/standard/LI_zh
powervc-opsmgr-2.3.0/license/standard/notices
powervc-opsmgr-2.3.0/lap/
powervc-opsmgr-2.3.0/lap/LAPApp.jar
#
```

```
# cd powervc-opsmgr-2.3.0
# ls -l
合計 104
drwxr-xr-x. 2 root root   150 12月 28 21:42 images
drwxr-xr-x. 2 root root    24 12月  2 11:22 lap
drwxr-xr-x. 2 root root    56 12月  2 11:22 lib
drwxr-xr-x. 3 root root    22 12月  2 11:22 license
-rwxr-xr-x. 1 root root    59 12月  2 11:18 opsmgr-version.properties
drwxr-xr-x. 6 root root    61 12月  2 11:22 packages
-rwxrwx---. 1 root root 41891 12月  2 11:18 setup_opsmgr.sh
-rwxrwx---. 1 root root  3825 12月  2 11:18 uninstall-opsmgr.sh
-rwxrwx---. 1 root root 47720 12月  2 11:18 update_opsmgr.sh
-r--r--r--. 1 root root    38 12月  2 10:22 version.properties
#
```

---

### OpsMgr の導入 : setup_opsmgr.sh の実行

```
# time ./setup_opsmgr.sh
################################################################################
Starting the PowerVC:setup_prepnode 2.3.0 installation on:
2024-12-28T21:50:16-05:00
################################################################################

2024-12-28T21:50:17.66-05:00 [INFO]:[VALIDATION] BASE DIRECTORY : /opt/ibm/powervc-opsmgr
2024-12-28T21:50:17.66-05:00 [INFO]:[VALIDATION] INSTALL SCRIPT : /work/powervc/powervc-opsmgr-2.3.0/setup_opsmgr.sh
2024-12-28T21:50:17.66-05:00 [INFO]:[VALIDATION] LOG FILE : /opt/ibm/powervc-opsmgr/log/prep_node/prep_node_2024-12-28-2150.log
2024-12-28T21:50:17.67-05:00 [INFO]:[VALIDATION] OPERATING SYSTEM: Red Hat Enterprise Linux.
2024-12-28T21:50:17.67-05:00 [INFO]:[VALIDATION] User ID : root
2024-12-28T21:50:18.31-05:00 [INFO]:[VALIDATION] Java is missing on the VM. Installing Java for displaying Opsmgr License

ライセンス情報

以下の「プログラム」は、お客様と IBM とが事前に合意した「プロ
グラム」の使用許諾条件に加えて、次のライセンス情報の使用条件に基づ
いて使用許諾されます。 お客様が「プログラム」の有効な使用許諾条件
に事前に合意していない場合、 プログラムのご使用条件 (i125-
3301-15) が適用されます。

プログラム名 (プログラム番号):
 IBM PowerVC for Private Cloud
2.3.0 (5765-VC2)

以下の標準条件が、ライセンシーによる「プログラム」の使用に適用され
ます。

ご使用条件の続きを読む場合は、Enter キーを押してください。
「同意する」場合は「1」を押し、「同意しない」場合は「2」、印刷す
る場合は「3」、他社の使用条件を読む場合は「4」、英文でご覧になる
場合は「5」を押してください。「99」を押すと前の画面に戻ります。
1
2024-12-28T21:50:26.02-05:00 [INFO]:[VALIDATION] License accepted.
2024-12-28T21:50:26.03-05:00 [INFO]:[VALIDATION] Configuring Yum repository for PowerVC-Opsmgr...
2024-12-28T21:50:26.63-05:00 [INFO]:[VALIDATION] Configuring Yum repository for PowerVC-Opsmgr rhel9...
2024-12-28T21:50:34.74-05:00 [INFO]:[VALIDATION] Installing PowerVC Ops. Manager...
2024-12-28T21:50:49.27-05:00 [INFO]:[INSTALL_POWERVC_OPSMGR] POWERVC OPSMGR PACKAGES : sshpass python3-netaddr rsync python3-oslo-i18n python3-crudini python3-PyNaCl python3-powervc-opsmgr
2024-12-28T21:51:04.55-05:00 [INFO]:[INSTALL_POWERVC_OPSMGR] POWERVC OPSMGR PACKAGES : sshpass python3-netaddr rsync python3-oslo-i18n python3-crudini python3-PyNaCl python3-powervc-opsmgr
2024-12-28T21:51:05.04-05:00 [INFO]:[INSTALL_POWERVC_OPSMGR] PowerVC Opsmgr packages installed successfully.
2024-12-28T21:51:05.73-05:00 [INFO]:[INSTALL_POWERVC_OPSMGR] net-tools package already present.

################################################################################
PowerVC:setup_prepnode installation completed at 2024-12-28T21:51:05-05:00.
Refer to
/opt/ibm/powervc-opsmgr/log/prep_node/prep_node_2024-12-28-2150.log
for more details.
################################################################################

real	0m49.479s
user	0m39.014s
sys	0m4.570s
# echo $?
0
```

```
# which powervc-opsmgr
/usr/bin/powervc-opsmgr
```

実行時間は 1 分弱です。この間に opsmgr に必要なモジュールや Ansible も導入されています。

powervc-opsmgr が無事に導入でき、コマンドが使えるようになりました。

---

#### ・/etc/hosts の設定

自分自身(PowerVC 管理ノード) と PowerVC Virtual IP のアドレスを設定します。

```
# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

xxx.xx.xx.xx pvc23
xxx.xxx.xx.xxx pvc23vip
```


---

#### ・sshd 設定確認

```
# cat /etc/ssh/sshd_config | grep Root
PermitRootLogin yes

# cat /etc/ssh/sshd_config | grep Passwor
PasswordAuthentication yes

```

当環境は rootで導入したため、PermitRootLogin と PasswordAuthentication を有効化しています。


---

#### ・locale の修正

(数度試行後に判明した手順) locale が LANG= ja_JP.UTF-8 の場合、"export LANG=C" のみでは導入が失敗したため、locale修正で対応しました。

・ locale 確認

```
# cat /etc/locale.conf
LANG="ja_JP.UTF-8"
```

・ locale を LANG=C に変更

```
# localectl set-locale LANG=C
```

・変更後の確認

```
# cat /etc/locale.conf
LANG=C
```

・locale 反映

```
# source /etc/locale.conf
```


----
(locale ja_JP.UTF-8 時の参考失敗ログ)

```
# export LANG=C
```

LANG=C 設定でも precheck が通っていません。check_localhost_ping.yml で標準出力から操作する箇所で表示が異なるために取得結果が変わってうまくコードが通らなかったようです。


```
TASK [pvc_precheck : Ping hostname once] ***************************************
changed: [pvc23]
Saturday 28 December 2024  22:29:19 -0500 (0:00:00.232)       0:00:46.348 *****
fatal: [pvc23]: FAILED! => {"msg": "The conditional check 'not ping_count.skipped' failed. The error was: error while evaluating conditional (not ping_count.skipped): 'dict object' has no attribute 'skipped'\n\nThe error appears to be in '/opt/ibm/powervc-opsmgr/ansible/core/roles/pvc_precheck/tasks/check_localhost_ping.yml': line 38, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: \"{{ pvc_precheck_task_names.set_ping_countrc_value_to_a_variable }}\"\n  ^ here\nWe could be wrong, but this one looks like it might be an issue with\nmissing quotes. Always quote template expression brackets when they\nstart a value. For instance:\n\n    with_items:\n      - {{ foo }}\n\nShould be written as:\n\n    with_items:\n      - \"{{ foo }}\"\n"}

TASK [pvc_precheck : Set ping_count.rc value to a variable] ********************
fatal: [pvc23]: FAILED! => {"msg": "The conditional check 'not ping_count.skipped' failed. The error was: error while evaluating conditional (not ping_count.skipped): 'dict object' has no attribute 'skipped'\n\nThe error appears to be in '/opt/ibm/powervc-opsmgr/ansible/core/roles/pvc_precheck/tasks/check_localhost_ping.yml': line 38, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: \"{{ pvc_precheck_task_names.set_ping_countrc_value_to_a_variable }}\"\n  ^ here\nWe could be wrong, but this one looks like it might be an issue with\nmissing quotes. Always quote template expression brackets when they\nstart a value. For instance:\n\n    with_items:\n      - {{ foo }}\n\nShould be written as:\n\n    with_items:\n      - \"{{ foo }}\"\n"}

```





---


### OpsMgr を使用したインベントリーの作成

https://www.ibm.com/docs/en/powervc-cloud/2.3.0?topic=uninstalling-initiate-installation-through-powervc-operations-manager


```
# powervc-opsmgr inventory -c pvc23
+--------------------------------------------------------------------------------+
|                               PowerVC Inventory                                |
+--------------------------------------------------------------------------------+
	Configure Firewall (y/n) (Default: y): y
+--------------------------------------------------------------------------------+
   PowerVC Nodes
	Enter the number of nodes           : 1
+--------------------------------------------------------------------------------+
   INFO:
     Primary/Bootstrap Node
  	* First node specified will be considered as primary or bootstrap node.
     Sudo User
  	* Sudo user with same username and password across all nodes is required.
+--------------------------------------------------------------------------------+
   PowerVC Node(s) Information
     Node 1
	Enter IP/Hostname for Node 1        : xxx.xx.xx.xx
	Enter Username for all nodes        : root
	Enter Password for all nodes        :
+--------------------------------------------------------------------------------+
   Virtual IP
	Enter Virtual IP                    :xxx.xx.xx.xxx
+--------------------------------------------------------------------------------+

+--------------------------------------------------------------------------------+
|                           PowerVC Inventory - pvc23                            |
+--------------------------------------------------------------------------------+
	Cluster Name              : pvc23
	Cluster ID                : 336172c6-033a-4335-a456-b746972a55a2
	Install Method            : cluster
	Firewall Config           : True
	Login User                : root
	Virtual IP                : xxx.xx.xx.xxx
	Primary/Bootstrap Host    : xxx.xx.xx.xx
	Hosts                     : xxx.xx.xx.xx
	Edition                   : private_cloud
+--------------------------------------------------------------------------------+
|                    *** End of PowerVC Inventory - pvc23 ***                    |
+--------------------------------------------------------------------------------+
Establishing passwordless connection

PLAY [{{ playbook_task_names.configure_ssh_keys }}] ****************************


~ ログ省略 ~


PLAY RECAP *********************************************************************
xxx.xx.xx.xx             : ok=16   changed=4    unreachable=0    failed=0    skipped=5    rescued=0    ignored=0

Saturday 28 December 2024  21:57:00 -0500 (0:00:00.659)       0:00:04.908 *****
===============================================================================
Gathering Facts --------------------------------------------------------- 1.49s
pvc_sshkeys : Generate ssh key pair ------------------------------------- 0.67s
pvc_sshkeys : Make all Hosts known to each other - update known_hosts files --- 0.66s
pvc_sshkeys : Copy the keys to the authorized_keys file ----------------- 0.35s
{{ pvc_sshkeys_task_names.get_home_directory_for_ansible_user }} -------- 0.35s
command ----------------------------------------------------------------- 0.34s
pvc_sshkeys : Get the stat for ssh directory ---------------------------- 0.27s
pvc_sshkeys : Creates ssh directory /root/.ssh -------------------------- 0.27s
pvc_sshkeys : Fetch public key ------------------------------------------ 0.26s
include_vars ------------------------------------------------------------ 0.02s
include_vars ------------------------------------------------------------ 0.02s
pvc_sshkeys : include_vars ---------------------------------------------- 0.02s
include_vars ------------------------------------------------------------ 0.02s
{{ pvc_utils_task_names.store_locale_variable }} ------------------------ 0.02s
{{ pvc_sshkeys_task_names.set_home_directory_for_ansible_user }} -------- 0.02s
pvc_sshkeys : Delete ssh is file or link -------------------------------- 0.02s
include_vars ------------------------------------------------------------ 0.02s
pvc_sshkeys : copy SSH Key files if specified --------------------------- 0.02s
pvc_sshkeys : copy SSH Key files if specified --------------------------- 0.01s
include_vars ------------------------------------------------------------ 0.01s
SSH Key exchange successfully completed at, 2024-12-28 21:57:00.,
 Refer to
 /opt/ibm/powervc-opsmgr/ansible/artifacts/powervc-opsmgr_pvc23_ssh_key_xchg_20241228_215654/stdout
 for more details.
Inventory file generated successfully at /opt/ibm/powervc-opsmgr/ansible/inventory/pvc23



+--------------------------------------------------------------------------------+
|                           PowerVC Inventory - pvc23                            |
+--------------------------------------------------------------------------------+
	Cluster Name              : pvc23
	Cluster ID                : 336172c6-033a-4335-a456-b746972a55a2
	Install Method            : cluster
	Firewall Config           : True
	Login User                : root
	Virtual IP                : xxx.xx.xxx.xxx
	Primary/Bootstrap Host    : xxx.xx.xxx.xx
	Hosts                     : xxx.xx.xxx.xx
	Edition                   : private_cloud
	Inventory Directory       : /opt/ibm/powervc-opsmgr/ansible/inventory/pvc23
+--------------------------------------------------------------------------------+
|                    *** End of PowerVC Inventory - pvc23 ***                    |
+--------------------------------------------------------------------------------+
#
```

---

### PowerVC 2.3 導入実行

上で作成したインベントリーを指定して導入を実行します。

```
# powervc-opsmgr install -c pvc23

PLAY [{{ playbook_task_names.precheck }}] **************************************
Saturday 28 December 2024  22:38:39 -0500 (0:00:00.064)       0:00:00.064 *****

TASK [Gathering Facts] *********************************************************
ok: [pvc23]
Saturday 28 December 2024  22:38:40 -0500 (0:00:01.349)       0:00:01.413 *****

TASK [command] *****************************************************************
changed: [pvc23]
Saturday 28 December 2024  22:38:41 -0500 (0:00:00.409)       0:00:01.823 *****



~ 　ログ省略　~ 


TASK [pvc_main : synchronize inventory] ****************************************
ok: [pvc23 -> pvc23] => (item=pvc23)
Saturday 28 December 2024  23:28:28 -0500 (0:00:02.912)       0:48:47.148 *****

TASK [pvc_main : Success message for play] *************************************
ok: [pvc23] => {
    "msg": "Play completed successfully"
}
Saturday 28 December 2024  23:28:28 -0500 (0:00:00.071)       0:48:47.220 *****

PLAY RECAP *********************************************************************
pvc23                : ok=2975 changed=1349 unreachable=0    failed=0    skipped=3314 rescued=0    ignored=6

Saturday 28 December 2024  23:28:28 -0500 (0:00:00.070)       0:48:47.291 *****
===============================================================================
pvc_db_ssl : Pause for 2 mins ----------------------------------------- 120.12s
pvc_gnocchi : restart ceilometer services ------------------------------ 91.52s
pvc_reverse_proxy : restart proxyserver -------------------------------- 91.08s
pvc_db_ssl : stopping powervc services --------------------------------- 75.99s
pvc_db_ssl : Wait for Galera to stop completely ------------------------ 63.45s
pvc_health : Stop openstack-nova-api service --------------------------- 60.39s
pvc_db_ssl : wait for 60 seconds more for galera to stabilize ---------- 60.23s
pvc_db_ssl : start db service ------------------------------------------ 50.38s
pvc_db_ssl : start powervc services ------------------------------------ 42.64s
pvc_galera_new : Wait for 30 seconds for WSREP become prepared state --- 30.24s
pvc_main : {{ playbook_task_names.wait_for_30_seconds_to_have_galera_as_resource_active }} -- 30.24s
pvc_galera_new : Wait for 30 seconds for WSREP become prepared state --- 30.23s
pvc_bootstrap_keystone : install keystone packages --------------------- 26.53s
pvc_db_ssl : Update configuration files to include SSL flag ------------ 24.70s
pvc_pacemaker : Wait untill cluster is online and ready ---------------- 23.13s
pvc_db_conn : Create DB credentials and grant permissions -------------- 22.04s
pvc_swift : Start powervc swift services ------------------------------- 22.01s
pvc_ui : Install UI server and client packages ------------------------- 21.86s
pvc_galera_new : Install mariadb package for RHEL 9 -------------------- 19.76s
pvc_ui : restart ui server --------------------------------------------- 15.56s
IBM PowerVC installation successfully completed at 2024-12-28 23:28:28
Refer to
 /opt/ibm/powervc-opsmgr/ansible/artifacts/powervc-opsmgr_powervc23_install_20241228_232828/stdout
 for more details.
Access PowerVC UI at https://xxx.xx.xxx.xx
+--------------------------------------------------------------------------------+
|                        *** End of PowerVC Inventory ***                        |
+--------------------------------------------------------------------------------+
```


この環境でのインストール所要時間は 50 分弱程度でした。

```
# cat /opt/ibm/powervc/version.properties
[2.3.0 Install]
name = IBM PowerVC
version = 2.3.0
build = 20241202-0918
oem = no
install-date = 2024-12-28
cloud_enabled = yes
cluster = pvc23
install_method = cluster
```

---


### GUI確認

ログイン画面

![スクリーンショット 2024-12-28 13.59.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/517421/4a9422f7-eabf-e4b8-fb0b-b69e605bec52.png)


・ログイン後確認

![スクリーンショット 2024-12-28 13.59.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/517421/baa7a12a-2ac9-ea22-0f1c-4b3f2c13a53e.png)


・左レーン

![スクリーンショット 2024-12-28 14.01.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/517421/69d6d461-4e08-5769-dc40-012f429289b1.png)

続き

![スクリーンショット 2024-12-28 14.01.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/517421/4223cb14-06e9-58e6-a78f-d887c4908bbd.png)

・　"予約 - ホスト"、"ボリューム・スナップショット" 、 "Active user sessions" などが追加されています。

・　"SSH鍵"の表示は以前、わかりにくい場所にありましたが左レーンでわかりやすい表示になりました。


無事、PowerVC 2.3 が導入できました。


---

### おわりに



RHEL9 特有のモジュール準備や、HA構成のみでの手順となる箇所が PowerVC v2 導入・運用ガイドとの違いです。


https://qiita.com/c_u/items/41e87f5d0e0417c74395

いずれガイドの方も修正したいと思います。


<br>

以上です。