PowerVC 2.1.1 導入確認 (Legacy installation )

#### はじめに

Power Systems の仮想化管理製品 PowerVC 新バージョン 2.1.1 のリリースが 2023年4月末にありました。

追加機能は GUI周りや PureStorage などへの機能拡張の様子です。

[What's new in PowerVC 2.1.1](https://www.ibm.com/docs/ja/powervc/2.1.1?topic=powervc-whats-new-in-version-211)

OpenStack バージョンは2.1.0 と同じ Yoga でHW, SW 要件に大きな変更はなさそうです。
PowerVC 2.1.1 でも [PowerVC v2 導入・運用ガイド](https://ibm.ent.box.com/s/tb34vtxrgg14ty6xxrg4hza5o4p6f23y) に記載の方法でレガシー・インストールの導入が可能であることを確認しました。


<font color="LightGray">(2.0.x では .0.1 レベルで大きく変わった経緯があったため、今回の新バージョン念の為、導入方法を確認しました。今回は大きくは変わってなくて安心しました。) </font>

---

#### 環境


・ RHEL 8.6 ppc64le  (on S824)
・ PowerVC 2.1.1   (single node、Legacy install、no-HA)

----


#### ダウンロード・モジュールの確認(解凍後)

```
[root@temptest powervc-opsmgr-2.1.1]# ls -ltr
total 88
-r--r--r--. 1 344 bin    38 Apr 21 10:03 version.properties
-rwxrwx---. 1 344 bin 36167 Apr 21 12:24 update_opsmgr.sh
-rwxrwx---. 1 344 bin  3714 Apr 21 12:24 uninstall-opsmgr.sh
-rwxrwx---. 1 344 bin 37076 Apr 21 12:24 setup_opsmgr.sh
-rwxr-xr-x. 1 344 bin    59 Apr 21 12:24 opsmgr-version.properties
drwxr-xr-x. 2 344 bin   150 Apr 21 12:28 images
drwxr-xr-x. 3 344 bin    22 Apr 21 12:29 license
drwxr-xr-x. 2 344 bin    56 Apr 21 12:29 lib
drwxr-xr-x. 2 344 bin    24 Apr 21 12:29 lap
drwxr-xr-x. 6 344 bin    78 May  1 19:54 packages
[root@temptest powervc-opsmgr-2.1.1]#
```

---

#### opsmgr の導入

setup_opsmgr.sh を実行します。


```
[root@temptest powervc-opsmgr-2.1.1]# ./setup_opsmgr.sh
################################################################################
Starting the PowerVC:setup_prepnode 2.1.1 installation on:
2023-05-01T22:17:34-04:00
################################################################################

2023-05-01T22:17:36.85-04:00 [WARNING]:[] 2.1 or later opsmgr will install and set default python to 3.9 at system level
Would you like to proceed?yes
2023-05-01T22:17:51.46-04:00 [INFO]:[VALIDATION] BASE DIRECTORY : /opt/ibm/powervc-opsmgr
2023-05-01T22:17:51.47-04:00 [INFO]:[VALIDATION] INSTALL SCRIPT : /home/powervc/powervc-opsmgr-2.1.1/setup_opsmgr.sh
2023-05-01T22:17:51.47-04:00 [INFO]:[VALIDATION] LOG FILE : /opt/ibm/powervc-opsmgr/log/prep_node/prep_node_2023-05-01-2217.log
2023-05-01T22:17:51.48-04:00 [INFO]:[VALIDATION] OPERATING SYSTEM: Red Hat Enterprise Linux.
2023-05-01T22:17:51.49-04:00 [INFO]:[VALIDATION] User ID : root
2023-05-01T22:17:52.58-04:00 [INFO]:[VALIDATION] Java is missing on the VM. Installing Java for displaying Opsmgr License

LICENSE INFORMATION

The Programs listed below are licensed under the following
License Information terms and conditions in addition to the
Program license terms previously agreed to by Client and
IBM. If Client does not have previously agreed to license
terms in effect for the Program, the International Program
License Agreement (i125-3301-15) applies.

Program Name (Program Number):
IBM PowerVC 2.1.1 (5765-VS2)
 IBM PowerVC for Private Cloud 2.1.1 (5765-VC2)

The following standard terms apply to Licensee's use of the

Press Enter to continue viewing the license agreement, or
enter "1" to accept the agreement, "2" to decline it, "3"
to print it, "4" to read non-IBM terms, or "99" to go back
to the previous screen.
1
2023-05-01T22:18:16.48-04:00 [INFO]:[VALIDATION] License accepted.
2023-05-01T22:18:16.50-04:00 [INFO]:[VALIDATION] Configuring Yum repository for PowerVC-Opsmgr...
2023-05-01T22:18:18.17-04:00 [INFO]:[VALIDATION] Configuring Yum repository for PowerVC-Opsmgr rhel8...
2023-05-01T22:18:34.45-04:00 [INFO]:[VALIDATION] Installing PowerVC Ops. Manager...
2023-05-01T22:18:34.47-04:00 [INFO]:[INSTALL_POWERVC_OPSMGR] POWERVC OPSMGR PACKAGES : sshpass python3-netaddr rsync python3-oslo-i18n python3-crudini python3-powervc-opsmgr
2023-05-01T22:19:36.61-04:00 [INFO]:[INSTALL_POWERVC_OPSMGR] PowerVC Opsmgr packages installed successfully.

################################################################################
PowerVC:setup_prepnode installation completed at 2023-05-01T22:19:36-04:00.
Refer to
/opt/ibm/powervc-opsmgr/log/prep_node/prep_node_2023-05-01-2217.log
for more details.
################################################################################
[root@temptest powervc-opsmgr-2.1.1]#
```

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

---

#### インベントリーの作成


powervc211 という名前のインベントリーを作成します。
- private cloud edition
- Firewall を構成
- Legacy Installation を選択 (single node)


```
[root@temptest powervc-opsmgr-2.1.1]# powervc-opsmgr inventory -c powervc211
+--------------------------------------------------------------------------------+
|                               PowerVC Inventory                                |
+--------------------------------------------------------------------------------+
   PowerVC Install options
	Install Private cloud edition(y/n)  : y
	Configure Firewall (y/n)            : y
	Legacy Installation (y/n)           : y
+--------------------------------------------------------------------------------+
   INFO:
     Legacy Method option
  	* Only one node will be part of PowerVC.
  	* No cluster will be installed during PowerVC installation.
     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.xxx
	Enter Username for Node 1           : root
	Enter Password for Node 1           :
+--------------------------------------------------------------------------------+



+--------------------------------------------------------------------------------+
|                         PowerVC Inventory - powervc211                         |
+--------------------------------------------------------------------------------+
	Cluster Name              : powervc211
	Cluster ID                : b677cedf-05b1-49b0-90bc-f9d19f0f50f0
	Install Method            : legacy
	Edition                   : private_cloud
	Firewall Config           : True
	Login User                : root
	Virtual IP                : xxx.xx.xx.xxx
	Hosts                     : xxx.xx.xx.xxx
+--------------------------------------------------------------------------------+
|                 *** End of PowerVC Inventory - powervc211 ***                  |
+--------------------------------------------------------------------------------+
Establishing passwordless connection

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

TASK [Gathering Facts] *********************************************************
Monday 01 May 2023  22:24:23 -0400 (0:00:00.077)       0:00:00.077 ************
[DEPRECATION WARNING]: Distribution rhel 8.6 on host xxx.xx.xx.xxx should use
/usr/libexec/platform-python, but is using /usr/bin/python for backward
compatibility with prior Ansible releases. A future Ansible release will
default to using the discovered platform python for this host. See https://docs
.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for
more information. This feature will be removed in version 2.12. Deprecation
warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
ok: [xxx.xx.xx.xxx]

TASK [command] *****************************************************************
Monday 01 May 2023  22:24:25 -0400 (0:00:02.366)       0:00:02.443 ************
changed: [xxx.xx.xx.xxx]


~ 省略 ~ 


# 127.0.0.1:22 SSH-2.0-OpenSSH_8.0
changed: [xxx.xx.xx.xxx] => (item=127.0.0.1)
xxx.xx.xx.xxx               : ok=16   changed=4    unreachable=0    failed=0    skipped=3    rescued=0    ignored=0

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

Monday 01 May 2023  22:24:31 -0400 (0:00:01.175)       0:00:07.958 ************
===============================================================================
Gathering Facts --------------------------------------------------------- 2.37s
pvc_sshkeys : Make all Hosts known to each other - update known_hosts files --- 1.18s
command ----------------------------------------------------------------- 0.99s
pvc_sshkeys : Copy the keys to the authorized_keys file ----------------- 0.65s
{{ pvc_sshkeys_task_names.get_home_directory_for_ansible_user }} -------- 0.55s
pvc_sshkeys : Generate ssh key pair ------------------------------------- 0.45s
pvc_sshkeys : Get the stat for ssh directory ---------------------------- 0.45s
pvc_sshkeys : Creates ssh directory /root/.ssh -------------------------- 0.44s
pvc_sshkeys : Fetch public key ------------------------------------------ 0.42s
include_vars ------------------------------------------------------------ 0.05s
include_vars ------------------------------------------------------------ 0.05s
include_vars ------------------------------------------------------------ 0.04s
pvc_sshkeys : include_vars ---------------------------------------------- 0.04s
{{ pvc_sshkeys_task_names.set_home_directory_for_ansible_user }} -------- 0.04s
{{ pvc_utils_task_names.store_locale_variable }} ------------------------ 0.04s
pvc_sshkeys : Delete ssh is file or link -------------------------------- 0.04s
include_vars ------------------------------------------------------------ 0.04s
include_vars ------------------------------------------------------------ 0.04s
{{ pvc_utils_task_names.error_message_for_utils_nls }} ------------------ 0.03s
SSH Key exchange successfully completed at, 2023-05-01 22:24:31.,
 Refer to
 /opt/ibm/powervc-opsmgr/ansible/artifacts/powervc-opsmgr_powervc211_ssh_key_xchg_20230501_222422/stdout
 for more details.
Inventory file generated successfully at /opt/ibm/powervc-opsmgr/ansible/inventory/powervc211



+--------------------------------------------------------------------------------+
|                         PowerVC Inventory - powervc211                         |
+--------------------------------------------------------------------------------+
	Cluster Name              : powervc211
	Cluster ID                : b677cedf-05b1-49b0-90bc-f9d19f0f50f0
	Install Method            : legacy
	Edition                   : private_cloud
	Firewall Config           : True
	Login User                : root
	Virtual IP                : xxx.xx.xx.xxx
	Hosts                     : xxx.xx.xx.xxx
	Inventory Directory       : /opt/ibm/powervc-opsmgr/ansible/inventory/powervc211
+--------------------------------------------------------------------------------+
|                 *** End of PowerVC Inventory - powervc211 ***                  |
+--------------------------------------------------------------------------------+
[root@temptest powervc-opsmgr-2.1.1]#
```


#### precheck の実行

```
[root@temptest powervc-opsmgr-2.1.1]# powervc-opsmgr install -c powervc211 -p

PLAY [{{ playbook_task_names.precheck }}] **************************************
Monday 01 May 2023  22:26:04 -0400 (0:00:00.121)       0:00:00.122 ************
[DEPRECATION WARNING]: Distribution rhel 8.6 on host xxx.xx.xx.xxx should use
/usr/libexec/platform-python, but is using /usr/bin/python for backward
compatibility with prior Ansible releases. A future Ansible release will
default to using the discovered platform python for this host. See https://docs
.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for
more information. This feature will be removed in version 2.12. Deprecation
warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.

TASK [Gathering Facts] *********************************************************
[DEPRECATION WARNING]: Distribution rhel 8.6 on host xxx.xx.xx.xxx should use
/usr/libexec/platform-python, but is using /usr/bin/python for backward
compatibility with prior Ansible releases. A future Ansible release will
default to using the discovered platform python for this host. See https://docs
.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for
more information. This feature will be removed in version 2.12. Deprecation
warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
ok: [xxx.xx.xx.xxx]
Monday 01 May 2023  22:26:05 -0400 (0:00:01.869)       0:00:01.991 ************
changed: [xxx.xx.xx.xxx]

TASK [command] *****************************************************************
changed: [xxx.xx.xx.xxx]
Monday 01 May 2023  22:26:06 -0400 (0:00:01.002)       0:00:02.994 ************
ok: [xxx.xx.xx.xxx]

TASK [include_vars] ************************************************************
ok: [xxx.xx.xx.xxx]
Monday 01 May 2023  22:26:06 -0400 (0:00:00.039)       0:00:03.033 ************
ok: [xxx.xx.xx.xxx]

TASK [include_vars] ************************************************************
ok: [xxx.xx.xx.xxx]
Monday 01 May 2023  22:26:07 -0400 (0:00:00.048)       0:00:03.082 ************
ok: [xxx.xx.xx.xxx]


~ 省略 ~


Monday 01 May 2023  22:27:39 -0400 (0:00:00.130)       0:01:35.379 ************
xxx.xx.xx.xxx               : ok=112  changed=21   unreachable=0    failed=0    skipped=115  rescued=0    ignored=2

PLAY RECAP *********************************************************************
xxx.xx.xx.xxx               : ok=112  changed=21   unreachable=0    failed=0    skipped=115  rescued=0    ignored=2

Monday 01 May 2023  22:27:39 -0400 (0:00:00.024)       0:01:35.403 ************
===============================================================================
pvc_precheck : check valid host in dns --------------------------------- 18.46s
pvc_precheck : openstack versions check -------------------------------- 11.87s
pvc_precheck : get service facts ---------------------------------------- 4.84s
pvc_precheck : check host ping ------------------------------------------ 3.55s
pvc_precheck : Validate ping for 4 times grep the 'received' response --- 3.48s
pvc_precheck : package facts -------------------------------------------- 2.57s
Gathering Facts --------------------------------------------------------- 1.87s
pvc_precheck : copying rpm_prereq.rhel18.py to /root on remote host ----- 1.27s
pvc_precheck : checking if versionlock exists --------------------------- 1.02s
pvc_precheck : check net tools ------------------------------------------ 1.01s
pvc_precheck : new naming scheme for RHEL repos ------------------------- 1.01s
pvc_precheck : check epel enabled --------------------------------------- 1.00s
command ----------------------------------------------------------------- 1.00s
pvc_precheck : Check port is available or not --------------------------- 0.93s
pvc_precheck : Gather facts for listening ports ------------------------- 0.92s
pvc_precheck : Get the stale dir path ----------------------------------- 0.92s
pvc_precheck : check ibm dirs access ------------------------------------ 0.88s
pvc_precheck : reduce openstack versions check -------------------------- 0.71s
pvc_precheck : Check if opt/ibm dir is present -------------------------- 0.55s
pvc_precheck : fetching rpm_prereq log file to control node /var/log ---- 0.53s
Refer to
 /opt/ibm/powervc-opsmgr/ansible/artifacts/powervc-opsmgr_powervc211_precheck_20230501_222602/stdout
 for more details.
Precheck passed
[root@temptest powervc-opsmgr-2.1.1]#
```


#### インストール実行


```
[root@temptest powervc-opsmgr-2.1.1]# powervc-opsmgr install -c powervc211

PLAY [{{ playbook_task_names.powervc_legacy_installation }}] *******************
Monday 01 May 2023  22:36:03 -0400 (0:00:00.137)       0:00:00.137 ************
[DEPRECATION WARNING]: Distribution rhel 8.6 on host xxx.xx.xx.xxx should use
/usr/libexec/platform-python, but is using /usr/bin/python for backward
compatibility with prior Ansible releases. A future Ansible release will
default to using the discovered platform python for this host. See https://docs
.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for
more information. This feature will be removed in version 2.12. Deprecation
warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
ok: [xxx.xx.xx.xxx]

TASK [Gathering Facts] *********************************************************
[DEPRECATION WARNING]: Distribution rhel 8.6 on host xxx.xx.xx.xxx should use
/usr/libexec/platform-python, but is using /usr/bin/python for backward
compatibility with prior Ansible releases. A future Ansible release will
default to using the discovered platform python for this host. See https://docs
.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for
more information. This feature will be removed in version 2.12. Deprecation
warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
ok: [xxx.xx.xx.xxx]
Monday 01 May 2023  22:36:04 -0400 (0:00:01.802)       0:00:01.940 ************
changed: [xxx.xx.xx.xxx]


~　省略 ~ 


TASK [pvc_main : Success message for play] *************************************
ok: [xxx.xx.xx.xxx] => {
    "msg": "Play completed successfully"
}
Monday 01 May 2023  23:21:49 -0400 (0:00:00.094)       0:45:46.173 ************
xxx.xx.xx.xxx               : ok=1840 changed=819  unreachable=0    failed=0    skipped=1850 rescued=0    ignored=3

PLAY RECAP *********************************************************************
xxx.xx.xx.xxx               : ok=1840 changed=819  unreachable=0    failed=0    skipped=1850 rescued=0    ignored=3

Monday 01 May 2023  23:21:49 -0400 (0:00:00.091)       0:45:46.265 ************
===============================================================================
pvc_utils : Install selinux packages ---------------------------------- 113.48s
pvc_bootstrap_keystone : install keystone packages --------------------- 63.02s
pvc_galera_new : Install mariadb --------------------------------------- 45.67s
pvc_main : Httpd service restart --------------------------------------- 35.50s
pvc_ui : Install UI server and client packages ------------------------- 34.77s
pvc_bootstrap_keystone : Create predefined roles ----------------------- 32.21s
pvc_reg_services : openstack create endpoints -------------------------- 32.21s
pvc_db_conn : Create DB credentials and grant permissions -------------- 31.35s
pvc_reverse_proxy : restart proxyserver -------------------------------- 30.94s
pvc_utils : Install generic packages ----------------------------------- 29.53s
pvc_mongodb : Install MongoDB package ---------------------------------- 18.19s
pvc_firewalld : Open rabbitmq tcp ports on firewall -------------------- 16.23s
pvc_main : Start powervc powervc-ui-server ----------------------------- 15.65s
pvc_ui : restart ui server --------------------------------------------- 15.63s
pvc_ui : Install nodejs-14 --------------------------------------------- 15.60s
pvc_galera_new : Wait for 15 seconds to fully stop galera service ------ 15.52s
pvc_rabbitmq : Install rabbitmq ---------------------------------------- 15.22s
pvc_main : synchronize inventory --------------------------------------- 14.01s
pvc_cinder : install hitachi packages ---------------------------------- 12.73s
pvc_bumblebee : Install Bumblebee package ------------------------------ 12.67s
IBM PowerVC installation successfully completed at 2023-05-01 23:21:49.
 Refer to
 /opt/ibm/powervc-opsmgr/ansible/artifacts/powervc-opsmgr_powervc211_install_20230501_223601/stdout
 for more details.
Access PowerVC UI at https://xxx.xx.xx.xxx


````

所要 45分程度でした。



---

#### 導入確認


(1) バージョン

```
[root@temptest powervc]# ls
bin   gpfs    log     osee.properties    policy     swidtag         ui
data  images  new-ui  pluggable_drivers  powervcrc  ttv-validation  version.properties
[root@temptest powervc]# cat version.properties
[2.1.1 Install]
name = IBM PowerVC
version = 2.1.1
build = 20230421-0906
oem = no
install-date = 2023-05-01
cloud_enabled = yes
offering = private_cloud
cluster = powervc211
install_method = legacy
```


(2) GUI ログイン

![スクリーンショット 2023-05-02 13.01.35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/517421/0964c941-e48d-d325-01eb-45af7fc9ee52.png)



![スクリーンショット 2023-05-02 13.01.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/517421/cb2b9a35-d790-9cf2-9ea4-1db629b2b965.png)



---

#### おわりに

PowerVC 2.0.3 は 2023/9/30でEoSPSとなる様子です。<font color="LightGray">(ライフサイクルが早いです..) </font>


[PowerVC Lifecycle Information](https://www.ibm.com/support/pages/node/6856373)



以上です。