米国時間 12 月 8 日、CentOS プロジェクトは今後、現在の RHEL リリースより先行する内容の CentOS Stream へ活動を移し、Red Hat Enterprise Linux 8 (RHEL 8) のリビルドとしての CentOS Linux 8 は、2021 年末に終了するというアナウンスをしました
このアナウンスに対し、批判的な意見を目にしますが、そもそも CentOS Stream とは何なのか、ということが判っていません。サイバートラスト社 Miracle Linux のサイトに CentOS Stream について丁寧な解説がありましたので、サイトのリンクを紹介します。
長く安定して Linux のサーバー環境を維持したい場合、10 年間のサポートが保証されている RHEL は、企業にとって魅力的な選択肢です。RHEL のオープンソース部分をリビルドした CentOS は、RHEL と同じ品質を期待でき、リリース時期は遅れるものの、セキュリティアップデートもサブスクリプション費用無しに受けることができます。しかも、Red Hat 社は RHEL クローンである CentOS プロジェクトの活動を支援するスポンサー企業なのです。
自分がもしも(IBM 傘下の)Red Hat 社の株主であれば、こんな利益相反するビジネスモデルに文句を言うことでしょう。
CentOS Stream
昨年アナウンスされた CentOS Stream [3] ですが、興味が無くて触ったこともありませんでした。まずはどんなものか使ってみるべしと考え、CentOS-Stream-8-x86_64-20201210-dvd1.iso をダウンロードして GNOME Box の仮想環境にインストールしてみました。
インストールの方法やデスクトップの見映えは、従来の CentOS との違いが判りません。
カーネルと Python のバージョンの違いを見てみました。[2020-12-13 時点]
まずは、家庭内 LAN に常時稼働させている PC にインストールしている現行の CentOS 8.3 の場合です。
次は、仮想環境上の CentOS Stream の場合です。
バージョン差は僅差です。バージョン差は僅かとは言え、企業の本番環境でもしも CentOS を使っているとすれば問題になるでしょうが、自分の環境では大きな問題は無さそうです。
ちなみに、RHEL に将来取り込まれる等、検証目的の位置づけの Fedora で同じように確認すると、バージョンに大きな開きがあることを確認できます。
CentOS から CentOS Stream へ移行
自分の場合、ミッションクリティカルな用途に CentOS を使用しているわけではありません。ですので CentOS プロジェクトの方針変更を嘆くよりも早々に CentOS Stream に移行してみて問題点を探した方が良さそうです。
CentOS から CentOS Stream へ移行は、リポジトリの変更だけで良さそうです。CentOS Stream のダウンロードサイトに以下のように移行の手順が示されていました [4]。
- dnf install centos-release-stream
- dnf swap centos-{linux,stream}-repos
- dnf distro-sync
実際にやってみました。
[bitwalk@centos-pc ~]$ sudo dnf install centos-release-stream [sudo] bitwalk のパスワード: メタデータの期限切れの最終確認: 2:49:01 時間前の 2020年12月13日 18時36分15秒 に実施しました。 依存関係が解決しました。 ======================================================================================================================== パッケージ アーキテクチャー バージョン リポジトリー サイズ ======================================================================================================================== インストール: centos-release-stream x86_64 8.1-1.1911.0.7.el8 extras 11 k トランザクションの概要 ======================================================================================================================== インストール 1 パッケージ ダウンロードサイズの合計: 11 k インストール済みのサイズ: 6.6 k これでよろしいですか? [y/N]: y パッケージのダウンロード: centos-release-stream-8.1-1.1911.0.7.el8.x86_64.rpm 198 kB/s | 11 kB 00:00 ------------------------------------------------------------------------------------------------------------------------ 合計 18 kB/s | 11 kB 00:00 トランザクションの確認を実行中 トランザクションの確認に成功しました。 トランザクションのテストを実行中 トランザクションのテストに成功しました。 トランザクションを実行中 準備 : 1/1 インストール : centos-release-stream-8.1-1.1911.0.7.el8.x86_64 1/1 検証 : centos-release-stream-8.1-1.1911.0.7.el8.x86_64 1/1 Installed products updated. インストール済み: centos-release-stream-8.1-1.1911.0.7.el8.x86_64 完了しました! [bitwalk@centos-pc ~]$ sudo dnf swap centos-{linux,stream}-repos CentOS-Stream - AppStream 3.1 MB/s | 6.3 MB 00:02 CentOS-Stream - Base 610 kB/s | 2.3 MB 00:03 CentOS-Stream - Extras 15 kB/s | 7.0 kB 00:00 依存関係が解決しました。 ======================================================================================================================== パッケージ アーキテクチャー バージョン リポジトリー サイズ ======================================================================================================================== インストール: centos-stream-release noarch 8.4-1.el8 Stream-BaseOS 21 k 置き換え centos-linux-release.noarch 8.3-1.2011.el8 置き換え centos-release-stream.x86_64 8.1-1.1911.0.7.el8 centos-stream-repos noarch 8-2.el8 Stream-BaseOS 19 k 削除中: centos-linux-repos noarch 8-2.el8 @BaseOS 26 k トランザクションの概要 ======================================================================================================================== インストール 2 パッケージ 削除 1 パッケージ ダウンロードサイズの合計: 40 k これでよろしいですか? [y/N]: y パッケージのダウンロード: (1/2): centos-stream-release-8.4-1.el8.noarch.rpm 265 kB/s | 21 kB 00:00 (2/2): centos-stream-repos-8-2.el8.noarch.rpm 199 kB/s | 19 kB 00:00 ------------------------------------------------------------------------------------------------------------------------ 合計 61 kB/s | 40 kB 00:00 トランザクションの確認を実行中 トランザクションの確認に成功しました。 トランザクションのテストを実行中 トランザクションのテストに成功しました。 トランザクションを実行中 準備 : 1/1 scriptletの実行中: centos-stream-repos-8-2.el8.noarch 1/1 インストール : centos-stream-repos-8-2.el8.noarch 1/5 インストール : centos-stream-release-8.4-1.el8.noarch 2/5 廃止 : centos-release-stream-8.1-1.1911.0.7.el8.x86_64 3/5 廃止 : centos-linux-release-8.3-1.2011.el8.noarch 4/5 削除 : centos-linux-repos-8-2.el8.noarch 5/5 scriptletの実行中: centos-linux-repos-8-2.el8.noarch 5/5 検証 : centos-stream-release-8.4-1.el8.noarch 1/5 検証 : centos-linux-release-8.3-1.2011.el8.noarch 2/5 検証 : centos-release-stream-8.1-1.1911.0.7.el8.x86_64 3/5 検証 : centos-stream-repos-8-2.el8.noarch 4/5 検証 : centos-linux-repos-8-2.el8.noarch 5/5 Installed products updated. インストール済み: centos-stream-release-8.4-1.el8.noarch centos-stream-repos-8-2.el8.noarch 削除しました: centos-linux-repos-8-2.el8.noarch 完了しました! [bitwalk@centos-pc ~]$ sudo dnf distro-sync CentOS Stream 8 - AppStream 2.9 MB/s | 6.3 MB 00:02 CentOS Stream 8 - BaseOS 2.2 MB/s | 2.3 MB 00:01 CentOS Stream 8 - Extras 5.1 kB/s | 7.0 kB 00:01 エラー: 問題 1: package openblas-devel-0.3.3-5.el8.x86_64 requires openblas(x86-64) = 0.3.3-5.el8, but none of the providers can be installed - openblas-0.3.3-5.el8.x86_64 does not belong to a distupgrade repository - problem with installed package openblas-devel-0.3.3-5.el8.x86_64 問題 2: package R-core-devel-4.0.3-1.el8.x86_64 requires openblas-devel, but none of the providers can be installed - package openblas-devel-0.3.3-5.el8.x86_64 requires openblas-threads(x86-64) = 0.3.3-5.el8, but none of the providers can be installed - cannot install the best update candidate for package R-core-devel-4.0.3-1.el8.x86_64 - openblas-threads-0.3.3-5.el8.x86_64 does not belong to a distupgrade repository 問題 3: problem with installed package R-core-devel-4.0.3-1.el8.x86_64 - package R-core-devel-4.0.3-1.el8.x86_64 requires openblas-devel, but none of the providers can be installed - package openblas-devel-0.3.3-5.el8.x86_64 requires openblas(x86-64) = 0.3.3-5.el8, but none of the providers can be installed - cannot install both openblas-0.3.12-1.el8.x86_64 and openblas-0.3.3-5.el8.x86_64 - cannot install the best update candidate for package openblas-0.3.3-5.el8.x86_64 (競合するパッケージを置き換えるには、コマンドラインに '--allowerasing' を追加してみてください または、'--skip-broken' を追加して、インストール不可のパッケージをスキップしてください または、'--nobest' を追加して、最適候補のパッケージのみを使用しないでください) [bitwalk@centos-pc ~]$ sudo dnf distro-sync --allowerasing メタデータの期限切れの最終確認: 0:00:42 時間前の 2020年12月13日 21時27分05秒 に実施しました。 依存関係が解決しました。 ======================================================================================================================== パッケージ Arch バージョン Repo サイズ ======================================================================================================================== インストール: kernel x86_64 4.18.0-257.el8 baseos 4.9 M kernel-core x86_64 4.18.0-257.el8 baseos 31 M ... (途中省略) ... 完了しました! [bitwalk@centos-pc ~]$ sudo reboot [sudo] bitwalk のパスワード:
無事再起動できたので、OS のバージョンを確認しました。
[bitwalk@centos-pc ~]$ lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOSStream
Description: CentOS Stream release 8
Release: 8
Codename: n/a
[bitwalk@centos-pc ~]$
念のため、dnf のキャッシュをクリアしてアップデートしました。
[bitwalk@centos-pc ~]$ sudo dnf clean all [sudo] bitwalk のパスワード: Librepo version: 1.12.0 with CURL_GLOBAL_ACK_EINTR support (libcurl/7.61.1 OpenSSL/1.1.1g zlib/1.2.11 brotli/1.0.6 libidn2/2.2.0 libpsl/0.20.2 (+libidn2/2.2.0) libssh/0.9.4/openssl/zlib nghttp2/1.33.0) 128 ファイルが削除されました [bitwalk@centos-pc ~]$ sudo dnf update Librepo version: 1.12.0 with CURL_GLOBAL_ACK_EINTR support (libcurl/7.61.1 OpenSSL/1.1.1g zlib/1.2.11 brotli/1.0.6 libidn2/2.2.0 libpsl/0.20.2 (+libidn2/2.2.0) libssh/0.9.4/openssl/zlib nghttp2/1.33.0) Downloading: http://mirrorlist.centos.org/?release=8-stream&arch=x86_64&repo=AppStream&infra=stock Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/AppStream/x86_64/os/repodata/repomd.xml0 B --:-- ETA Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/AppStream/x86_64/os/repodata/8273351f88060971c41b3311d6639ef213ee39738fc06df2bd5da1e1c6f80f38-primary.xml.gz Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/AppStream/x86_64/os/repodata/fc19982f7d58ac10901057d3a3107b8ec2a862484b6fa265097aa0bffc003e89-filelists.xml.gz Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/AppStream/x86_64/os/repodata/7b3e68b8ce7cbaf431e311014e097b99390465ce660eebdf3bd469524aea8059-comps-AppStream.x86_64.xml.xz Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/AppStream/x86_64/os/repodata/ee943ff8df8ef794d546f4512e51092a0600aba19a57170bc1866be8639d86b0-modules.yaml.gz CentOS Stream 8 - AppStream 3.1 MB/s | 6.3 MB 00:02 Downloading: http://mirrorlist.centos.org/?release=8-stream&arch=x86_64&repo=BaseOS&infra=stock Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/BaseOS/x86_64/os/repodata/repomd.xml 653 B 00:00 ETA Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/BaseOS/x86_64/os/repodata/791eafa551462b5d8c607bca5b2f84fa197f9ed0d54c9d1337c912f50ff262bb-primary.xml.gz Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/BaseOS/x86_64/os/repodata/8e01da4e448455967e624cee6a166892a084272955b0017c73ff53518b8f54a4-filelists.xml.gz Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/BaseOS/x86_64/os/repodata/6cd252c469b0dd0c67bc8d8b4ab2df44fb24de52c93decdfe7acc77b97361490-comps-BaseOS.x86_64.xml.xz CentOS Stream 8 - BaseOS 1.5 MB/s | 2.3 MB 00:01 Downloading: http://mirrorlist.centos.org/?release=8-stream&arch=x86_64&repo=extras&infra=stock Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/extras/x86_64/os/repodata/repomd.xml 682 B 00:00 ETA Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/extras/x86_64/os/repodata/5a57a31bcc93440037fc10dbea5d51cb44bd1d06ac7a9f23fbc7083616d8e0dd-primary.xml.gz Downloading: http://ftp.jaist.ac.jp/pub/Linux/CentOS/8-stream/extras/x86_64/os/repodata/7b3e6411745b658b6732f5c21cc2e7ce27eb633939dfe384521c743b31c4b49c-filelists.xml.gz CentOS Stream 8 - Extras 13 kB/s | 7.0 kB 00:00 Downloading: https://mirrors.fedoraproject.org/metalink?repo=epel-modular-8&arch=x86_64&infra=stock&content=centos Downloading: https://nrt.edge.kernel.org/fedora-buffet/epel/8/Modular/x86_64/repodata/repomd.xml | 0 B --:-- ETA Downloading: https://nrt.edge.kernel.org/fedora-buffet/epel/8/Modular/x86_64/repodata/6e76b07470add4d980ab55e489c19a8711c0a21c85aa87ce7118bf6df2973bd8-primary.xml.gz Downloading: https://nrt.edge.kernel.org/fedora-buffet/epel/8/Modular/x86_64/repodata/473a9a62ed983fdf7fda72f715935fd193016dd2f7953a43e2f3e1e8fcb0ea67-filelists.xml.gz Downloading: https://nrt.edge.kernel.org/fedora-buffet/epel/8/Modular/x86_64/repodata/3baaf05dd0949527e5a5ab10b2026fe0d4d05e94e2c3701a49252b2b4815e1d8-modules.yaml.gz Downloading: https://nrt.edge.kernel.org/fedora-buffet/epel/8/Modular/x86_64/repodata/63f80214622af65fbeb921ddca0117d62b119a0550f4acfe041350e531a01fc1-updateinfo.xml.xz Extra Packages for Enterprise Linux Modular 8 - x86_64 51 kB/s | 98 kB 00:01 Downloading: https://mirrors.fedoraproject.org/metalink?repo=epel-8&arch=x86_64&infra=stock&content=centos Downloading: http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/8/Everything/x86_64/repodata/repomd.xml| 0 B --:-- ETA Downloading: http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/8/Everything/x86_64/repodata/a9cd8adabc3a27074b6943e8ff135b88a4f328a5d1f97d67a8dac0aa55ed982c-primary.xml.gz Downloading: http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/8/Everything/x86_64/repodata/270edbc44df4e1c9ed73474ed11013a9a02c7c2d9cee8463ce05d6198410f202-filelists.xml.gz Downloading: http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/8/Everything/x86_64/repodata/7566a18455054e4ce6b28bda7c181f66dd9958ed35c66f2b23612fa1f1f5c591-comps-Everything.x86_64.xml Downloading: http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/8/Everything/x86_64/repodata/59d78238032d40e2b597ea095a233d32b1567f41b68df9283c800efbeda0f4f9-prestodelta.xml.xz Downloading: http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/8/Everything/x86_64/repodata/504b1498b49178122c9e6a14df5fd67ed4485bfe34829325bd43be72401231ac-updateinfo.xml.bz2 Extra Packages for Enterprise Linux 8 - x86_64 2.7 MB/s | 8.6 MB 00:03 Downloading: http://nginx.org/packages/centos/8/x86_64/repodata/repomd.xml Downloading: http://nginx.org/packages/centos/8/x86_64/repodata/82631ea743cf7be308771aea604ab9360f5a22a353dd41cd4aa821cf5e304e3b-filelists.xml.gz Downloading: http://nginx.org/packages/centos/8/x86_64/repodata/e40dce1fd90b0b014306eaa53afd5f17ef7d45e54528381c2def57d24c92aa64-primary.xml.gz nginx stable repo 17 kB/s | 20 kB 00:01 Downloading: http://nginx.org/packages/mainline/centos/8/x86_64/repodata/repomd.xml Downloading: http://nginx.org/packages/mainline/centos/8/x86_64/repodata/4509e3991602149526026152838e6c463449526c1d6fdc9cf5f98e1299040d9f-filelists.xml.gz Downloading: http://nginx.org/packages/mainline/centos/8/x86_64/repodata/23af08fb357a75663c94e659b3106e16c03fd9fcbacd1c6f4d501d8cccabb3a7-primary.xml.gz nginx mainline repo 41 kB/s | 55 kB 00:01 Downloading: https://download.postgresql.org/pub/repos/yum/12/redhat/rhel-8-x86_64/repodata/repomd.xml Downloading: https://download.postgresql.org/pub/repos/yum/12/redhat/rhel-8-x86_64/repodata/1bc62ad12586b7135b7169eeed072ff133ff9c56a42901703cc4d0aeb10fbfd9-primary.xml.gz Downloading: https://download.postgresql.org/pub/repos/yum/12/redhat/rhel-8-x86_64/repodata/cfd77272bca3f2c95961f22011199c11cf499bcff424ae172de6e1b3ec5acf6f-filelists.xml.gz Downloading: https://download.postgresql.org/pub/repos/yum/12/redhat/rhel-8-x86_64/repodata/2b45eeae9901ca2f9d7b11d1ffc9d2e3734b74a05bfb7cea50445d8ee4466e80-postgresqldbserver-12.xml.gz PostgreSQL 12 for RHEL/CentOS 8 - x86_64 104 kB/s | 416 kB 00:03 依存関係が解決しました。 行うべきことはありません。 完了しました! [bitwalk@centos-pc ~]$
Cockpit にも従来通りアクセスできました。
まとめ
CentOS Stream に問題があるかどうかは、使っていく中で確認をしていきます。CentOS Stream の将来は安泰か?という問いについては判りませんが、今回の CentOS から CentOS Stream への移行については、一年も前から意図して計画されていた節がありますし、移行プランも用意されていたので、今後なにか変更があるとしても、周到に準備をした上でアナウンスされると思います。
只より高いものはないとはよく言ったもので、オープンソース・プロジェクトに限りませんが、常にリスクアセスメントをしてプランA、プラン B…を用意しておく必要性を実感しました。
サブスクリプションに費用を支払いたくない企業を相手にするよりも、株主に RHEL と CentOS Stream の位置づけの違いを明確に説明することの方が、Red Hat 社にとってはきっと良いことなのでしょう。無料であることを望む一般ユーザーとのバランスがうまく取れることを望むばかりです。
参考サイト
- CentOS Project shifts focus to CentOS Stream – Blog.CentOS.org [2020-12-08]
- bitWalk's: CentOS プロジェクトは CentOS Stream に注力 [2020-12-11]
- Transforming the development experience within CentOS [2019-09-24]
- CentOS Stream
- Rocky Linux
にほんブログ村
0 件のコメント:
コメントを投稿