CentOS代替のVzLinux(VirtuozzoLinux)をインストールしてみた


2021/07/13追記

急にアクセスが増えてきたのでVzLinux 8.4の簡単な評価を先に書いておくと、Alma Linux, Rocky Linux, Oracle Linux の3つに対する優位点が、2021/07/13時点のVzLinuxには無いので、特に採用するべきではないと思います。

個人的にはOracle Cloudも使っているので、Oracle Linux 8を使っています。

仮想コンテナであるOpenVZに対応したvzlinux kernelが提供されているのであればVzLinuxを選択する理由にもなるのですが、インストールしてみた限りでは使えない
そして、VzLinux 8.4を「日本語」でインストールするとロケール関連の動作が怪しくなる、という明確な問題があるので、現時点ではプラスポイント0、むしろマイナス、という感じです。


以下本文です


このblogのOracle Linux関連記事にこんな広告が表示された。

画像

VzLinux」なんてものがあるのかと別途ググってアクセスしてみた。(直接リンク飛ぶと規約上微妙なので)

画像

VzLinuxは、Linuxベースの仮想コンテナのVirtuozzo とそのオープンソース版OpenVZ の作っているLinux ディストリビューションで、この仮想コンテナを動かすにはRHEL/CentOSやUbuntuのデフォルトカーネル設定ではダメなので、稼働できる形でコンパイルしたものを提供していたものをディストリビューションとしても提供し始めたような感じである。

これに関連してか「Virtuozzo Linux 8 Quick Start Guide」の「3.3. Updating the Kernel」には、カーネルのアップデートのために「yum update vzkernel vzkernel-devel」を実行する、とあるが、実際のVzLinux 8上しても、vzkernelというパッケージは存在せず実行できない。

おそらくは、仮想コンテナVirtuozzo/OpenVZ用に提供されているバージョンであればvzkernelを使う、という話なんだろう、と思われる。

それはさておき、仮想環境にインストールしてみた。

VzLinux 8.3の時点ではセキュアブート非対応であるため、仮想マシンもそのように設定して起動。(VzLinux 8.4でもセキュアブート非対応であった)

画像

言語の選択で「日本語」を選ぶことができるが、インストール完了後、X-Windowアプリの一部でアプリ起動に失敗するので、基本的には「English」で進めた方が良いようだ。

(画像は日本語で進めた時のもの)

画像

基本的にはRHEL8/CentOS8そのままの表示である

画像

選択が終わったらインストール開始

Server with GUIでインストールした場合は下記の様になる。

画像

「日本語」を選択した場合、「端末」を選択すると、こんな感じでぐるぐる表示がされるものの端末は開かない。

/var/log/messagesを開くと「failback ‘C’ locale」という表示が出ているので「localectl list-locales」で確認すると、日本語に関するlocaleがインストールされていない。

というわけで、日本語に設定している場合は「dnf install glibc-langpack-ja」で日本語localeを追加するか、「localectl set-locale en_US.utf8」を実行して英語設定にする必要がある。

英語環境であれば下記の様に端末が正常に開く。

日本語localeを追加した場合も正常に端末が開くようになる。

画面を比較してみると、日本語locale追加以前は時刻表記が英語のまま、などの動作していましたね・・・


さて、kernel 4.18.0-305.vl8.x86_64 で起動してきている。

また、2021/06/16時点ではISOは8.3であったものの、updateすると8.4になった。

VzLinux 8のデフォルトレポジトリはこんな感じで、理由がよく分からないが「BaseOS」や「AppStream」などが無効化されており、「VirtuozzoLinux Base」と「VirtuozzoLinux Updates」のみが有効となっている。

ちなみにbaseos,appstream,plus,powertoolsを有効にしてみたが、vzkernelというパッケージは存在しませんでした。

とりあえずは、セキュアブート不要であれば使えるCentOS8代替としては使えそうです。


vzkernelはやはりOpenVZ対応カーネルな模様で https://src.openvz.org/projects/OVZ/repos/vzkernel/browse で開発されていました。(ブランチの選択肢に branch-rh8-4.18.0-240.1.1.vz8.6.x-ovz なんてものが見える。

また、 https://download.openvz.org/virtuozzo/releases/7.0/x86_64/iso/ で openvz-iso-7.0.16-552.iso という形でOpenVZ用カーネルで起動するRHEL7互換のものが配布されている。


2021/10/11追記

https://download.openvz.org/virtuozzo/releases/8.0/x86_64/iso/ に openvz-iso-8.0.0-1336.iso が置かれていた。

ダウンロードしてインストールしてみたら下記の様な感じだった。(update済)

[root@openvz t]# uname -a
Linux openvz 4.18.0-240.1.1.vz8.5.62 #1 SMP Tue Jul 27 16:10:46 MSK 2021 x86_64 x86_64 x86_64 GNU/Linux
[root@openvz t]# rpm -qa|grep kernel|sort
abrt-addon-kerneloops-2.10.9-20.vl8.1.x86_64
kernel-core-4.18.0-240.1.1.vz8.5.62.x86_64
kernel-headers-4.18.0-240.1.1.vz8.5.62.x86_64
kernel-tools-4.18.0-240.1.1.vz8.5.62.x86_64
kernel-tools-libs-4.18.0-240.1.1.vz8.5.62.x86_64
readykernel-scan-0.14-2.vl8.noarch
[root@openvz t]#

vzkernel というパッケージは無いらしい

[root@openvz t]# yum search vzkernel
Last metadata expiration check: 0:19:37 ago on Mon 11 Oct 2021 04:24:09 PM JST.
No matches found.
[root@openvz t]#

登録されているレポジトリを確認

[root@openvz ~]# dnf repolist --all
repo id                                 repo name                       status
appstream                               Virtuozzo Linux 8 - AppStream   disabled
baseos                                  Virtuozzo Linux 8 - BaseOS      disabled
cr                                      Virtuozzo Linux 8 - ContinuousR disabled
extras                                  Virtuozzo Linux 8 - Extras      disabled
factory                                 Build Factory packages for Cont disabled
factory-debuginfo                       Debug packages for Containers f disabled
fasttrack                               Virtuozzo Linux 8 - FastTrack   disabled
ha                                      Virtuozzo Linux 8 - HighAvailab disabled
obsoleted_tmpls                         Virtuozzo obsoleted EZ-template disabled
openvz-os                               OpenVZ                          enabled
openvz-os-debuginfo                     OpenVZ os Debug packages        disabled
openvz-updates                          OpenVZ Updates                  enabled
openvz-updates-debuginfo                OpenVZ updates Debug packages   disabled
plus                                    Virtuozzo Linux 8 - Plus        disabled
powertools                              Virtuozzo Linux 8 - PowerTools  disabled
virtuozzolinux-base                     VirtuozzoLinux Base             enabled
virtuozzolinux-base-debuginfo           VirtuozzoLinux Base debug packa disabled
virtuozzolinux-factory                  VirtuozzoLinux Factory          disabled
virtuozzolinux-factory-debuginfo        VirtuozzoLinux Factory debug pa disabled
virtuozzolinux-openvz-factory           VirtuozzoLinux Factory          disabled
virtuozzolinux-openvz-factory-debuginfo VirtuozzoLinux Factory debug pa disabled
virtuozzolinux-updates                  VirtuozzoLinux Updates          enabled
virtuozzolinux-updates-debuginfo        VirtuozzoLinux Updates debug pa disabled
vz7-guest-tools                         Virtuozzo Guest Tools for VHS7  disabled
vz8-guest-tools                         Virtuozzo Guest Tools for VHS8  disabled
[root@openvz ~]#

/etc/yum.repos.d/ には下記のファイルがあった

[root@openvz ~]# ls -l /etc/yum.repos.d/
total 24
-rw-r–r– 1 root root 1276 Aug 1 15:42 factory.repo
-rw-r–r– 1 root root 300 Aug 1 15:42 obsoleted_tmpls.repo
-rw-r–r– 1 root root 1208 Aug 1 15:42 openvz.repo
-rw-r–r– 1 root root 297 Sep 29 19:35 vz-guest-tools.repo
-rw-r–r– 1 root root 7770 Oct 11 16:19 vzlinux.repo
[root@openvz ~]#

各ファイルを確認してみる

[root@openvz ~]# cat /etc/yum.repos.d/factory.repo
# These repositories are for internal use by developers only
# Enable them on your own risk!!!

[factory]
name=Build Factory packages for Containers
mirrorlist=http://download.openvz.org/virtuozzo/mirrorlists/8.0/factory-os.mirrorlist
#baseurl=http://download.openvz.org/virtuozzo/factory/x86_64/os/
enabled=0
gpgcheck=1
module_hotfixes=True
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8

[factory-debuginfo]
name=Debug packages for Containers from Build Factory
mirrorlist=http://download.openvz.org/virtuozzo/mirrorlists/8.0/factory-debug.mirrorlist
#baseurl=http://download.openvz.org/virtuozzo/factory/x86_64/debug/
enabled=0
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8

[virtuozzolinux-openvz-factory]
name=VirtuozzoLinux Factory
mirrorlist=http://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-factory
#baseurl=http://repo.virtuozzo.com/vzlinux/8/$basearch/factory/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY

[virtuozzolinux-openvz-factory-debuginfo]
name=VirtuozzoLinux Factory debug packages
mirrorlist=http://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-factory-debug
#baseurl=http://repo.virtuozzo.com/vzlinux/8/$basearch/factory-debug/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY
[root@openvz ~]# cat /etc/yum.repos.d/obsoleted_tmpls.repo
[obsoleted_tmpls]
name=Virtuozzo obsoleted EZ-templates
mirrorlist=http://download.openvz.org/virtuozzo/mirrorlists/7.0/obsoleted_tmpls.mirrorlist
#baseurl=http://download.openvz.org/virtuozzo/obsoleted_tmpls/7.0/x86_64/os/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-7
[root@openvz ~]# cat /etc/yum.repos.d/openvz.repo
[openvz-os]
name=OpenVZ
mirrorlist=http://download.openvz.org/virtuozzo/mirrorlists/8.0/releases-os.mirrorlist
#baseurl=http://download.openvz.org/virtuozzo/releases/8.0/x86_64/os/
enabled=1
gpgcheck=1
module_hotfixes=True
priority=50
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8

[openvz-updates]
name=OpenVZ Updates
mirrorlist=http://download.openvz.org/virtuozzo/mirrorlists/8.0/updates-os.mirrorlist
#baseurl=http://download.openvz.org/virtuozzo/updates/8.0/x86_64/os/
enabled=1
gpgcheck=1
module_hotfixes=True
priority=50
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8

[openvz-os-debuginfo]
name=OpenVZ os Debug packages
mirrorlist=http://download.openvz.org/virtuozzo/mirrorlists/8.0/releases-debug.mirrorlist
#baseurl=http://download.openvz.org/virtuozzo/releases/8.0/x86_64/debug/
enabled=0
gpgcheck=1
priority=50
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8

[openvz-updates-debuginfo]
name=OpenVZ updates Debug packages
mirrorlist=http://download.openvz.org/virtuozzo/mirrorlists/8.0/updates-debug.mirrorlist
#baseurl=http://download.openvz.org/virtuozzo/updates/8.0/x86_64/debug/
enabled=0
gpgcheck=1
priority=50
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8
[root@openvz ~]# cat /etc/yum.repos.d/vz-guest-tools.repo
[vz7-guest-tools]
name=Virtuozzo Guest Tools for VHS7
baseurl=http://repo.virtuozzo.com/vz-guest-tools-lin/vz7/latest/centos8/
gpgcheck=0
enabled=0

[vz8-guest-tools]
name=Virtuozzo Guest Tools for VHS8
baseurl=http://repo.virtuozzo.com/vz-guest-tools-lin/vz8/latest/centos8/
gpgcheck=0
enabled=0
[root@openvz ~]# cat /etc/yum.repos.d/vzlinux.repo
# virtuozzolinux.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client.  You should use this for VirtuozzoLinux updates
# unless you are manually picking other mirrors.
#
[virtuozzolinux-base]
name=VirtuozzoLinux Base
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/os/
enabled=1
gpgcheck=1
priority=90
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8

#released updates
[virtuozzolinux-updates]
name=VirtuozzoLinux Updates
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-updates
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/updates/
enabled=1
gpgcheck=1
priority=90
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8

[virtuozzolinux-base-debuginfo]
name=VirtuozzoLinux Base debug packages
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os-debug
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/debug/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8

[virtuozzolinux-updates-debuginfo]
name=VirtuozzoLinux Updates debug packages
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-updates-debug
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/updates-debug/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Virtuozzo-8

# These -factory repositories are for internal use by developers only
# Enable them on your own risk!!!
[virtuozzolinux-factory]
name=VirtuozzoLinux Factory
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-factory
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/factory/
priority=90
enabled=0
gpgcheck=0

[virtuozzolinux-factory-debuginfo]
name=VirtuozzoLinux Factory debug packages
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-factory-debug
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/factory-debug/
priority=90
enabled=0
gpgcheck=0


#
# Mimic names & ids of CentOS repos
#

[appstream]
name=Virtuozzo Linux $releasever - AppStream
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/os/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY

[baseos]
name=Virtuozzo Linux $releasever - BaseOS
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/os/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY

[cr]
name=Virtuozzo Linux $releasever - ContinuousRelease
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/os/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY

[extras]
name=Virtuozzo Linux $releasever - Extras
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/os/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY

[fasttrack]
name=Virtuozzo Linux $releasever - FastTrack
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/os/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY

[ha]
name=Virtuozzo Linux $releasever - HighAvailability
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/os/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY

[plus]
name=Virtuozzo Linux $releasever - Plus
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/os/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY

[powertools]
name=Virtuozzo Linux $releasever - PowerTools
exclude=kernel,kernel-core,kernel-devel,kernel-debug,libvirt,seabios,libguestfs,libguestfs-appliance,python3-libvirt,OVMF,anaconda*,kdump-anaconda-addon,blivet-data,python3-blivet,criu,crit,libcompel,python-criu,python3-criu,disp-helper-scripts-vz
mirrorlist=https://repo.virtuozzo.com/vzlinux/mirrorlist/mirrors-8-os
#baseurl=https://repo.virtuozzo.com/vzlinux/8/$basearch/os/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/VZLINUX_GPG_KEY
[root@openvz ~]#

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください