はじめに
まずRHEL for Virtual Datacentersとは、ハイパーバイザー上で稼働する RHEL OS に対して無制限でサブスクリプションを有効にできるサブスクリプション形態。
企業で RHEL の仮想マシンをデプロイする際に毎回サブスクリプションを購入する手間が無いと言うメリットがあります。
対応するハイパーバイザーは、VMware、Hyper-V、Nutanix AHVとなっている。
RHEL for Virtual Datacentersを有効化するには、virt-who をインストールした仮想マシンが必要となる。
virt-who の設定が正しければ、ハイパーバイザー上で稼働する RHEL の VM が Red Hat Customer Portal で自動認識される。
RHEL for Virtual Datacenters は RedHat から事前に調達し、Red Hat Customer Portal のサブスクリプション一覧に掲載されている必要がある。
前提
https://access.redhat.com/articles/6216991
How to configure virt-who for Nutanix AHV to work with RHSM
- virt-whoエージェントをホストするためにRedHatEnterpriseLinux8.2または8.4を実行している仮想マシン。
- NutanixAHVの登録をサポートする更新されたvirt-whoエージェント:
- RHEL8.2virt -who-0.27.7-1.el8_2以降
- RHEL8.4virt -who-1.30.5-2.el8_4以降
- 仮想マシン(VM)にはインターネット接続が必要です。virt-RedHatカスタマーポータルでハイパーバイザープロファイルを報告するためにカスタマーポータルと通信するためにインターネット接続を必要とします。ネットワークにファイアウォールまたはプロキシがある場合は、ファイアウォールまたはプロキシを介してRed Hatサブスクリプションマネージャー(RHSM)にアクセスする方法で提供されているURLをホワイトリストに登録する必要があります。
- ハイパーバイザー/ホストとゲスト/VM間の適切な通信が可能である必要があります。
- ハイパーバイザーは、インターネット/カスタマーポータルに接続する必要はありません。
- Nutanix AHVでRHEL7ゲストを使用する場合、virt-whoを実行するには、RHEL8.2、RHEL8.4以降も必要です。
virt-who設定手順
- サブスクリプションマネージャーへサブスクリプションを登録
# subscription-manager register
Registering to: subscription.rhsm.redhat.com:443/subscription
Username: [Red Hat Customer Portal のユーザ名]
Password: [Red Hat Customer Portal のパスワード]
The system has been registered with ID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
The registered system name is: ホスト名
- 使用できるサブスクリプション確認
# subscription-manager list --available
+-------------------------------------------+
Available Subscriptions
+-------------------------------------------+
Subscription Name: Red Hat Enterprise Linux for Virtual Datacenters, Standard
Provides:
SKU: xxxxxxxx
Contract: BBBBBBBB
Pool ID: 222222222222222222222222222222
Provides Management: No
Available: 3
Suggested: 1
Service Type: L1-L3
Roles:
Service Level: Standard
Usage:
Add-ons:
Subscription Type: Stackable
Starts: dd/mm/yy
Ends: dd/mm/yy
Entitlement Type: Physical
Subscription Name: Red Hat Enterprise Linux for Virtual Datacenters, Standard
Provides: Oracle Java (for RHEL Server)
Red Hat Software Collections (for RHEL Server)
Red Hat CodeReady Linux Builder for x86_64
Red Hat Ansible Engine
Red Hat Enterprise Linux Atomic Host Beta
Red Hat Enterprise Linux Atomic Host
Red Hat Developer Tools (for RHEL Server)
Red Hat Beta
Red Hat Software Collections Beta (for RHEL Server)
Red Hat Enterprise Linux Server
Red Hat Developer Tools Beta (for RHEL Server)
Red Hat Enterprise Linux for x86_64
Red Hat Developer Toolset (for RHEL Server)
dotNET on RHEL (for RHEL Server)
SKU: xxxxxxxx
Contract: BBBBBBBB
Pool ID: 333333333333333333333333333333
Provides Management: Yes
Available: Unlimited
Suggested: 1
Service Type: L1-L3
Roles: Red Hat Enterprise Linux Server
Service Level: Standard
Usage: Production
Add-ons:
Subscription Type: Standard (Temporary)
Starts: dd/mm/yy
Ends: dd/mm/yy
Entitlement Type: Virtual
Subscription Name: Red Hat Beta Access
Provides: Red Hat CodeReady Linux Builder for x86_64 Beta
Red Hat Enterprise Linux for IBM z Systems Beta
Red Hat Enterprise Linux Fast Datapath Beta for Power,
little endian
Red Hat Enterprise Linux Resilient Storage Beta
Red Hat Enterprise Linux for x86_64 Beta
Red Hat Enterprise Linux for Real Time for NFV Beta
Red Hat Enterprise Linux for Real Time Beta
Red Hat Enterprise Linux for SAP HANA for x86_64 Beta
Red Hat Directory Server Beta
Red Hat Enterprise Linux Advanced Virtualization Beta (for
RHEL Server for IBM System Z)
Red Hat Enterprise Linux for SAP Applications for x86_64
Beta
Red Hat Enterprise Linux for SAP Applications for IBM z
Systems Beta
Red Hat CodeReady Linux Builder for ARM 64 Beta
Red Hat Enterprise Linux for SAP Applications for Power,
little endian Beta
Red Hat Enterprise Linux Fast Datapath Beta for x86_64
Red Hat CodeReady Linux Builder for Power, little endian
Beta
Red Hat CodeReady Linux Builder for IBM z Systems Beta
Red Hat Enterprise Linux High Availability Beta
Red Hat Enterprise Linux for Power, little endian Beta
Red Hat Enterprise Linux for ARM 64 Beta
Red Hat Certificate System Beta
Red Hat Enterprise Linux for SAP HANA for Power, little
endian Beta
SKU: xxxxxxxx
Contract:
Pool ID: 444444444444444444444444444444
Provides Management: No
Available: Unlimited
Suggested: 1
Service Type: L1-L3
Roles:
Service Level: Self-Support
Usage:
Add-ons:
Subscription Type: Standard
Starts: 12/01/20
Ends: dd/mm/yy
Entitlement Type: Physical
- サブスクリプションが割り当てられていない状態では virt-whoのインストールもできないため、「Subscription Type: Standard (Temporary) かつ Entitlement Type: Virtual」の pool を一時的に使用する
# subscription-manager attach --pool 333333333333333333333333333333
Successfully attached a subscription for: Red Hat Enterprise Linux for Virtual Datacenters, Standard
- 割り当てられたサブスクリプションを確認
# subscription-manager list --consumed
+-------------------------------------------+
Consumed Subscriptions
+-------------------------------------------+
Subscription Name: Red Hat Enterprise Linux for Virtual Datacenters, Standard
Provides: Red Hat Beta
Red Hat CodeReady Linux Builder for x86_64
Red Hat Enterprise Linux Atomic Host
Red Hat Enterprise Linux Atomic Host Beta
Oracle Java (for RHEL Server)
Red Hat Developer Tools (for RHEL Server)
Red Hat Developer Tools Beta (for RHEL Server)
Red Hat Developer Toolset (for RHEL Server)
Red Hat Software Collections (for RHEL Server)
Red Hat Enterprise Linux for x86_64
Red Hat Software Collections Beta (for RHEL Server)
dotNET on RHEL (for RHEL Server)
Red Hat Ansible Engine
Red Hat Enterprise Linux Server
SKU: xxxxxxxx
Contract: BBBBBBBB
Account: xxxxxxxx
Serial: 999999999999999999
Pool ID: 333333333333333333333333333333
Provides Management: Yes
Active: True
Quantity Used: 1
Service Type: L1-L3
Roles: Red Hat Enterprise Linux Server
Service Level: Standard
Usage: Production
Add-ons:
Status Details: Guest has not been reported on any host and is using a
temporary unmapped guest subscription. For more information,
please see https://access.redhat.com/solutions/1592573
Subscription Type: Standard (Temporary)
Starts: dd/mm/yy
Ends: dd/mm/yy
Entitlement Type: Virtual
- virt-who インストール
# dnf install virt-who
- 証明書発行の要求と組織ID 確認
# subscription-manager identity
システム ID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
名前: ホスト名
組織名: sssssss
組織 ID: sssssss
- virt-who 用に暗号化したパスワードを生成
# virt-who-password
Password: # ←ここにPrism Element接続ユーザーのパスワードを入力
Use following as value for encrypted_password key in the configuration file:
555555555555555555555555555555 # ←暗号化されたパスワードが出力されるので内容を控える
- virt-who.conf の編集
# vi /etc/virt-who.d/virt-who.conf
[ahv]
type=ahv #Nutanix HCI は ahv
server=IP #Prism Element の IP
username=ログインID #Prism Element のログインID
encrypted_password=555555555555555555555555555555 #先に控えた暗号化されたパスワード
owner=sssssss #組織名
hypervisor_id=hostname #hostname にする
prism_central=true #true にする
- virt-who を自動起動
# systemctl enable virt-who --now
Created symlink /etc/systemd/system/multi-user.target.wants/virt-who.service → /usr/lib/systemd/system/virt-who.service
- virt-who の起動状況確認
# systemctl status virt-who.service
プロキシ環境の場合
subscription-manager が Proxy を利用するよう設定
# subscription-manager config --server.proxy_hostname=プロキシサーバ --server.proxy_port=8080
/etc/rhsm/rhsm.conf の設定では [server] でプロキシの設定を追加
[server]
hostname = subscription.rhsm.redhat.com
prefix = /subscription
port = 443
insecure = 0
ssl_verify_depth = 3
proxy_hostname = プロキシサーバ
proxy_scheme = http
proxy_port =8080
proxy_user =
proxy_password =
no_proxy = Prism Element の IP
[rhsm]
baseurl = https://cdn.redhat.com
repomd_gpg_url =
ca_cert_dir = /etc/rhsm/ca/
repo_ca_cert = %(ca_cert_dir)sredhat-uep.pem
productCertDir = /etc/pki/product
entitlementCertDir = /etc/pki/entitlement
consumerCertDir = /etc/pki/consumer
manage_repos = 1
full_refresh_on_yum = 0
report_package_profile = 1
pluginDir = /usr/share/rhsm-plugins
pluginConfDir = /etc/rhsm/pluginconf.d
auto_enable_yum_plugins = 1
package_profile_on_trans = 0
inotify = 1
[rhsmcertd]
certCheckInterval = 240
autoAttachInterval = 1440
splay = 1
disable = 0
auto_registration = 0
auto_registration_interval = 60
[logging]
default_log_level = INFO
virt-who と AHV はプロキシを通さず接続するため /etc/virt-who.conf の設定で無効化する
# cat /etc/virt-who.conf |grep -v "^#"
[defaults]
[system_environment]
no_proxy=*
RedHat Custmer Portal 登録確認
AHVの仮想マシンの搭載状況を RedHat Custmer Portal に反映
# virt-who -odp
RedHat Custmer Portal にログインして確認する
まずはハイパーバイザーとしてホストが登録されていることを確認
ホストに搭載されている仮想マシンが正しく認識されているか確認
仮想マシンでサブスクリプションをアタッチ
利用可能なサブスクリプション確認
# subscription-manager list --available
サブスクリプションのアタッチ
subscription-manager register --auto-attach --force
割り当てられたサブスクリプション確認
subscription-manager list --consumed
まとめ
プロキシ環境で virt-who を利用すると構成が分かりにくくなるので記録。
AHV と virt-who が直接接続できる環境か、そうでないかで設定を読み替える必要がある。
コメント