はじめに
2025年7月下旬 PowerVC 2.3.1 がリリースしました。
導入方法が変わっていないかを確認するため、IBM Power上の RHEL 8.10 LPAR に導入検証を実施したログを記載します。
PowerVC 2.3.1 新機能
PowerVC サポート P11
ヘルスモニターの強化
インストール、アップグレードのヘルスチェック
イベントフレームワークの強化
PowerVC サービスの拡張とデータベースCLIユーティリティ
PowerVC IBM FlashSystem 8.6.2 以降をサポート
ストレージUIの強化
ボリュームのアタッチまたはデタッチ操作の弾力性
powervc-update-scg-ipg CLIの強化
RHEL 9.6 および SLES 15 SP6 OS のサポートが追加
・ インストール、アップグレードのヘルスチェックでは powervc_opsmgr_health_check.py という python スクリプトが用意されており、今回の導入で実行しています。
検証環境
SW: PowerVC 2.3.1 (OpenStack Caracal ベースです)
=> PowerVC 管理ノードは 1 ノード構成
PowerVC version 2.3.1 is built on OpenStack Caracal release.
OpenStack のリリースは 2.3.0 と変わりがないようです。
OS: RHEL 8.10 (Server with GUI edition, CPU 1 Core, Memory 32 GB) on Power (ppc64le)
必要モジュール
・PowerVC 2.3.1 (powervc-opsmgr-rhel-ppcle-2.3.1.tgz)
=> ダウンロードメディアからRHEL版を抜き出しています
・RHEL 8.10 Base iso メディア
・Red Hat High Availability Add-On (RHEL8)
PowerVC 2.3.0 以降では、HA-addon を使用しない Legacy install はサポートが終了したそうです。
RHEL 設定準備
RHEL 8.10 Base media で OS 導入を行いました。
参考:
・HMC GUIでVIOS 仮想メディア・リポジトリの iso ファイルをLPARに割り当てる
・RHEL9 マニュアル: IBM Power サーバーへのRHELインストール
・RHEL 8.4 (ppc64le) で iso ファイルを使用した yum repository の設定
dnf repository 準備
- iso のマウント
# mount -t iso9660 -o loop /work/iso/rhel-8.10-ppc64le-dvd.iso /media/rhel810
mount: /media/rhel810: WARNING: device write-protected, mounted read-only.
# mount -t iso9660 -o loop /work/iso/rhel-highavailability-8.10-ppc64le-dvd.iso /media/rhel810ha
mount: /media/rhel810ha: WARNING: device write-protected, mounted read-only.
# mount -t iso9660 -o loop /work/iso/supp-supplementary-8.10-rhel-8-ppc64le-dvd.iso /media/rhel810-sup
mount: /media/rhel810-sup: WARNING: device write-protected, mounted read-only.
- dnf 設定
# cat /etc/dnf/dnf.conf
[RHEL-BaseOS]
name=RHEL810_BaseOS
baseurl=file:///media/rhel810/BaseOS/
enabled=1
gpgcheck=0
gpgkey=file:///media/rhel810/RPM-GPG-KEY-redhat-release
[RHEL-AppStream]
name=RHEL810_AppStream
baseurl=file:///media/rhel810/AppStream/
enabled=1
gpgcheck=0
gpgkey=file:///media/rhel810/RPM-GPG-KEY-redhat-release
[RHEL-Supplement]
name=RHEL810_Supplement
baseurl=file:///media/rhel810-sup
enabled=1
gpgcheck=0
gpgkey=file:///media/rhel810-sup/RPM-GPG-KEY-redhat-release
[RHEL-HA]
name=RHEL810_High_Availability
baseurl=file:///media/rhel810ha/
enabled=1
gpgcheck=0
gpgkey=file:///media/rhel810ha/RPM-GPG-KEY-redhat-release
- dnf 動作確認
# dnf repolist
repo id repo name
RHEL-AppStream RHEL810_AppStream
RHEL-BaseOS RHEL810_BaseOS
RHEL-HA RHEL810_High_Availability
RHEL-Supplement RHEL810_Supplement
# dnf search pcs
Last metadata expiration check: 0:00:06 ago on Sun 10 Aug 2025 04:05:53 AM EDT.
========================== Name Exactly Matched: pcs ===========================
pcs.ppc64le : Pacemaker/Corosync Configuration System
============================== Name Matched: pcs ===============================
clufter-lib-pcs.noarch : Extra plugins for transforming/analyzing Pacemaker configuration
pcs-snmp.ppc64le : Pacemaker cluster SNMP agent
pcsc-lite.ppc64le : PC/SC Lite smart card framework and applications
pcsc-lite-ccid.ppc64le : Generic USB CCID smart card reader driver
pcsc-lite-doc.noarch : PC/SC Lite developer documentation
pcsc-lite-libs.ppc64le : PC/SC Lite libraries
PowerVC モジュール準備
# ls -ltr
total 1207604
# gzip -d powervc-opsmgr-rhel-ppcle-2.3.1.tgz
# ls -ltr
total 1214480
-rwxr-xr-x. 1 root root 1243627520 Aug 10 03:30 powervc-opsmgr-rhel-ppcle-2.3.1.tar
# tar -xvf powervc-opsmgr-rhel-ppcle-2.3.1.tar (表示を折りたたんでいます)
``` # tar -xvf powervc-opsmgr-rhel-ppcle-2.3.1.tar powervc-opsmgr-2.3.1/ powervc-opsmgr-2.3.1/images/ powervc-opsmgr-2.3.1/images/RPM-GPG-KEY-PowerVC powervc-opsmgr-2.3.1/setup_opsmgr.sh powervc-opsmgr-2.3.1/checks_config.yaml powervc-opsmgr-2.3.1/powervc_opsmgr_health_check.py powervc-opsmgr-2.3.1/powervc_opsmgr_check.py powervc-opsmgr-2.3.1/powervc_opsmgr_interface.py powervc-opsmgr-2.3.1/update_opsmgr.sh powervc-opsmgr-2.3.1/uninstall-opsmgr.sh powervc-opsmgr-2.3.1/opsmgr-version.properties powervc-opsmgr-2.3.1/images/powervc-install-ppcle-rhel-2.3.1.tgz powervc-opsmgr-2.3.1/images/powervc-opsmgr.tgz powervc-opsmgr-2.3.1/images/powervc-hmc-computeplane-rhel-2.3.1.tgz powervc-opsmgr-2.3.1/version.properties powervc-opsmgr-2.3.1/packages/ powervc-opsmgr-2.3.1/packages/noarch/ powervc-opsmgr-2.3.1/packages/noarch/python311-netaddr-0.10.1-5.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-argparse-1.4.0-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-ecdsa-0.15-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-importlib-metadata-6.2.1-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-importlib-resources-6.4.0-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-json-logger-2.0.7-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-lockfile-0.12.2-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-lockfile-0.12.2-3.ibm.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-paramiko-3.4.1-5.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-pbr-6.0.0-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-pyasn1-0.6.0-5.ibm.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-pyasn1-modules-0.4.0-4.ibm.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-setuptools-70.0.0-4.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-decorator-5.1.1-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-stevedore-5.1.0-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-zipp-3.17.0-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-zipp-3.17.0-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-oslo-i18n-6.2.0-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-typing-extensions-4.12.2-5.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-jinja2-3.1.5-1.ibm.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-passlib-1.7.4-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-prettytable-0.7.2-22.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/ansible-2.9.27-99.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/ansible-collection-ansible-posix-1.4.0-1.ibm.el9.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/ansible-collection-community-general-5.5.0-1.ibm.el9.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/ansible-collection-community-mongodb-1.4.2-1.ibm.el9.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-certifi-2020.12.5-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-ipaddress-1.0.23-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-jmespath-1.0.1-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-crudini-0.9.5-1.ibm.el9.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-babel-2.14.0-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-pycadf-3.1.1-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-pycadf-3.1.1-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-hpe3parclient-4.2.12-2.ibm.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-tabulate-0.8.9-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-colorama-0.4.4-2.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-requests-2.32.2-2.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-charset-normalizer-3.3.2-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-urllib3-2.2.1-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-iniparse-0.5-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-idna-3.7-92.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-dateutil-2.9.0-5.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-ply-3.11-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-six-1.16.0-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-chardet-5.2.0-93.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-backports-ssl_match_hostname-3.7.0.1-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-pytz-2024.1-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-pycparser-2.20-95.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/powervc-opsmgr-2.3.1-202507091633.1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python311-pexpect-4.8.0-4.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-ansible-runner-1.4.6-2.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-daemon-2.2.4-3.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-powervc-opsmgr-2.3.1-202507091633.1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/python3-ptyprocess-0.7.0-1.ibm.el8.noarch.rpm powervc-opsmgr-2.3.1/packages/noarch/repodata/ powervc-opsmgr-2.3.1/packages/noarch/repodata/58e68a05e5b2e2b2a9ea070c4a0f1f4e2fd2ba0f7ee1e7af5efc3b31d7e2a4a8-primary.xml.gz powervc-opsmgr-2.3.1/packages/noarch/repodata/e308b265cfa2e9a78f09cbac4df74523dfb37f8c6f475249b8cd808bec458e87-filelists.xml.gz powervc-opsmgr-2.3.1/packages/noarch/repodata/6207967b07193dcb0bb592f51302c550058547755e2a148c13ad3b9d1f0fd2ce-other.xml.gz powervc-opsmgr-2.3.1/packages/noarch/repodata/619065d89ff02581d5a8070a320b3f7143ea3edf7da50b9811754d378e409b51-primary.sqlite.bz2 powervc-opsmgr-2.3.1/packages/noarch/repodata/d9220478b76f80fa8b803fa6e8f77cf331abefc678fd9c010c93bc622f3ccd08-filelists.sqlite.bz2 powervc-opsmgr-2.3.1/packages/noarch/repodata/9b988df40432759448b55ea56b01d6a1a808af31c1209084f71ca07f025c2401-other.sqlite.bz2 powervc-opsmgr-2.3.1/packages/noarch/repodata/repomd.xml powervc-opsmgr-2.3.1/packages/rhel8/ powervc-opsmgr-2.3.1/packages/rhel8/noarch/ powervc-opsmgr-2.3.1/packages/rhel8/noarch/repodata/ powervc-opsmgr-2.3.1/packages/rhel8/noarch/repodata/1cb61ea996355add02b1426ed4c1780ea75ce0c04c5d1107c025c3fbd7d8bcae-primary.xml.gz powervc-opsmgr-2.3.1/packages/rhel8/noarch/repodata/95a4415d859d7120efb6b3cf964c07bebbff9a5275ca673e6e74a97bcbfb2a5f-filelists.xml.gz powervc-opsmgr-2.3.1/packages/rhel8/noarch/repodata/ef3e20691954c3d1318ec3071a982da339f4ed76967ded668b795c9e070aaab6-other.xml.gz powervc-opsmgr-2.3.1/packages/rhel8/noarch/repodata/19699a08b0728d8fcb697ee242e809d5531825194b41494bb28b60e8d04187e3-primary.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel8/noarch/repodata/878c2f1defc6fd1f9553a7fe0230eb31b65d13ce6045bb841aec881f4035e1b9-filelists.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel8/noarch/repodata/f660753fbf07e6546e6ae7cc46cf1c6ce42444cddba666228e239c26da78d966-other.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel8/noarch/repodata/repomd.xml powervc-opsmgr-2.3.1/packages/rhel9/ powervc-opsmgr-2.3.1/packages/rhel9/noarch/ powervc-opsmgr-2.3.1/packages/rhel9/noarch/repodata/ powervc-opsmgr-2.3.1/packages/rhel9/noarch/repodata/1cb61ea996355add02b1426ed4c1780ea75ce0c04c5d1107c025c3fbd7d8bcae-primary.xml.gz powervc-opsmgr-2.3.1/packages/rhel9/noarch/repodata/95a4415d859d7120efb6b3cf964c07bebbff9a5275ca673e6e74a97bcbfb2a5f-filelists.xml.gz powervc-opsmgr-2.3.1/packages/rhel9/noarch/repodata/ef3e20691954c3d1318ec3071a982da339f4ed76967ded668b795c9e070aaab6-other.xml.gz powervc-opsmgr-2.3.1/packages/rhel9/noarch/repodata/19699a08b0728d8fcb697ee242e809d5531825194b41494bb28b60e8d04187e3-primary.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel9/noarch/repodata/878c2f1defc6fd1f9553a7fe0230eb31b65d13ce6045bb841aec881f4035e1b9-filelists.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel9/noarch/repodata/f660753fbf07e6546e6ae7cc46cf1c6ce42444cddba666228e239c26da78d966-other.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel9/noarch/repodata/repomd.xml powervc-opsmgr-2.3.1/packages/ppc64le/ powervc-opsmgr-2.3.1/packages/ppc64le/libsodium-1.0.18-2.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/libsodium-devel-1.0.18-2.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/libsodium-static-1.0.18-2.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python3-bcrypt-3.2.0-2.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python3-PyNaCl-1.4.0-3.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python311-PyYAML-6.0.1-3.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/sshpass-1.06-5.el8.ibm.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python311-markupsafe-2.1.5-4.ibm.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python311-psutil-5.9.8-4.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python3-pyOpenSSL-24.0.0-2.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python3-numpy-1.26.4-2.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python3-numpy-f2py-1.26.4-2.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python3-yappi-1.6.0-2.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/python3-pyrsistent-0.17.3-96.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/ppc64le/repodata/ powervc-opsmgr-2.3.1/packages/ppc64le/repodata/bc5fddce3702e5c82edf32cab57739c7bc632e2e0bbf77d9643a7fa15183cabd-primary.xml.gz powervc-opsmgr-2.3.1/packages/ppc64le/repodata/2430c39b456851521e86f0988a99092697d3557cc0d87cf4e3afc0c4388ff56f-filelists.xml.gz powervc-opsmgr-2.3.1/packages/ppc64le/repodata/9612c6e5717c83786036ee63d6cc7a2c00f93e9318758c3bae2083c55992b7c2-other.xml.gz powervc-opsmgr-2.3.1/packages/ppc64le/repodata/a07f8ba5003a22919aae004ef93a1bcd64e047c67b775a0739f83392f665bd37-primary.sqlite.bz2 powervc-opsmgr-2.3.1/packages/ppc64le/repodata/3803d3a57380f068022af6b1a33478eaac40720baa57d604a9d73882207b9511-filelists.sqlite.bz2 powervc-opsmgr-2.3.1/packages/ppc64le/repodata/6f4848edbcc1169487628492264bebf5b0077df108ba2522a679c921d42a10cf-other.sqlite.bz2 powervc-opsmgr-2.3.1/packages/ppc64le/repodata/repomd.xml powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/ powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/python311-cffi-1.16.0-4.ibm.el8.ppc64le.rpm powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/python311-cryptography-43.0.0-11.ibm.ppc64le.rpm powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/repodata/ powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/repodata/4a7675651b88ea5cb09bb052d010bc07a0a37e839ca7b63d45da3fde5e72085e-primary.xml.gz powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/repodata/f8653cc30d307ee79f7271aacf29a701b1e5c68f1de54877efb5e14a27fb0330-filelists.xml.gz powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/repodata/ad12262358a984d62800ffd28caa77ad2b704627f67f2eb1f8ec6cb471c371f7-other.xml.gz powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/repodata/5abaebf4ef25aa732a7b0f0a51a2fbd00c12910bd762866d3625e2be714f80b6-primary.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/repodata/289179a36e79d2c585b44e360492c141c0012a77ccc7879d300cdf6aa91a7cf1-filelists.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/repodata/883eb77d3189c0f865fc71b46c0a76870adcc79e233d2d121b9bf3e3453ac592-other.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel8/ppc64le/repodata/repomd.xml powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/ powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/python311-cffi-1.16.0-4.ibm.el9.ppc64le.rpm powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/python311-cryptography-43.0.0-11.ibm.ppc64le.rpm powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/repodata/ powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/repodata/b6aa4d7aedf65598e3be3d5bccbd044ede03246c4a03a7e809abc09557a6b398-primary.xml.gz powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/repodata/79551dde66f85072503a66378c3a25a8a4dfb52edb493fc9e31a0c91baae6a4f-filelists.xml.gz powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/repodata/c2a97bf73ad5daeb13c7822083df841f187e21b7893e5247d99008e938430772-other.xml.gz powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/repodata/8dc9e51884985c6302b661e6f9512075442592a25d30ad60c38782fa86a694d2-primary.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/repodata/6887a86caed7c1317fa7c723bcf3e8af5cc50add1db0710ec5f58b933f23c568-filelists.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/repodata/fc1a616292ab3ac70cbb7453e2d5025c2e1ebf52f9ebf474cf3e3b024e8f8899-other.sqlite.bz2 powervc-opsmgr-2.3.1/packages/rhel9/ppc64le/repodata/repomd.xml powervc-opsmgr-2.3.1/lib/ powervc-opsmgr-2.3.1/lib/prepnode_redhat.sh powervc-opsmgr-2.3.1/lib/prepnode_sles.sh powervc-opsmgr-2.3.1/license/ powervc-opsmgr-2.3.1/license/standard/ powervc-opsmgr-2.3.1/license/standard/LI_fr powervc-opsmgr-2.3.1/license/standard/LI_es powervc-opsmgr-2.3.1/license/standard/LI_it powervc-opsmgr-2.3.1/license/standard/LI_ja powervc-opsmgr-2.3.1/license/standard/notices powervc-opsmgr-2.3.1/license/standard/non_ibm_license powervc-opsmgr-2.3.1/license/standard/LI_ko powervc-opsmgr-2.3.1/license/standard/LI_lt powervc-opsmgr-2.3.1/license/standard/LI_pl powervc-opsmgr-2.3.1/license/standard/LI_ru powervc-opsmgr-2.3.1/license/standard/LI_zh powervc-opsmgr-2.3.1/license/standard/LI_pt powervc-opsmgr-2.3.1/license/standard/LI_tr powervc-opsmgr-2.3.1/license/standard/LI_sl powervc-opsmgr-2.3.1/license/standard/LI_zh_TW powervc-opsmgr-2.3.1/license/standard/LI_in powervc-opsmgr-2.3.1/license/standard/LA_cs powervc-opsmgr-2.3.1/license/standard/LA_de powervc-opsmgr-2.3.1/license/standard/LA_el powervc-opsmgr-2.3.1/license/standard/LA_en powervc-opsmgr-2.3.1/license/standard/LA_es powervc-opsmgr-2.3.1/license/standard/LA_fr powervc-opsmgr-2.3.1/license/standard/LA_in powervc-opsmgr-2.3.1/license/standard/LA_it powervc-opsmgr-2.3.1/license/standard/LA_ja powervc-opsmgr-2.3.1/license/standard/LA_ko powervc-opsmgr-2.3.1/license/standard/LA_lt powervc-opsmgr-2.3.1/license/standard/LA_pl powervc-opsmgr-2.3.1/license/standard/LA_pt powervc-opsmgr-2.3.1/license/standard/LA_ru powervc-opsmgr-2.3.1/license/standard/LA_sl powervc-opsmgr-2.3.1/license/standard/LA_tr powervc-opsmgr-2.3.1/license/standard/LA_zh powervc-opsmgr-2.3.1/license/standard/LA_zh_TW powervc-opsmgr-2.3.1/license/standard/LI_cs powervc-opsmgr-2.3.1/license/standard/LI_de powervc-opsmgr-2.3.1/license/standard/LI_el powervc-opsmgr-2.3.1/license/standard/LI_en powervc-opsmgr-2.3.1/lap/ powervc-opsmgr-2.3.1/lap/LAPApp.jar ```# ls -l
total 1214484
drwxr-xr-x. 7 root root 4096 Jul 9 14:03 powervc-opsmgr-2.3.1
-rwxr-xr-x. 1 root root 1243627520 Aug 10 03:30 powervc-opsmgr-rhel-ppcle-2.3.1.tar
# cd powervc-opsmgr-2.3.1
# ls -l
total 304
-rwxrwx---. 1 root root 20951 Jul 9 14:01 checks_config.yaml
drwxr-xr-x. 2 root root 150 Aug 10 04:36 images
drwxr-xr-x. 2 root root 24 Jul 9 14:04 lap
drwxr-xr-x. 2 root root 56 Jul 9 14:04 lib
drwxr-xr-x. 3 root root 22 Jul 9 14:04 license
-rwxr-xr-x. 1 root root 59 Jul 9 14:01 opsmgr-version.properties
drwxr-xr-x. 6 root root 61 Jul 9 14:04 packages
-rwxrwx---. 1 root root 157912 Jul 9 14:01 powervc_opsmgr_check.py
-rwxrwx---. 1 root root 4180 Jul 9 14:01 powervc_opsmgr_health_check.py
-rwxrwx---. 1 root root 7146 Jul 9 14:01 powervc_opsmgr_interface.py
-rwxrwx---. 1 root root 43916 Jul 9 14:01 setup_opsmgr.sh
-rwxrwx---. 1 root root 3927 Jul 9 14:01 uninstall-opsmgr.sh
-rwxrwx---. 1 root root 51310 Jul 9 14:01 update_opsmgr.sh
-r--r--r--. 1 root root 38 Jul 9 13:30 version.properties
#
以前のバージョンとの違いで、powervc_opsmgr_check.py、powervc_opsmgr_health_check.py、powervc_opsmgr_interface.py といった python スクリプトが存在しています。
opsmgr utility の導入
最初に opsmgr を導入します。
最初に、# export LANG=C を実行しています。これにより、コマンドの出力メッセージが英語に固定され、文字化けや意図しない挙動を防ぐことができます。
# export LANG=C
PowerVC 2.3.1 New :powervc_opsmgr_health_check.py を実行します。
# python3 powervc_opsmgr_health_check.py
INFO: Disk Sanity check successful
INFO: Cryptographic policy is set to: DEFAULT
WARNING: No DNS servers configured in /etc/resolv.conf. This might obstruct PowerVC installation.
WARNING: System time is not synchronized. This might obstruct PowerVC installation.
INFO: localectl is working correctly and locale settings are as expected.
INFO: Available swap space (16.01GB) meets requirement
WARNING: Hostname powervc231_lpar does not resolve. This might obstruct PowerVC installation.
INFO: PermitRootLogin is correctly set to 'yes'.
INFO: Root password is not expired.
INFO: Required services are not masked
INFO: No disk is at more than '90%' usage
INFO: No duplicate entries in /etc/hosts
INFO: No Idisk is at more than '90%' usage
WARNING: Ensure that AppStream, BaseOS and Supplementary repo are accessible.
INFO: All required ports are free.
INFO: Available memory (31646MB) meets the requirement.
INFO: Disk space check completed successfully.
INFO: System load is within acceptable limits.
INFO: No conflicting rpm's present
INFO: PAM config check successful
INFO: Attrs check successful
WARNING: Pip versions ['pip3.6', 'pip3'] present which might affect PowerVC operations
INFO: Umask check successfull. Current value is 0022
INFO: Selinux check successfull. Current value is enforcing.
INFO: OS check successfull. Current value is rhel8.10.
INFO: net-tools is installed
WARNING: Ensure that AppStream, BaseOS and Supplementary repo are accessible.
INFO: AppArmor is not enabled, which is the recommended configuration for a smooth PowerVC installation.
WARNING: Failed to run 'subscription-manager status, ignore this if it's a local repo configuration
INFO: The EPEL repository is not enabled, which is the recommended configuration for a smooth PowerVC installation.
INFO: No broken dependencies detected.
INFO: yum repolist success
Node Step Check Number Check Name Status Description
====================================================================================================
powervc231_lpar Setupopsmgr pvc_check_051 Disk Sanity Check Pass Disk Sanity check successful
powervc231_lpar Setupopsmgr pvc_check_001 Check Crypto Policy Pass Cryptographic policy is set to: DEFAULT
powervc231_lpar Setupopsmgr pvc_check_007 DNS Configuration Warn No DNS servers configured in /etc/resolv.conf. This might obstruct PowerVC installation.
powervc231_lpar Setupopsmgr pvc_check_009 Time Synchronization Warn System time is not synchronized. This might obstruct PowerVC installation.
powervc231_lpar Setupopsmgr pvc_check_012 Check Localectl Pass localectl is working correctly and locale settings are as expected.
powervc231_lpar Setupopsmgr pvc_check_014 Swap space Pass Available swap space (16.01GB) meets requirement
powervc231_lpar Setupopsmgr pvc_check_015 Hostname Resolution Warn Hostname powervc231_lpar does not resolve. This might obstruct PowerVC installation.
powervc231_lpar Setupopsmgr pvc_check_016 Permit Root Login Pass PermitRootLogin is correctly set to 'yes'.
powervc231_lpar Setupopsmgr pvc_check_017 Root Password Expiration Pass Root password is not expired.
powervc231_lpar Setupopsmgr pvc_check_018 Mask Service Pass Required services are not masked
powervc231_lpar Setupopsmgr pvc_check_019 Disk Usage Pass No disk is at more than '90%' usage
powervc231_lpar Setupopsmgr pvc_check_020 Check /etc/hosts Pass No duplicate entries in /etc/hosts
powervc231_lpar Setupopsmgr pvc_check_023 IDisk Usage Pass No Idisk is at more than '90%' usage
powervc231_lpar Setupopsmgr pvc_check_013 Repo access Warn Ensure that AppStream, BaseOS and Supplementary repo are accessible.
powervc231_lpar Setupopsmgr pvc_check_003 Check Ports Pass All required ports are free.
powervc231_lpar Setupopsmgr pvc_check_004 System Resources Pass Available memory (31646MB) meets the requirement.
powervc231_lpar Setupopsmgr pvc_check_005 Disk Space Pass Disk space check completed successfully.
powervc231_lpar Setupopsmgr pvc_check_011 Load Average Pass System load is within acceptable limits.
powervc231_lpar Setupopsmgr pvc_check_022 Check Rpm Conflict Pass No conflicting rpm's present
powervc231_lpar Setupopsmgr pvc_check_039 Pamd config check Pass PAM config check successful
powervc231_lpar Setupopsmgr pvc_check_040 Check attrs Pass Attrs check successful
powervc231_lpar Setupopsmgr pvc_check_041 PIP Check Warn Pip versions ['pip3.6', 'pip3'] present which might affect PowerVC operations
powervc231_lpar Setupopsmgr pvc_check_046 Umask status Pass Umask check successfull. Current value is 0022
powervc231_lpar Setupopsmgr pvc_check_047 Selinux status Pass Selinux check successfull. Current value is enforcing.
powervc231_lpar Setupopsmgr pvc_check_048 OS Version Pass OS check successfull. Current value is rhel8.10.
powervc231_lpar Setupopsmgr pvc_check_059 Net tools check Pass net-tools is installed
powervc231_lpar Setupopsmgr pvc_check_013 Repo access Warn Ensure that AppStream, BaseOS and Supplementary repo are accessible.
powervc231_lpar Setupopsmgr pvc_check_006 Check App Armor Pass AppArmor is not enabled, which is the recommended configuration for a smooth PowerVC
installation.
powervc231_lpar Setupopsmgr pvc_check_002 Subscription Manager Warn Failed to run 'subscription-manager status, ignore this if it's a local repo configuration
powervc231_lpar Setupopsmgr pvc_check_025 Epel Repo Check Pass The EPEL repository is not enabled, which is the recommended configuration for a smooth
PowerVC installation.
powervc231_lpar Setupopsmgr pvc_check_008 Broken Dependencies Pass No broken dependencies detected.
powervc231_lpar Setupopsmgr pvc_check_052 Repo list Check Pass yum repolist success
Please refer to health check logs at /var/log/pvc_prehealth_check.log
For any failure related to PowerVC Health Checks, Please contact IBM Support
Warn 表示はありますが、fail ではないので続けます。
setup_opsmgr.sh の実行
setup_opsmgr.sh のヘルプを確認します。
# ./setup_opsmgr.sh -h
Usage: ./setup_opsmgr.sh [ -h ] [ -s ]
optional arguments:
-h, --help show this help message and exit
-s runs in silent mode
-o use opensuse repo for SLES distro
setup_opsmgr.sh の実行
ここでライセンス同意を実施しています。
# ./setup_opsmgr.sh
################################################################################
Starting the PowerVC:setup_prepnode 2.3.1 installation on:
2025-08-10T04:43:06-04:00
################################################################################
2025-08-10T04:43:09.11-04:00 [WARNING]:[] 2.3 or later opsmgr will install and set default python to 3.11 at system level
Would you like to proceed?
Please answer yes or no.
Would you like to proceed?yes
2025-08-10T04:43:18.66-04:00 [INFO]:[] Health check completed
2025-08-10T04:43:18.67-04:00 [INFO]:[VALIDATION] BASE DIRECTORY : /opt/ibm/powervc-opsmgr
2025-08-10T04:43:18.67-04:00 [INFO]:[VALIDATION] INSTALL SCRIPT : /work/powervc/powervc-opsmgr-2.3.1/setup_opsmgr.sh
2025-08-10T04:43:18.67-04:00 [INFO]:[VALIDATION] LOG FILE : /opt/ibm/powervc-opsmgr/log/prep_node/prep_node_2025-08-10-0443.log
2025-08-10T04:43:18.68-04:00 [INFO]:[VALIDATION] OPERATING SYSTEM: Red Hat Enterprise Linux.
2025-08-10T04:43:18.69-04:00 [INFO]:[VALIDATION] User ID : root
2025-08-10T04:43:18.74-04:00 [INFO]:[VALIDATION] 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 for Private Cloud 2.3.1 (5765-VC2)
The following standard terms apply to Licensee's use of the
Program.
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
2025-08-10T04:43:38.13-04:00 [INFO]:[VALIDATION] License accepted.
2025-08-10T04:43:38.15-04:00 [INFO]:[VALIDATION] Configuring Yum repository for PowerVC-Opsmgr...
2025-08-10T04:43:39.07-04:00 [INFO]:[VALIDATION] Configuring Yum repository for PowerVC-Opsmgr rhel8...
2025-08-10T04:43:51.88-04:00 [INFO]:[VALIDATION] Installing PowerVC Ops. Manager...
2025-08-10T04:44:08.19-04:00 [INFO]:[INSTALL_POWERVC_OPSMGR] POWERVC OPSMGR PACKAGES : sshpass python3-netaddr rsync python3-oslo-i18n python3-crudini python3-PyNaCl python3-powervc-opsmgr
2025-08-10T04:45:08.55-04:00 [INFO]:[INSTALL_POWERVC_OPSMGR] PowerVC Opsmgr packages installed successfully.
2025-08-10T04:45:09.79-04:00 [INFO]:[INSTALL_POWERVC_OPSMGR] net-tools package already present.
################################################################################
PowerVC:setup_prepnode installation completed at 2025-08-10T04:45:09-04:00.
Refer to
/opt/ibm/powervc-opsmgr/log/prep_node/prep_node_2025-08-10-0443.log
for more details.
################################################################################
導入されました。
コマンド実行を確認すると、以下のエラーが出ます。
# powervc-opsmgr -h
Traceback (most recent call last):
File "/usr/bin/powervc-opsmgr", line 13, in <module>
from powervc_opsmgr.cmd.opsmgr import main
File "/usr/lib/python3.11/site-packages/powervc_opsmgr/cmd/opsmgr.py", line 18, in <module>
from powervc_opsmgr.utils import opsmgr_utils
File "/usr/lib/python3.11/site-packages/powervc_opsmgr/utils/opsmgr_utils.py", line 10, in <module>
import ansible_runner
File "/usr/lib/python3.11/site-packages/ansible_runner/__init__.py", line 3, in <module>
from .interface import run, run_async # noqa
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/ansible_runner/interface.py", line 24, in <module>
from ansible_runner.runner_config import RunnerConfig
File "/usr/lib/python3.11/site-packages/ansible_runner/runner_config.py", line 21, in <module>
import pexpect
File "/usr/lib/python3.11/site-packages/pexpect/__init__.py", line 75, in <module>
from .pty_spawn import spawn, spawnu
File "/usr/lib/python3.11/site-packages/pexpect/pty_spawn.py", line 10, in <module>
import ptyprocess
ModuleNotFoundError: No module named '# powervc-opsmgr -h
Traceback (most recent call last):
File "/usr/bin/powervc-opsmgr", line 13, in <module>
from powervc_opsmgr.cmd.opsmgr import main
File "/usr/lib/python3.11/site-packages/powervc_opsmgr/cmd/opsmgr.py", line 18, in <module>
from powervc_opsmgr.utils import opsmgr_utils
File "/usr/lib/python3.11/site-packages/powervc_opsmgr/utils/opsmgr_utils.py", line 10, in <module>
import ansible_runner
File "/usr/lib/python3.11/site-packages/ansible_runner/__init__.py", line 3, in <module>
from .interface import run, run_async # noqa
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/ansible_runner/interface.py", line 24, in <module>
from ansible_runner.runner_config import RunnerConfig
File "/usr/lib/python3.11/site-packages/ansible_runner/runner_config.py", line 21, in <module>
import pexpect
File "/usr/lib/python3.11/site-packages/pexpect/__init__.py", line 75, in <module>
from .pty_spawn import spawn, spawnu
File "/usr/lib/python3.11/site-packages/pexpect/pty_spawn.py", line 10, in <module>
import ptyprocess
ModuleNotFoundError: No module named 'ptyprocess'
以前も同様に対応したことがありますが、モジュールの導入が RHEL から導入されたか、PowerVC 同梱のものかでバージョンが異なるために発生していると推測されます。
ptyprocess のモジュールをサーバー上で確認します。
# find / -name *ptyprocess*
/usr/lib/python3.6/site-packages/ptyprocess
/usr/lib/python3.6/site-packages/ptyprocess/__pycache__/ptyprocess.cpython-36.opt-1.pyc
/usr/lib/python3.6/site-packages/ptyprocess/__pycache__/ptyprocess.cpython-36.pyc
/usr/lib/python3.6/site-packages/ptyprocess/ptyprocess.py
/usr/lib/python3.6/site-packages/ptyprocess-0.5.2-py3.6.egg-info
/usr/share/licenses/python3-ptyprocess
/usr/share/doc/python3-ptyprocess
/media/rhel810/AppStream/Packages/python3-ptyprocess-0.5.2-4.el8.noarch.rpm
/opt/ibm/powervc-opsmgr/images/powervc-2.3.1/packages/osp/python3/noarch/python3-ptyprocess-0.7.0-1.ibm.el8.noarch.rpm
/opt/ibm/powervc-opsmgr/images/powervc-opsmgr/packages/noarch/python3-ptyprocess-0.7.0-1.ibm.el8.noarch.rpm
/work/powervc/powervc-opsmgr-2.3.1/packages/noarch/python3-ptyprocess-0.7.0-1.ibm.el8.noarch.rpm
現在導入されている ptyprocess のバージョンを確認します。
# rpm -qa | grep python3-ptyprocess
python3-ptyprocess-0.5.2-4.el8.noarch
PowerVC 同梱モジュールは python3-ptyprocess-0.7.0-1.ibm.el8.noarch.rpm が存在しており、少し新しいのでこちらを使用してアップデートします。
# rpm -Uvh /work/powervc/powervc-opsmgr-2.3.1/packages/noarch/python3-ptyprocess-0.7.0-1.ibm.el8.noarch.rpm
Verifying... ################################# [100%]
Preparing... ################################# [100%]
Updating / installing...
1:python3-ptyprocess-0.7.0-1.ibm.el################################# [ 50%]
Cleaning up / removing...
2:python3-ptyprocess-0.5.2-4.el8 ################################# [100%]
再度、powervc-opsmgr の実行を試します。
# powervc-opsmgr -h
usage: powervc-opsmgr [-h]
{addnodes,apply-ifix,backup,config,install,inventory,replacenode,restore,resync_node,uninstall,update}
PowerVC Operations Manager CLI
powervc-opsmgr subcommands:
{addnodes,apply-ifix,backup,config,install,inventory,replacenode,restore,resync_node,uninstall,update}
options:
-h, --help show this help message and exit
List of sub-commands available in powervc-opsmgr:
addnodes Add nodes to existing PowerVC
apply-ifix Apply iFix against all/subset of nodes in management node cluster
backup Backup of PowerVC Configurations and Data.
config Manage PowerVC Opsmgr configuration settings such as ip's, users, certs etc
install Installs PowerVC management plane
inventory Captures and lists management node inventory details
replacenode Replacing a node from PowerVC Cluster.
restore Restores configuration and DB against PowerVC nodes
resync_node Re-Sync of Conf files for management and compute plane
uninstall Uninstall PowerVC management plane
update Updates PowerVC management plane
正しく表示が出ました。モジュールの問題は解消され、opsmgr が導入できました。
PowerVC 導入で使用する ssh 鍵の作成
PowerVC 2.3 New
PowerVC 2.3 以前では、PowerVC の導入時はパスワード指定でしたが、2.3.0 以降では、ssh 鍵での指定が可能となっています。
SSH key-based inventory creation
PowerVC 2.3.1 supports SSH key-based inventory creation.
今回は、ssh鍵を使用した導入を実施します。
ssh 鍵の作成と登録
RSA 4096 bit で ssh 鍵を作成します。
# ssh-keygen -t RSA -b 4096 -f /tmp/temp_id_rsa
Generating public/private RSA key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /tmp/temp_id_rsa.
Your public key has been saved in /tmp/temp_id_rsa.pub.
The key fingerprint is:
SHA256:fYAVWY6OBo82dFc360pVm+ax99z1dOox3uycOwVsAY8 root@powervc231_lpar
The key's randomart image is:
+---[RSA 4096]----+
| o++.o .|
| o.+ +.+o|
| o o + E.+* |
| . = = . o* o|
| + S o o..+=|
| . o o . +O|
| . + *|
| o B.|
| o+B|
+----[SHA256]-----+
自分自身に対して、鍵交換で作成したssh鍵を登録します。
# ssh-copy-id -i /tmp/temp_id_rsa.pub root@powervc231_lpar
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/tmp/temp_id_rsa.pub"
The authenticity of host 'powervc231_lpar (172.xx.xx.xx)' can't be established.
ECDSA key fingerprint is SHA256:ukgtTY7y/cnUpEBXrQNfQNbBQVRAOt0XGZpopDxlf4s.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@powervc231_lpar's password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'root@powervc231_lpar'"
and check to make sure that only the key(s) you wanted were added.
鍵登録が完了しました。
導入用インベントリーの作成
powervc-opsmgr inventory -c <クラスター名> -k でインベントリーを作成します。
# powervc-opsmgr inventory -c powervc231 -k /tmp/temp_id_rsa (折りたたんでいます)
# powervc-opsmgr inventory -c powervc231 -k /tmp/temp_id_rsa
+--------------------------------------------------------------------------------+
| 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 : 172.xx.xx.xx
Enter Username for all nodes : root
+--------------------------------------------------------------------------------+
Virtual IP
Enter Virtual IP : 172.xx.xx.xy
+--------------------------------------------------------------------------------+
+--------------------------------------------------------------------------------+
| PowerVC Inventory - powervc231 |
+--------------------------------------------------------------------------------+
Cluster Name : powervc231
Cluster ID : 0c4e8731-25b6-4234-afa6-5794734d8a99
Install Method : cluster
Firewall Config : True
Login User : root
Virtual IP : 172.xx.xx.xy
Primary/Bootstrap Host : 172.xx.xx.xx
Hosts : 172.xx.xx.xx
Edition : private_cloud
+--------------------------------------------------------------------------------+
| *** End of PowerVC Inventory - powervc231 *** |
+--------------------------------------------------------------------------------+
Establishing passwordless connection
PLAY [{{ playbook_task_names.configure_ssh_keys }}] ****************************
TASK [Gathering Facts] *********************************************************
Sunday 10 August 2025 05:20:45 -0400 (0:00:00.070) 0:00:00.070 *********
ok: [172.xx.xx.xx]
TASK [command] *****************************************************************
Sunday 10 August 2025 05:20:47 -0400 (0:00:01.707) 0:00:01.777 *********
changed: [172.xx.xx.xx]
TASK [include_vars] ************************************************************
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.803) 0:00:02.581 *********
ok: [172.xx.xx.xx]
TASK [include_vars] ************************************************************
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.034) 0:00:02.616 *********
ok: [172.xx.xx.xx]
TASK [{{ pvc_utils_task_names.store_locale_variable }}] ************************
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.041) 0:00:02.657 *********
ok: [172.xx.xx.xx]
TASK [include_vars] ************************************************************
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.035) 0:00:02.693 *********
skipping: [172.xx.xx.xx]
TASK [{{ pvc_utils_task_names.error_message_for_utils_nls }}] ******************
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.028) 0:00:02.721 *********
skipping: [172.xx.xx.xx]
TASK [include_vars] ************************************************************
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.026) 0:00:02.747 *********
ok: [172.xx.xx.xx]
TASK [include_vars] ************************************************************
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.032) 0:00:02.780 *********
ok: [172.xx.xx.xx]
TASK [pvc_sshkeys : include_vars] **********************************************
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.035) 0:00:02.816 *********
ok: [172.xx.xx.xx]
TASK [{{ pvc_sshkeys_task_names.get_home_directory_for_ansible_user }}] ********
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.034) 0:00:02.851 *********
ok: [172.xx.xx.xx]
TASK [{{ pvc_sshkeys_task_names.set_home_directory_for_ansible_user }}] ********
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.489) 0:00:03.340 *********
ok: [172.xx.xx.xx]
TASK [pvc_sshkeys : Get the stat for ssh directory] ****************************
Sunday 10 August 2025 05:20:48 -0400 (0:00:00.034) 0:00:03.375 *********
ok: [172.xx.xx.xx]
TASK [pvc_sshkeys : Delete ssh is file or link] ********************************
Sunday 10 August 2025 05:20:49 -0400 (0:00:00.404) 0:00:03.780 *********
skipping: [172.xx.xx.xx]
TASK [pvc_sshkeys : Creates ssh directory /root/.ssh] **************************
Sunday 10 August 2025 05:20:49 -0400 (0:00:00.030) 0:00:03.811 *********
ok: [172.xx.xx.xx]
TASK [pvc_sshkeys : copy SSH Key files if specified] ***************************
Sunday 10 August 2025 05:20:49 -0400 (0:00:00.418) 0:00:04.229 *********
changed: [172.xx.xx.xx]
TASK [pvc_sshkeys : copy SSH Key files if specified] ***************************
Sunday 10 August 2025 05:20:50 -0400 (0:00:00.508) 0:00:04.737 *********
changed: [172.xx.xx.xx]
TASK [pvc_sshkeys : Generate ssh key pair] *************************************
Sunday 10 August 2025 05:20:50 -0400 (0:00:00.374) 0:00:05.112 *********
ok: [172.xx.xx.xx]
TASK [pvc_sshkeys : Fetch public key] ******************************************
Sunday 10 August 2025 05:20:51 -0400 (0:00:00.330) 0:00:05.442 *********
ok: [172.xx.xx.xx]
TASK [pvc_sshkeys : Copy the keys to the authorized_keys file] *****************
Sunday 10 August 2025 05:20:51 -0400 (0:00:00.389) 0:00:05.832 *********
ok: [172.xx.xx.xx] => (item=172.xx.xx.xx)
TASK [pvc_sshkeys : Make all Hosts known to each other - update known_hosts files] ***
Sunday 10 August 2025 05:20:51 -0400 (0:00:00.537) 0:00:06.370 *********
# 172.xx.xx.xx:22 SSH-2.0-OpenSSH_8.0
# 172.xx.xx.xx:22 SSH-2.0-OpenSSH_8.0
# 172.xx.xx.xx:22 SSH-2.0-OpenSSH_8.0
ok: [172.xx.xx.xx] => (item=172.xx.xx.xx)
# localhost:22 SSH-2.0-OpenSSH_8.0
# localhost:22 SSH-2.0-OpenSSH_8.0
# localhost:22 SSH-2.0-OpenSSH_8.0
ok: [172.xx.xx.xx] => (item=localhost)
# 127.0.0.1:22 SSH-2.0-OpenSSH_8.0
# 127.0.0.1:22 SSH-2.0-OpenSSH_8.0
# 127.0.0.1:22 SSH-2.0-OpenSSH_8.0
ok: [172.xx.xx.xx] => (item=127.0.0.1)
172.xx.xx.xx : ok=18 changed=3 unreachable=0 failed=0 skipped=3 rescued=0 ignored=0
PLAY RECAP *********************************************************************
172.xx.xx.xx : ok=18 changed=3 unreachable=0 failed=0 skipped=3 rescued=0 ignored=0
Sunday 10 August 2025 05:20:53 -0400 (0:00:01.126) 0:00:07.496 *********
===============================================================================
Gathering Facts --------------------------------------------------------- 1.71s
pvc_sshkeys : Make all Hosts known to each other - update known_hosts files --- 1.13s
command ----------------------------------------------------------------- 0.80s
pvc_sshkeys : Copy the keys to the authorized_keys file ----------------- 0.54s
pvc_sshkeys : copy SSH Key files if specified --------------------------- 0.51s
{{ pvc_sshkeys_task_names.get_home_directory_for_ansible_user }} -------- 0.49s
pvc_sshkeys : Creates ssh directory /root/.ssh -------------------------- 0.42s
pvc_sshkeys : Get the stat for ssh directory ---------------------------- 0.40s
pvc_sshkeys : Fetch public key ------------------------------------------ 0.39s
pvc_sshkeys : copy SSH Key files if specified --------------------------- 0.37s
pvc_sshkeys : Generate ssh key pair ------------------------------------- 0.33s
include_vars ------------------------------------------------------------ 0.04s
include_vars ------------------------------------------------------------ 0.04s
{{ pvc_utils_task_names.store_locale_variable }} ------------------------ 0.04s
include_vars ------------------------------------------------------------ 0.04s
{{ pvc_sshkeys_task_names.set_home_directory_for_ansible_user }} -------- 0.03s
pvc_sshkeys : include_vars ---------------------------------------------- 0.03s
include_vars ------------------------------------------------------------ 0.03s
pvc_sshkeys : Delete ssh is file or link -------------------------------- 0.03s
include_vars ------------------------------------------------------------ 0.03s
SSH Key exchange successfully completed at, 2025-08-10 05:20:53.,
Refer to
/opt/ibm/powervc-opsmgr/ansible/artifacts/powervc-opsmgr_powervc231_ssh_key_xchg_20250810_052044/stdout
for more details.
Inventory file generated successfully at /opt/ibm/powervc-opsmgr/ansible/inventory/powervc231
+--------------------------------------------------------------------------------+
| PowerVC Inventory - powervc231 |
+--------------------------------------------------------------------------------+
Cluster Name : powervc231
Cluster ID : 0c4e8731-25b6-4234-afa6-5794734d8a99
Install Method : cluster
Firewall Config : True
Login User : root
Virtual IP : 172.xx.xx.xy
Primary/Bootstrap Host : 172.xx.xx.xx
Hosts : 172.xx.xx.xx
Edition : private_cloud
Inventory Directory : /opt/ibm/powervc-opsmgr/ansible/inventory/powervc231
+--------------------------------------------------------------------------------+
| *** End of PowerVC Inventory - powervc231 *** |
+--------------------------------------------------------------------------------+
作成された inventory
Inventory file generated successfully at /opt/ibm/powervc-opsmgr/ansible/inventory/powervc231
+--------------------------------------------------------------------------------+
| PowerVC Inventory - powervc231 |
+--------------------------------------------------------------------------------+
Cluster Name : powervc231
Cluster ID : 0c4e8731-25b6-4234-afa6-5794734d8a99
Install Method : cluster
Firewall Config : True
Login User : root
Virtual IP : 172.xx.xx.xy
Primary/Bootstrap Host : 172.xx.xx.xx
Hosts : 172.xx.xx.xx
Edition : private_cloud
Inventory Directory : /opt/ibm/powervc-opsmgr/ansible/inventory/powervc231
+--------------------------------------------------------------------------------+
| *** End of PowerVC Inventory - powervc231 *** |
+--------------------------------------------------------------------------------+
Pre Check
導入の pre check を実施します。
# powervc-opsmgr install -c powervc231 -p (折りたたんでいます)
# powervc-opsmgr install -c powervc231 -p
PLAY [{{ playbook_task_names.precheck }}] **************************************
Sunday 10 August 2025 05:22:40 -0400 (0:00:00.109) 0:00:00.109 *********
ok: [172.xx.xx.xx]
TASK [Gathering Facts] *********************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:41 -0400 (0:00:01.706) 0:00:01.815 *********
changed: [172.xx.xx.xx]
TASK [command] *****************************************************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:42 -0400 (0:00:00.916) 0:00:02.731 *********
TASK [include_vars] ************************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:42 -0400 (0:00:00.034) 0:00:02.766 *********
TASK [include_vars] ************************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:42 -0400 (0:00:00.040) 0:00:02.807 *********
TASK [{{ pvc_utils_task_names.store_locale_variable }}] ************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:42 -0400 (0:00:00.039) 0:00:02.846 *********
Sunday 10 August 2025 05:22:42 -0400 (0:00:00.029) 0:00:02.875 *********
Sunday 10 August 2025 05:22:43 -0400 (0:00:00.027) 0:00:02.903 *********
TASK [include_vars] ************************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:43 -0400 (0:00:00.037) 0:00:02.941 *********
TASK [include_vars] ************************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:43 -0400 (0:00:00.039) 0:00:02.980 *********
TASK [pvc_precheck : include_vars] *********************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:43 -0400 (0:00:00.039) 0:00:03.020 *********
Sunday 10 August 2025 05:22:43 -0400 (0:00:00.033) 0:00:03.053 *********
TASK [pvc_precheck : package facts] ********************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:45 -0400 (0:00:02.523) 0:00:05.577 *********
Sunday 10 August 2025 05:22:45 -0400 (0:00:00.105) 0:00:05.683 *********
[WARNING]: Consider using the yum, dnf or zypper module rather than running
'rpm'. If you need to use command because yum, dnf or zypper is insufficient
you can add 'warn: false' to this command task or set 'command_warnings=False'
in ansible.cfg to get rid of this message.
TASK [pvc_precheck : Precheck if ansible is powervc provided] ******************
[WARNING]: Consider using the yum, dnf or zypper module rather than running
'rpm'. If you need to use command because yum, dnf or zypper is insufficient
you can add 'warn: false' to this command task or set 'command_warnings=False'
in ansible.cfg to get rid of this message.
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:46 -0400 (0:00:00.375) 0:00:06.058 *********
Sunday 10 August 2025 05:22:46 -0400 (0:00:00.101) 0:00:06.160 *********
changed: [172.xx.xx.xx]
TASK [pvc_precheck : Precheck if distro version] *******************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:46 -0400 (0:00:00.349) 0:00:06.510 *********
Sunday 10 August 2025 05:22:46 -0400 (0:00:00.141) 0:00:06.651 *********
Sunday 10 August 2025 05:22:46 -0400 (0:00:00.098) 0:00:06.750 *********
Sunday 10 August 2025 05:22:46 -0400 (0:00:00.101) 0:00:06.852 *********
fatal: [172.xx.xx.xx]: FAILED! => {"changed": true, "cmd": ["grep", "cluster =", "/opt/ibm/powervc/version.properties"], "delta": "0:00:00.003255", "end": "2025-08-10 05:22:47.202899", "msg": "non-zero return code", "rc": 2, "start": "2025-08-10 05:22:47.199644", "stderr": "grep: /opt/ibm/powervc/version.properties: No such file or directory", "stderr_lines": ["grep: /opt/ibm/powervc/version.properties: No such file or directory"], "stdout": "", "stdout_lines": []}
...ignoring
TASK [pvc_precheck : get cluster name from /opt/ibm/powervc/version.properties] ***
fatal: [172.xx.xx.xx]: FAILED! => {"changed": true, "cmd": ["grep", "cluster =", "/opt/ibm/powervc/version.properties"], "delta": "0:00:00.003255", "end": "2025-08-10 05:22:47.202899", "msg": "non-zero return code", "rc": 2, "start": "2025-08-10 05:22:47.199644", "stderr": "grep: /opt/ibm/powervc/version.properties: No such file or directory", "stderr_lines": ["grep: /opt/ibm/powervc/version.properties: No such file or directory"], "stdout": "", "stdout_lines": []}
...ignoring
Sunday 10 August 2025 05:22:47 -0400 (0:00:00.337) 0:00:07.189 *********
TASK [pvc_precheck : set cluster name from remote nodes] ***********************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:47 -0400 (0:00:00.105) 0:00:07.294 *********
Sunday 10 August 2025 05:22:47 -0400 (0:00:00.098) 0:00:07.393 *********
Sunday 10 August 2025 05:22:47 -0400 (0:00:00.100) 0:00:07.494 *********
Sunday 10 August 2025 05:22:47 -0400 (0:00:00.149) 0:00:07.643 *********
TASK [pvc_precheck : getting the interface name] *******************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:48 -0400 (0:00:00.343) 0:00:07.986 *********
TASK [pvc_precheck : Setting HOST_INTERFACE as a ansible fact] *****************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:48 -0400 (0:00:00.105) 0:00:08.091 *********
ok: [172.xx.xx.xx] => {
"msg": "Install Type ipv4 is selected"
}
TASK [pvc_precheck : debug] ****************************************************
ok: [172.xx.xx.xx] => {
"msg": "Install Type ipv4 is selected"
}
Sunday 10 August 2025 05:22:48 -0400 (0:00:00.104) 0:00:08.196 *********
TASK [pvc_precheck : getting ipv4 address when the install type is ipv4] *******
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:48 -0400 (0:00:00.346) 0:00:08.543 *********
Sunday 10 August 2025 05:22:48 -0400 (0:00:00.102) 0:00:08.646 *********
TASK [pvc_precheck : Setting HOST_IP as a ansible fact] ************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:48 -0400 (0:00:00.104) 0:00:08.750 *********
ok: [172.xx.xx.xx] => {
"msg": "The host management network interface env32 IP address is 172.xx.xx.xx "
}
TASK [pvc_precheck : debug] ****************************************************
ok: [172.xx.xx.xx] => {
"msg": "The host management network interface env32 IP address is 172.xx.xx.xx "
}
Sunday 10 August 2025 05:22:49 -0400 (0:00:00.153) 0:00:08.903 *********
TASK [pvc_precheck : getting hostname] *****************************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:49 -0400 (0:00:00.337) 0:00:09.241 *********
ok: [172.xx.xx.xx] => {
"msg": "Hostname is: powervc231_lpar"
}
TASK [pvc_precheck : debug] ****************************************************
ok: [172.xx.xx.xx] => {
"msg": "Hostname is: powervc231_lpar"
}
Sunday 10 August 2025 05:22:49 -0400 (0:00:00.104) 0:00:09.345 *********
TASK [pvc_precheck : getting short hostname] ***********************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:49 -0400 (0:00:00.338) 0:00:09.683 *********
ok: [172.xx.xx.xx] => {
"msg": "Short hostname is: powervc231_lpar"
}
TASK [pvc_precheck : debug] ****************************************************
ok: [172.xx.xx.xx] => {
"msg": "Short hostname is: powervc231_lpar"
}
Sunday 10 August 2025 05:22:49 -0400 (0:00:00.104) 0:00:09.788 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "Host name is set correctly"
}
TASK [pvc_precheck : Check hostname is not localhost] **************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "Host name is set correctly"
}
Sunday 10 August 2025 05:22:50 -0400 (0:00:00.106) 0:00:09.895 *********
Sunday 10 August 2025 05:22:50 -0400 (0:00:00.102) 0:00:09.998 *********
TASK [pvc_precheck : check hostname length] ************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:50 -0400 (0:00:00.388) 0:00:10.387 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "hostname length validated"
}
TASK [pvc_precheck : validate hostname length] *********************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "hostname length validated"
}
Sunday 10 August 2025 05:22:50 -0400 (0:00:00.104) 0:00:10.491 *********
Sunday 10 August 2025 05:22:50 -0400 (0:00:00.103) 0:00:10.594 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "OS/architecture requirement met"
}
TASK [pvc_precheck : validate OS and architecture] *****************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "OS/architecture requirement met"
}
Sunday 10 August 2025 05:22:50 -0400 (0:00:00.139) 0:00:10.734 *********
ok: [172.xx.xx.xx]
TASK [pvc_precheck : get OS and architecture of one node] **********************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:50 -0400 (0:00:00.107) 0:00:10.842 *********
TASK [pvc_precheck : compare OS and architecture of all nodes] *****************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "OS/architecture matched"
}
Sunday 10 August 2025 05:22:51 -0400 (0:00:00.132) 0:00:10.975 *********
Sunday 10 August 2025 05:22:51 -0400 (0:00:00.131) 0:00:11.107 *********
Sunday 10 August 2025 05:22:51 -0400 (0:00:00.152) 0:00:11.259 *********
Sunday 10 August 2025 05:22:51 -0400 (0:00:00.248) 0:00:11.508 *********
TASK [pvc_precheck : Warn Mismatch in SELinux] *********************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:51 -0400 (0:00:00.364) 0:00:11.873 *********
TASK [pvc_precheck : Warn Mismatch in SELinux] *********************************
ok: [172.xx.xx.xx] => (item=172.xx.xx.xx) => {
"ansible_loop_var": "item",
"changed": false,
"item": "172.xx.xx.xx",
"msg": "SELinux validated"
}
Sunday 10 August 2025 05:22:52 -0400 (0:00:00.219) 0:00:12.093 *********
Sunday 10 August 2025 05:22:52 -0400 (0:00:00.105) 0:00:12.198 *********
changed: [172.xx.xx.xx]
TASK [pvc_precheck : check net tools] ******************************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:52 -0400 (0:00:00.470) 0:00:12.669 *********
ok: [172.xx.xx.xx] => {
"msg": "net-tools rpm is present. precheck check_net_tools() succeeded."
}
TASK [pvc_precheck : Validate presence of net tools] ***************************
ok: [172.xx.xx.xx] => {
"msg": "net-tools rpm is present. precheck check_net_tools() succeeded."
}
Sunday 10 August 2025 05:22:52 -0400 (0:00:00.109) 0:00:12.779 *********
Sunday 10 August 2025 05:22:53 -0400 (0:00:00.145) 0:00:12.925 *********
Sunday 10 August 2025 05:22:53 -0400 (0:00:00.101) 0:00:13.027 *********
TASK [pvc_precheck : {{ pvc_utils_task_names.install_misc_packages }}] *********
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:55 -0400 (0:00:02.014) 0:00:15.042 *********
TASK [pvc_precheck : check nslookup RHEL] **************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:55 -0400 (0:00:00.367) 0:00:15.409 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "nslookup validated"
}
TASK [pvc_precheck : validate nslookup RHEL] ***********************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "nslookup validated"
}
Sunday 10 August 2025 05:22:55 -0400 (0:00:00.137) 0:00:15.546 *********
Sunday 10 August 2025 05:22:55 -0400 (0:00:00.216) 0:00:15.763 *********
Sunday 10 August 2025 05:22:55 -0400 (0:00:00.124) 0:00:15.887 *********
Sunday 10 August 2025 05:22:56 -0400 (0:00:00.131) 0:00:16.019 *********
TASK [pvc_precheck : check epel enabled] ***************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:22:56 -0400 (0:00:00.816) 0:00:16.835 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "EPEL repo is not enabled"
}
TASK [pvc_precheck : is epel enabled] ******************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "EPEL repo is not enabled"
}
Sunday 10 August 2025 05:22:57 -0400 (0:00:00.132) 0:00:16.967 *********
Sunday 10 August 2025 05:22:57 -0400 (0:00:00.131) 0:00:17.099 *********
TASK [pvc_precheck : openstack versions check] *********************************
ok: [172.xx.xx.xx] => (item=kilo)
ok: [172.xx.xx.xx] => (item=liberty)
ok: [172.xx.xx.xx] => (item=mitaka)
ok: [172.xx.xx.xx] => (item=newton)
ok: [172.xx.xx.xx] => (item=ocata)
ok: [172.xx.xx.xx] => (item=pike)
ok: [172.xx.xx.xx] => (item=queens)
ok: [172.xx.xx.xx] => (item=rocky)
ok: [172.xx.xx.xx] => (item=stein)
ok: [172.xx.xx.xx] => (item=train)
ok: [172.xx.xx.xx] => (item=ussuri)
ok: [172.xx.xx.xx] => (item=victoria)
ok: [172.xx.xx.xx] => (item=wallaby)
Sunday 10 August 2025 05:23:06 -0400 (0:00:09.451) 0:00:26.550 *********
TASK [pvc_precheck : Set openstack_versions_present to false by default] *******
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:06 -0400 (0:00:00.135) 0:00:26.686 *********
Sunday 10 August 2025 05:23:07 -0400 (0:00:00.569) 0:00:27.256 *********
Sunday 10 August 2025 05:23:07 -0400 (0:00:00.205) 0:00:27.461 *********
TASK [pvc_precheck : new naming scheme for RHEL repos] *************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:08 -0400 (0:00:00.816) 0:00:28.277 *********
TASK [pvc_precheck : check rdo enabled] ****************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "RDO repo is not enabled"
}
Sunday 10 August 2025 05:23:08 -0400 (0:00:00.161) 0:00:28.438 *********
TASK [pvc_precheck : check rdo yum enabled] ************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "RDO yum repo is not enabled"
}
Sunday 10 August 2025 05:23:08 -0400 (0:00:00.158) 0:00:28.597 *********
Sunday 10 August 2025 05:23:08 -0400 (0:00:00.103) 0:00:28.700 *********
TASK [pvc_precheck : get umask permissions] ************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:09 -0400 (0:00:00.341) 0:00:29.041 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "umask permissions check successful"
}
TASK [pvc_precheck : check umask permissions] **********************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "umask permissions check successful"
}
Sunday 10 August 2025 05:23:09 -0400 (0:00:00.152) 0:00:29.194 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "minimum memory requirement met"
}
TASK [pvc_precheck : validate minimum memory] **********************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "minimum memory requirement met"
}
Sunday 10 August 2025 05:23:09 -0400 (0:00:00.131) 0:00:29.325 *********
Sunday 10 August 2025 05:23:09 -0400 (0:00:00.102) 0:00:29.428 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "minimum cpu cores requirement met"
}
TASK [pvc_precheck : validate minimum cpu cores] *******************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "minimum cpu cores requirement met"
}
Sunday 10 August 2025 05:23:09 -0400 (0:00:00.134) 0:00:29.562 *********
TASK [pvc_precheck : get cpu speed ppc] ****************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:10 -0400 (0:00:00.371) 0:00:29.933 *********
Sunday 10 August 2025 05:23:10 -0400 (0:00:00.126) 0:00:30.060 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "minimum cpu speed requirement met"
}
TASK [pvc_precheck : check cpu speed ppc] **************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "minimum cpu speed requirement met"
}
Sunday 10 August 2025 05:23:10 -0400 (0:00:00.138) 0:00:30.199 *********
Sunday 10 August 2025 05:23:10 -0400 (0:00:00.171) 0:00:30.371 *********
Sunday 10 August 2025 05:23:10 -0400 (0:00:00.104) 0:00:30.475 *********
TASK [pvc_precheck : check fs_ulimit] ******************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:10 -0400 (0:00:00.341) 0:00:30.817 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "fs ulimit - unlimited"
}
TASK [pvc_precheck : fs_ulimit] ************************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "fs ulimit - unlimited"
}
Sunday 10 August 2025 05:23:11 -0400 (0:00:00.106) 0:00:30.924 *********
Sunday 10 August 2025 05:23:11 -0400 (0:00:00.103) 0:00:31.027 *********
TASK [pvc_precheck : check install directories permissions] ********************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:11 -0400 (0:00:00.383) 0:00:31.410 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "install directories permissions check successful"
}
TASK [pvc_precheck : validate install directories permissions] *****************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "install directories permissions check successful"
}
Sunday 10 August 2025 05:23:11 -0400 (0:00:00.106) 0:00:31.517 *********
Sunday 10 August 2025 05:23:11 -0400 (0:00:00.149) 0:00:31.667 *********
TASK [pvc_precheck : Check if opt/ibm dir is present] **************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:12 -0400 (0:00:00.445) 0:00:32.113 *********
TASK [pvc_precheck : Check if /var/opt/ibm dir is present] *********************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:12 -0400 (0:00:00.336) 0:00:32.449 *********
TASK [pvc_precheck : Creates opt/ibm directory] ********************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:13 -0400 (0:00:00.509) 0:00:32.958 *********
TASK [pvc_precheck : Creates /var/opt/ibm directory] ***************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:13 -0400 (0:00:00.349) 0:00:33.308 *********
ok: [172.xx.xx.xx] => (item=/opt)
TASK [pvc_precheck : check ibm dirs access] ************************************
ok: [172.xx.xx.xx] => (item=/opt)
ok: [172.xx.xx.xx] => (item=/opt/ibm)
ok: [172.xx.xx.xx] => (item=/var/opt/ibm)
Sunday 10 August 2025 05:23:14 -0400 (0:00:00.881) 0:00:34.190 *********
Sunday 10 August 2025 05:23:14 -0400 (0:00:00.105) 0:00:34.296 *********
TASK [pvc_precheck : Recursively remove /var/opt/ibm directory] ****************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:14 -0400 (0:00:00.351) 0:00:34.647 *********
TASK [pvc_precheck : Set ibm dirs access check to true by default] *************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:14 -0400 (0:00:00.106) 0:00:34.754 *********
Sunday 10 August 2025 05:23:14 -0400 (0:00:00.127) 0:00:34.881 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "ibm dirs access validated"
}
TASK [pvc_precheck : validate ibm dirs access] *********************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "ibm dirs access validated"
}
Sunday 10 August 2025 05:23:15 -0400 (0:00:00.104) 0:00:34.985 *********
Sunday 10 August 2025 05:23:15 -0400 (0:00:00.102) 0:00:35.088 *********
TASK [pvc_precheck : See if any interface has an IPv4 address] *****************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:15 -0400 (0:00:00.389) 0:00:35.477 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "interfaces ipv4 addresses check successful"
}
TASK [{{ pvc_precheck_task_names.check_interfaces_ipv4_addresses }}] ***********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "interfaces ipv4 addresses check successful"
}
Sunday 10 August 2025 05:23:15 -0400 (0:00:00.106) 0:00:35.584 *********
Sunday 10 August 2025 05:23:15 -0400 (0:00:00.103) 0:00:35.687 *********
TASK [pvc_precheck : check disk space] *****************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:16 -0400 (0:00:00.361) 0:00:36.049 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "disk space validated"
}
TASK [pvc_precheck : validate disk space] **************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "disk space validated"
}
Sunday 10 August 2025 05:23:16 -0400 (0:00:00.106) 0:00:36.156 *********
Sunday 10 August 2025 05:23:16 -0400 (0:00:00.103) 0:00:36.259 *********
TASK [pvc_precheck : initialize HOSTNAME] **************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:16 -0400 (0:00:00.345) 0:00:36.605 *********
TASK [pvc_precheck : set HOSTNAME] *********************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:16 -0400 (0:00:00.153) 0:00:36.758 *********
ok: [172.xx.xx.xx] => {
"HOSTNAME": "powervc231_lpar"
}
TASK [pvc_precheck : debug] ****************************************************
ok: [172.xx.xx.xx] => {
"HOSTNAME": "powervc231_lpar"
}
Sunday 10 August 2025 05:23:16 -0400 (0:00:00.106) 0:00:36.864 *********
TASK [pvc_precheck : check host ping] ******************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:20 -0400 (0:00:03.505) 0:00:40.370 *********
Sunday 10 August 2025 05:23:20 -0400 (0:00:00.140) 0:00:40.511 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "hostname local validated"
}
TASK [pvc_precheck : validate host ping] ***************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "hostname local validated"
}
Sunday 10 August 2025 05:23:20 -0400 (0:00:00.105) 0:00:40.617 *********
Sunday 10 August 2025 05:23:20 -0400 (0:00:00.103) 0:00:40.720 *********
Sunday 10 August 2025 05:23:20 -0400 (0:00:00.101) 0:00:40.822 *********
TASK [pvc_precheck : localhost count ipv4] *************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:21 -0400 (0:00:00.344) 0:00:41.166 *********
Sunday 10 August 2025 05:23:21 -0400 (0:00:00.101) 0:00:41.267 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "localhost is Loopback check successful"
}
TASK [pvc_precheck : check localhost is Loopback ipv4] *************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "localhost is Loopback check successful"
}
Sunday 10 August 2025 05:23:21 -0400 (0:00:00.108) 0:00:41.375 *********
Sunday 10 August 2025 05:23:21 -0400 (0:00:00.103) 0:00:41.479 *********
TASK [pvc_precheck : check hostname is Loopback] *******************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:21 -0400 (0:00:00.362) 0:00:41.842 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "hostname is Loopback check successful"
}
TASK [pvc_precheck : validate hostname is Loopback] ****************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "hostname is Loopback check successful"
}
Sunday 10 August 2025 05:23:22 -0400 (0:00:00.105) 0:00:41.947 *********
Sunday 10 August 2025 05:23:22 -0400 (0:00:00.103) 0:00:42.051 *********
TASK [pvc_precheck : check valid host in dns] **********************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:40 -0400 (0:00:18.350) 0:01:00.402 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "valid host in dns check successful"
}
TASK [pvc_precheck : validate valid host in dns] *******************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "valid host in dns check successful"
}
Sunday 10 August 2025 05:23:40 -0400 (0:00:00.105) 0:01:00.507 *********
Sunday 10 August 2025 05:23:40 -0400 (0:00:00.103) 0:01:00.611 *********
TASK [pvc_precheck : Check hostname of the host] *******************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:41 -0400 (0:00:00.353) 0:01:00.964 *********
TASK [pvc_precheck : Set nodename as hostname] *********************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:41 -0400 (0:00:00.131) 0:01:01.096 *********
Sunday 10 August 2025 05:23:41 -0400 (0:00:00.102) 0:01:01.198 *********
changed: [172.xx.xx.xx]
TASK [pvc_precheck : Count the host entry present on the VM] *******************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:41 -0400 (0:00:00.345) 0:01:01.544 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "Duplicate entry is not present"
}
TASK [pvc_precheck : Validate check for duplicate host name] *******************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "Duplicate entry is not present"
}
Sunday 10 August 2025 05:23:41 -0400 (0:00:00.105) 0:01:01.650 *********
Sunday 10 August 2025 05:23:41 -0400 (0:00:00.103) 0:01:01.754 *********
TASK [pvc_precheck : check proxy permissions] **********************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:42 -0400 (0:00:00.400) 0:01:02.155 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "proxy permissions check successful"
}
TASK [pvc_precheck : validate proxy permissions] *******************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "proxy permissions check successful"
}
Sunday 10 August 2025 05:23:42 -0400 (0:00:00.105) 0:01:02.260 *********
Sunday 10 August 2025 05:23:42 -0400 (0:00:00.103) 0:01:02.363 *********
TASK [pvc_precheck : check hostname underscore] ********************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:42 -0400 (0:00:00.341) 0:01:02.705 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "hostname underscore validated"
}
TASK [pvc_precheck : validate hostname underscore] *****************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "hostname underscore validated"
}
Sunday 10 August 2025 05:23:42 -0400 (0:00:00.106) 0:01:02.812 *********
Sunday 10 August 2025 05:23:43 -0400 (0:00:00.103) 0:01:02.915 *********
TASK [pvc_precheck : Set nodename as hostname] *********************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:43 -0400 (0:00:00.130) 0:01:03.046 *********
Sunday 10 August 2025 05:23:43 -0400 (0:00:00.105) 0:01:03.151 *********
TASK [pvc_precheck : Set nodename as hostname] *********************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:43 -0400 (0:00:00.182) 0:01:03.333 *********
TASK [pvc_precheck : set_fact] *************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:43 -0400 (0:00:00.107) 0:01:03.441 *********
TASK [pvc_precheck : Validate ping for 4 times grep the 'received' response] ***
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:47 -0400 (0:00:03.489) 0:01:06.930 *********
Sunday 10 August 2025 05:23:47 -0400 (0:00:00.141) 0:01:07.072 *********
Sunday 10 August 2025 05:23:47 -0400 (0:00:00.104) 0:01:07.177 *********
ok: [172.xx.xx.xx]
TASK [pvc_precheck : Set localhost as the nodename] ****************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:47 -0400 (0:00:00.111) 0:01:07.288 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "Ping test passed"
}
TASK [pvc_precheck : Validate ping] ********************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "Ping test passed"
}
Sunday 10 August 2025 05:23:47 -0400 (0:00:00.108) 0:01:07.396 *********
Sunday 10 August 2025 05:23:47 -0400 (0:00:00.102) 0:01:07.499 *********
Sunday 10 August 2025 05:23:47 -0400 (0:00:00.099) 0:01:07.598 *********
Sunday 10 August 2025 05:23:47 -0400 (0:00:00.102) 0:01:07.701 *********
Sunday 10 August 2025 05:23:47 -0400 (0:00:00.101) 0:01:07.802 *********
Sunday 10 August 2025 05:23:48 -0400 (0:00:00.150) 0:01:07.953 *********
Sunday 10 August 2025 05:23:48 -0400 (0:00:00.102) 0:01:08.055 *********
Sunday 10 August 2025 05:23:48 -0400 (0:00:00.102) 0:01:08.158 *********
Sunday 10 August 2025 05:23:48 -0400 (0:00:00.103) 0:01:08.261 *********
Sunday 10 August 2025 05:23:48 -0400 (0:00:00.102) 0:01:08.364 *********
Sunday 10 August 2025 05:23:48 -0400 (0:00:00.100) 0:01:08.465 *********
Sunday 10 August 2025 05:23:48 -0400 (0:00:00.102) 0:01:08.567 *********
Sunday 10 August 2025 05:23:48 -0400 (0:00:00.102) 0:01:08.670 *********
Sunday 10 August 2025 05:23:48 -0400 (0:00:00.151) 0:01:08.821 *********
Sunday 10 August 2025 05:23:49 -0400 (0:00:00.101) 0:01:08.923 *********
Sunday 10 August 2025 05:23:49 -0400 (0:00:00.103) 0:01:09.026 *********
Sunday 10 August 2025 05:23:49 -0400 (0:00:00.099) 0:01:09.125 *********
Sunday 10 August 2025 05:23:49 -0400 (0:00:00.103) 0:01:09.229 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "root user"
}
TASK [pvc_precheck : check user privillege] ************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "root user"
}
Sunday 10 August 2025 05:23:49 -0400 (0:00:00.133) 0:01:09.363 *********
Sunday 10 August 2025 05:23:49 -0400 (0:00:00.103) 0:01:09.466 *********
TASK [pvc_precheck : test apache id] *******************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:49 -0400 (0:00:00.422) 0:01:09.889 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "apache id check successful"
}
TASK [pvc_precheck : check apache id] ******************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "apache id check successful"
}
Sunday 10 August 2025 05:23:50 -0400 (0:00:00.134) 0:01:10.023 *********
Sunday 10 August 2025 05:23:50 -0400 (0:00:00.103) 0:01:10.127 *********
Sunday 10 August 2025 05:23:50 -0400 (0:00:00.103) 0:01:10.230 *********
TASK [pvc_precheck : Gather facts for listening ports] *************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:51 -0400 (0:00:00.809) 0:01:11.040 *********
ok: [172.xx.xx.xx] => (item=5000)
TASK [pvc_precheck : Check port is available or not] ***************************
ok: [172.xx.xx.xx] => (item=5000)
ok: [172.xx.xx.xx] => (item=35357)
ok: [172.xx.xx.xx] => (item=9292)
ok: [172.xx.xx.xx] => (item=9191)
ok: [172.xx.xx.xx] => (item=8774)
ok: [172.xx.xx.xx] => (item=9000)
ok: [172.xx.xx.xx] => (item=9696)
ok: [172.xx.xx.xx] => (item=8428)
ok: [172.xx.xx.xx] => (item=5470)
ok: [172.xx.xx.xx] => (item=7870)
ok: [172.xx.xx.xx] => (item=5671)
ok: [172.xx.xx.xx] => (item=4369)
ok: [172.xx.xx.xx] => (item=50110)
ok: [172.xx.xx.xx] => (item=8080)
ok: [172.xx.xx.xx] => (item=6200)
ok: [172.xx.xx.xx] => (item=6201)
ok: [172.xx.xx.xx] => (item=6202)
ok: [172.xx.xx.xx] => (item=8998)
ok: [172.xx.xx.xx] => (item=6080)
ok: [172.xx.xx.xx] => (item=8778)
ok: [172.xx.xx.xx] => (item=8041)
Sunday 10 August 2025 05:23:52 -0400 (0:00:00.905) 0:01:11.946 *********
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 5000, 'ansible_loop_var': 'item'})
TASK [pvc_precheck : Group available ports] ************************************
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 5000, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 35357, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 9292, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 9191, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 8774, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 9000, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 9696, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 8428, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 5470, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 7870, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 5671, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 4369, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 50110, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 8080, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 6200, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 6201, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 6202, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 8998, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 6080, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 8778, 'ansible_loop_var': 'item'})
ok: [172.xx.xx.xx] => (item={'changed': False, 'ansible_facts': {'reg_port_available': False}, 'failed': False, 'item': 8041, 'ansible_loop_var': 'item'})
Sunday 10 August 2025 05:23:52 -0400 (0:00:00.343) 0:01:12.289 *********
Sunday 10 August 2025 05:23:52 -0400 (0:00:00.216) 0:01:12.506 *********
TASK [pvc_precheck : List available ports] *************************************
ok: [172.xx.xx.xx] => {
"msg": "Ports are not being used and are available:- [5000, 35357, 9292, 9191, 8774, 9000, 9696, 8428, 5470, 7870, 5671, 4369, 50110, 8080, 6200, 6201, 6202, 8998, 6080, 8778, 8041] precheck check_ports_available success."
}
Sunday 10 August 2025 05:23:52 -0400 (0:00:00.114) 0:01:12.620 *********
Sunday 10 August 2025 05:23:52 -0400 (0:00:00.100) 0:01:12.721 *********
Sunday 10 August 2025 05:23:52 -0400 (0:00:00.103) 0:01:12.825 *********
TASK [pvc_precheck : get service facts] ****************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:56 -0400 (0:00:03.805) 0:01:16.631 *********
Sunday 10 August 2025 05:23:56 -0400 (0:00:00.111) 0:01:16.742 *********
Sunday 10 August 2025 05:23:57 -0400 (0:00:00.325) 0:01:17.067 *********
Sunday 10 August 2025 05:23:57 -0400 (0:00:00.151) 0:01:17.219 *********
Sunday 10 August 2025 05:23:57 -0400 (0:00:00.143) 0:01:17.363 *********
Sunday 10 August 2025 05:23:57 -0400 (0:00:00.112) 0:01:17.476 *********
TASK [pvc_precheck : checking status of disable_ipv6 kernel] *******************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:57 -0400 (0:00:00.353) 0:01:17.829 *********
Sunday 10 August 2025 05:23:58 -0400 (0:00:00.117) 0:01:17.946 *********
Sunday 10 August 2025 05:23:58 -0400 (0:00:00.110) 0:01:18.057 *********
Sunday 10 August 2025 05:23:58 -0400 (0:00:00.109) 0:01:18.167 *********
Sunday 10 August 2025 05:23:58 -0400 (0:00:00.161) 0:01:18.329 *********
Sunday 10 August 2025 05:23:58 -0400 (0:00:00.111) 0:01:18.440 *********
Sunday 10 August 2025 05:23:58 -0400 (0:00:00.139) 0:01:18.580 *********
TASK [pvc_precheck : set_fact] *************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:58 -0400 (0:00:00.146) 0:01:18.726 *********
TASK [pvc_precheck : set_fact] *************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:23:58 -0400 (0:00:00.148) 0:01:18.874 *********
TASK [pvc_precheck : copying rpm_prereq.rhel18.py to /root on remote host] *****
ok: [172.xx.xx.xx] => (item=rpm_prereq_rhel8.py)
Sunday 10 August 2025 05:23:59 -0400 (0:00:00.959) 0:01:19.834 *********
TASK [pvc_precheck : creating logfile at /root/ to be used by rpm_prereq_rhel8.py] ***
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:24:00 -0400 (0:00:00.450) 0:01:20.285 *********
TASK [pvc_precheck : fetching rpm_prereq log file to control node /var/log] ****
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:24:00 -0400 (0:00:00.443) 0:01:20.728 *********
TASK [pvc_precheck : delete the rpm_prereq log file from remote host path] *****
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:24:01 -0400 (0:00:00.387) 0:01:21.116 *********
Sunday 10 August 2025 05:24:01 -0400 (0:00:00.135) 0:01:21.251 *********
Sunday 10 August 2025 05:24:01 -0400 (0:00:00.137) 0:01:21.389 *********
Sunday 10 August 2025 05:24:01 -0400 (0:00:00.138) 0:01:21.527 *********
Sunday 10 August 2025 05:24:01 -0400 (0:00:00.227) 0:01:21.755 *********
Sunday 10 August 2025 05:24:02 -0400 (0:00:00.139) 0:01:21.895 *********
Sunday 10 August 2025 05:24:02 -0400 (0:00:00.137) 0:01:22.032 *********
Sunday 10 August 2025 05:24:02 -0400 (0:00:00.143) 0:01:22.176 *********
Sunday 10 August 2025 05:24:02 -0400 (0:00:00.137) 0:01:22.314 *********
Sunday 10 August 2025 05:24:02 -0400 (0:00:00.141) 0:01:22.455 *********
Sunday 10 August 2025 05:24:02 -0400 (0:00:00.139) 0:01:22.595 *********
Sunday 10 August 2025 05:24:02 -0400 (0:00:00.205) 0:01:22.801 *********
Sunday 10 August 2025 05:24:03 -0400 (0:00:00.142) 0:01:22.944 *********
[WARNING]: Consider using the yum module rather than running 'yum'. If you
need to use command because yum is insufficient you can add 'warn: false' to
this command task or set 'command_warnings=False' in ansible.cfg to get rid of
this message.
TASK [pvc_precheck : checking if versionlock exists] ***************************
[WARNING]: Consider using the yum module rather than running 'yum'. If you
need to use command because yum is insufficient you can add 'warn: false' to
this command task or set 'command_warnings=False' in ansible.cfg to get rid of
this message.
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:24:03 -0400 (0:00:00.821) 0:01:23.765 *********
ok: [172.xx.xx.xx] => {
"msg": "versionlock does not exist, not checking for rpm versionlock"
}
TASK [pvc_precheck : debug] ****************************************************
ok: [172.xx.xx.xx] => {
"msg": "versionlock does not exist, not checking for rpm versionlock"
}
Sunday 10 August 2025 05:24:04 -0400 (0:00:00.144) 0:01:23.910 *********
Sunday 10 August 2025 05:24:04 -0400 (0:00:00.142) 0:01:24.053 *********
Sunday 10 August 2025 05:24:04 -0400 (0:00:00.140) 0:01:24.193 *********
Sunday 10 August 2025 05:24:04 -0400 (0:00:00.229) 0:01:24.423 *********
Sunday 10 August 2025 05:24:04 -0400 (0:00:00.139) 0:01:24.563 *********
Sunday 10 August 2025 05:24:04 -0400 (0:00:00.138) 0:01:24.701 *********
Sunday 10 August 2025 05:24:04 -0400 (0:00:00.142) 0:01:24.843 *********
Sunday 10 August 2025 05:24:05 -0400 (0:00:00.141) 0:01:24.985 *********
Sunday 10 August 2025 05:24:05 -0400 (0:00:00.142) 0:01:25.128 *********
Sunday 10 August 2025 05:24:05 -0400 (0:00:00.138) 0:01:25.267 *********
Sunday 10 August 2025 05:24:05 -0400 (0:00:00.211) 0:01:25.478 *********
Sunday 10 August 2025 05:24:05 -0400 (0:00:00.136) 0:01:25.615 *********
Sunday 10 August 2025 05:24:05 -0400 (0:00:00.138) 0:01:25.753 *********
Sunday 10 August 2025 05:24:05 -0400 (0:00:00.137) 0:01:25.891 *********
Sunday 10 August 2025 05:24:06 -0400 (0:00:00.112) 0:01:26.003 *********
TASK [pvc_precheck : check if /etc/cinder/ is dir] *****************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:24:06 -0400 (0:00:00.345) 0:01:26.348 *********
Sunday 10 August 2025 05:24:06 -0400 (0:00:00.162) 0:01:26.511 *********
fatal: [172.xx.xx.xx]: FAILED! => {"msg": "'dict object' has no attribute 'stdout_lines'"}
TASK [pvc_precheck : get config value for files in /etc/cinder] ****************
fatal: [172.xx.xx.xx]: FAILED! => {"msg": "'dict object' has no attribute 'stdout_lines'"}
...ignoring
Sunday 10 August 2025 05:24:06 -0400 (0:00:00.108) 0:01:26.619 *********
Sunday 10 August 2025 05:24:06 -0400 (0:00:00.113) 0:01:26.732 *********
TASK [pvc_precheck : check pwd exists] *****************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:24:07 -0400 (0:00:00.350) 0:01:27.083 *********
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "pwd exists"
}
TASK [pvc_precheck : does pwd exist] *******************************************
ok: [172.xx.xx.xx] => {
"changed": false,
"msg": "pwd exists"
}
Sunday 10 August 2025 05:24:07 -0400 (0:00:00.116) 0:01:27.199 *********
Sunday 10 August 2025 05:24:07 -0400 (0:00:00.115) 0:01:27.314 *********
ok: [172.xx.xx.xx] => (item=/var/opt/ibm/powervc/db)
TASK [pvc_precheck : Get the stale dir path] ***********************************
ok: [172.xx.xx.xx] => (item=/var/opt/ibm/powervc/db)
ok: [172.xx.xx.xx] => (item=/var/lib/mysql)
ok: [172.xx.xx.xx] => (item=/usr/bin/mysql)
Sunday 10 August 2025 05:24:08 -0400 (0:00:00.876) 0:01:28.190 *********
ok: [172.xx.xx.xx] => {
"msg": []
}
TASK [pvc_precheck : debug] ****************************************************
ok: [172.xx.xx.xx] => {
"msg": []
}
Sunday 10 August 2025 05:24:08 -0400 (0:00:00.118) 0:01:28.309 *********
172.xx.xx.xx : ok=113 changed=20 unreachable=0 failed=0 skipped=116 rescued=0 ignored=2
PLAY RECAP *********************************************************************
172.xx.xx.xx : ok=113 changed=20 unreachable=0 failed=0 skipped=116 rescued=0 ignored=2
Sunday 10 August 2025 05:24:08 -0400 (0:00:00.021) 0:01:28.330 *********
===============================================================================
pvc_precheck : check valid host in dns --------------------------------- 18.35s
pvc_precheck : openstack versions check --------------------------------- 9.45s
pvc_precheck : get service facts ---------------------------------------- 3.81s
pvc_precheck : check host ping ------------------------------------------ 3.51s
pvc_precheck : Validate ping for 4 times grep the 'received' response --- 3.49s
pvc_precheck : package facts -------------------------------------------- 2.52s
pvc_precheck : {{ pvc_utils_task_names.install_misc_packages }} --------- 2.01s
Gathering Facts --------------------------------------------------------- 1.71s
pvc_precheck : copying rpm_prereq.rhel18.py to /root on remote host ----- 0.96s
command ----------------------------------------------------------------- 0.92s
pvc_precheck : Check port is available or not --------------------------- 0.91s
pvc_precheck : check ibm dirs access ------------------------------------ 0.88s
pvc_precheck : Get the stale dir path ----------------------------------- 0.88s
pvc_precheck : checking if versionlock exists --------------------------- 0.82s
pvc_precheck : new naming scheme for RHEL repos ------------------------- 0.82s
pvc_precheck : check epel enabled --------------------------------------- 0.82s
pvc_precheck : Gather facts for listening ports ------------------------- 0.81s
pvc_precheck : reduce openstack versions check -------------------------- 0.57s
pvc_precheck : Creates opt/ibm directory -------------------------------- 0.51s
pvc_precheck : check net tools ------------------------------------------ 0.47s
Refer to
/opt/ibm/powervc-opsmgr/ansible/artifacts/powervc-opsmgr_powervc231_precheck_20250810_052238/stdout
for more details.
Precheck passed
最終出力で、 Precheck passed が表示されました。
Pre Checkの実行ログの途中で FAILED! というメッセージ表示がありますが、これは新規インストール時に既存のPowerVC設定ファイルが存在しないなどが理由で発生するものです。
メッセージの末尾に ...ignoring とあるように、このエラーは無視される想定内の動作のため、最終的に Precheck passed と表示されれば問題ありません。
Sunday 10 August 2025 05:24:08 -0400 (0:00:00.021) 0:01:28.330 *********
===============================================================================
pvc_precheck : check valid host in dns --------------------------------- 18.35s
pvc_precheck : openstack versions check --------------------------------- 9.45s
pvc_precheck : get service facts ---------------------------------------- 3.81s
pvc_precheck : check host ping ------------------------------------------ 3.51s
pvc_precheck : Validate ping for 4 times grep the 'received' response --- 3.49s
pvc_precheck : package facts -------------------------------------------- 2.52s
pvc_precheck : {{ pvc_utils_task_names.install_misc_packages }} --------- 2.01s
Gathering Facts --------------------------------------------------------- 1.71s
pvc_precheck : copying rpm_prereq.rhel18.py to /root on remote host ----- 0.96s
command ----------------------------------------------------------------- 0.92s
pvc_precheck : Check port is available or not --------------------------- 0.91s
pvc_precheck : check ibm dirs access ------------------------------------ 0.88s
pvc_precheck : Get the stale dir path ----------------------------------- 0.88s
pvc_precheck : checking if versionlock exists --------------------------- 0.82s
pvc_precheck : new naming scheme for RHEL repos ------------------------- 0.82s
pvc_precheck : check epel enabled --------------------------------------- 0.82s
pvc_precheck : Gather facts for listening ports ------------------------- 0.81s
pvc_precheck : reduce openstack versions check -------------------------- 0.57s
pvc_precheck : Creates opt/ibm directory -------------------------------- 0.51s
pvc_precheck : check net tools ------------------------------------------ 0.47s
Refer to
/opt/ibm/powervc-opsmgr/ansible/artifacts/powervc-opsmgr_powervc231_precheck_20250810_052238/stdout
for more details.
Precheck passed
PowerVC 2.3.1 install
PowerVC 導入を実行します。
実行に時間がかかるため、ターミナルを切断しても問題ないよう nohup コマンドで実行します。
# nohup powervc-opsmgr install -c powervc231 &
コマンドを実行した同じディレクトリに出力された nohup.out で実行状態を確認します。
nohup.out に実行ログが出力されていることが確認できました。
# head -n 50 nohup.out
PLAY [{{ playbook_task_names.precheck }}] **************************************
Sunday 10 August 2025 05:26:56 -0400 (0:00:00.108) 0:00:00.108 *********
ok: [172.xx.xx.xx]
TASK [Gathering Facts] *********************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:26:58 -0400 (0:00:02.657) 0:00:02.765 *********
changed: [172.xx.xx.xx]
TASK [command] *****************************************************************
changed: [172.xx.xx.xx]
Sunday 10 August 2025 05:26:59 -0400 (0:00:00.883) 0:00:03.649 *********
TASK [include_vars] ************************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:26:59 -0400 (0:00:00.033) 0:00:03.682 *********
TASK [include_vars] ************************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:26:59 -0400 (0:00:00.039) 0:00:03.722 *********
TASK [{{ pvc_utils_task_names.store_locale_variable }}] ************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:26:59 -0400 (0:00:00.036) 0:00:03.758 *********
Sunday 10 August 2025 05:27:00 -0400 (0:00:00.029) 0:00:03.787 *********
Sunday 10 August 2025 05:27:00 -0400 (0:00:00.027) 0:00:03.815 *********
TASK [include_vars] ************************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:27:00 -0400 (0:00:00.036) 0:00:03.851 *********
TASK [include_vars] ************************************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:27:00 -0400 (0:00:00.037) 0:00:03.889 *********
TASK [pvc_precheck : include_vars] *********************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:27:00 -0400 (0:00:00.038) 0:00:03.927 *********
Sunday 10 August 2025 05:27:00 -0400 (0:00:00.031) 0:00:03.959 *********
TASK [pvc_precheck : package facts] ********************************************
ok: [172.xx.xx.xx]
Sunday 10 August 2025 05:27:02 -0400 (0:00:02.474) 0:00:06.433 *********
Sunday 10 August 2025 05:27:02 -0400 (0:00:00.106) 0:00:06.540 *********
[WARNING]: Consider using the yum, dnf or zypper module rather than running
'rpm'. If you need to use command because yum, dnf or zypper is insufficient
you can add 'warn: false' to this command task or set 'command_warnings=False'
in ansible.cfg to get rid of this message.
時間経過後、nohup.out を確認すると導入が完了していることがわかりました。
この環境ではおよそ 1 時間 20 分かかっています。
(おそらくCPU割り当てが少ないので時間を要したと推測しています)
# tail -n 50 nohup.out
TASK [pvc_main : synchronize state file] ***************************************
ok: [172.xx.xx.xx -> 172.xx.xx.xx] => (item=172.xx.xx.xx)
Sunday 10 August 2025 06:47:56 -0400 (0:00:00.889) 1:19:28.150 *********
TASK [pvc_main : synchronize inventory] ****************************************
ok: [172.xx.xx.xx -> 172.xx.xx.xx] => (item=172.xx.xx.xx)
Sunday 10 August 2025 06:48:00 -0400 (0:00:04.736) 1:19:32.887 *********
ok: [172.xx.xx.xx] => {
"msg": "Play completed successfully"
}
TASK [pvc_main : Success message for play] *************************************
ok: [172.xx.xx.xx] => {
"msg": "Play completed successfully"
}
Sunday 10 August 2025 06:48:00 -0400 (0:00:00.156) 1:19:33.044 *********
PLAY RECAP *********************************************************************
172.xx.xx.xx : ok=2927 changed=1343 unreachable=0 failed=0 skipped=2948 rescued=0 ignored=13
Sunday 10 August 2025 06:48:01 -0400 (0:00:00.153) 1:19:33.198 *********
===============================================================================
pvc_db_ssl : Restart and manage PowerVC services with resources(Approx 10 min) - 372.48s
pvc_bootstrap_keystone : Wait for keystone service to be active ------- 121.82s
pvc_db_ssl : Pause for 2 mins ----------------------------------------- 120.18s
pvc_reverse_proxy : restart proxyserver -------------------------------- 91.96s
pvc_utils : Install selinux packages ----------------------------------- 82.98s
pvc_firewalld : Open TCP ports on Firewall ----------------------------- 48.24s
pvc_bootstrap_keystone : install keystone packages --------------------- 47.92s
pvc_galera_new : Installing mariadb and galera packages ---------------- 37.24s
pvc_db_conn : Create DB credentials and grant permissions -------------- 34.82s
pvc_db_ssl : Update configuration files to include SSL flag ------------ 34.51s
pvc_galera_new : Install mariadb --------------------------------------- 34.19s
pvc_pacemaker : Configure Pacemaker resources -------------------------- 32.09s
{{ pvc_firewalld_task_names.open_firewall_port_for_pvc_firewalld_component_services }} -- 31.15s
pvc_main : {{ playbook_task_names.wait_for_30_seconds_to_have_galera_as_resource_active }} -- 30.42s
pvc_galera_new : Wait for 30 seconds for WSREP become prepared state --- 30.39s
pvc_galera_new : Wait for 30 seconds for WSREP become prepared state --- 30.39s
pvc_main : Httpd service restart --------------------------------------- 30.20s
pvc_pacemaker : Wait untill cluster is online and ready ---------------- 26.03s
pvc_pacemaker : Configure Pacemaker resources -------------------------- 25.53s
pvc_ui : Install UI server and client packages ------------------------- 25.27s
IBM PowerVC installation successfully completed at 2025-08-10 06:48:01.
Refer to
/opt/ibm/powervc-opsmgr/ansible/artifacts/powervc-opsmgr_powervc231_install_20250810_052825/stdout
for more details.
Access PowerVC UI at https://172.xx.xx.xy
+--------------------------------------------------------------------------------+
| *** End of PowerVC Inventory *** |
+--------------------------------------------------------------------------------+
ログイン
ログイン画面
ログイン後
2.3.0 とほぼ同じ UI です。
おわりに
無事 PowerVC 2.3.1 の導入が確認できました。
チェック用pythonスクリプトの実行やssh鍵を使用した導入などが加わり、少しずつ機能追加されています。
一旦は導入確認まで。
ご参考:
以上です。

