第9章 動的プログラミング言語、Web サーバー、およびデータベースサーバー
以下の章では、動的プログラミング言語、Web サーバー、およびデータベースサーバーに関する RHEL 8 と RHEL 9 の間の最も重要な変更点を説明します。
9.1. 動的プログラミング言語、Web サーバー、およびデータベースサーバーにおける注目すべき変更
RHEL 9 の初期 Application Streams バージョン
RHEL 9 では、従来の dnf install
コマンドを使用して RPM パッケージとしてインストールできる最初の Application Streams バージョンを提供することで、Application Streams エクスペリエンスを向上させています。
RHEL 9.0 では、以下の動的プログラミング言語が提供されます。
- Node.js 16
- Perl 5.32
- PHP 8.0
- Python 3.9
- Ruby 3.0
RHEL 9.0 には、以下のバージョン制御システムが同梱されています。
- Git 2.31
- subversion 1.14
以下の Web サーバーには、RHEL 9.0 が同梱されています。
- Apache HTTP サーバー 2.4
- nginx 1.20
以下のプロキシーキャッシュサーバーを使用できます。
- Varnish Cache 6.6
- Squid 5.2
RHEL 9.0 は、以下のデータベースサーバーを提供します。
- MariaDB 10.5
- MySQL 8.0
- PostgreSQL 13
- Redis 6.2
追加の Application Streams バージョンの中には、将来のマイナー RHEL 9 リリースで、ライフサイクルが短いモジュールとして配布されるものがあります。
RHEL 8 以降の Python エコシステムの主な相違点
バージョンを指定しない python
コマンド
バージョンを指定しない python
コマンド (/usr/bin/python
) は、python-unversioned-command
パッケージで利用できます。一部のシステムでは、このパッケージはデフォルトでインストールされていません。バージョンを指定しない python
コマンドを手動でインストールする場合は、dnf install /usr/bin/python
コマンドを使用します。
RHEL 9 では、バージョンを指定しない python
コマンドは、デフォルトの Python 3.9 バージョンを指し、python3
コマンドおよび python3.9
コマンドと同等です。RHEL 9 では、バージョンを指定しないコマンドが Python 3.9 以外のバージョンを参照するように設定できません。
python
コマンドは、対話式セッションを対象としています。実稼働環境では、python3
、python3.9
、または python3.11
を明示的に使用することが推奨されます。
バージョンを指定しない python
コマンドは、dnf remove /usr/bin/python
コマンドを使用してアンインストールできます。
別の python
または python3
コマンドが必要な場合は、/usr/local/bin
または ~/.local/bin
にカスタムシンボリックリンクを作成するか、Python の仮想環境を使用できます。
バージョンを指定しないコマンドは、python3-pip
パッケージの /usr/bin/pip
など、他にもいくつか提供されています。RHEL 9 では、バージョンを指定しないコマンドはすべて、デフォルトの Python 3.9 バージョンを指します。
アーキテクチャー固有の Python wheels
RHEL 9 に構築されたアーキテクチャー固有の Python wheels
は、アップストリームアーキテクチャーの命名に準拠しています。これにより、RHEL 9 で Python wheels
を構築し、RHEL 以外のシステムにインストールできます。以前のリリースの RHEL に構築された Python wheels
は、上位互換性があり、RHEL 9 にインストールできます。これは、Python 拡張機能を含む wheels
(アーキテクチャーごとに構築) にのみ影響を及ぼし、純粋な Python コードの Python wheels
(アーキテクチャー固有ではない) には影響を及ぼさない点に注意してください。
libdb
の特記すべき変更
RHEL 8 および RHEL 9 は、現在、LGPLv2 ライセンスで配布される Berkeley DB (libdb
) バージョン 5.3.28 を提供しています。アップストリームの Berkeley DB バージョン 6 は、より厳しい AGPLv3 ライセンスで利用できます。
libdb
パッケージは、RHEL 9 で非推奨になり、将来バージョンの RHEL では利用できない可能性があります。RHEL 9 では、暗号アルゴリズムが libdb
から削除されました。RHEL 9 では、複数の libdb
依存関係が削除されました。
libdb
のユーザーは、別の鍵値データベースに移行することが推奨されます。詳細は、ナレッジベースの記事 Available replacements for the deprecated Berkeley DB (libdb) in RHEL を参照してください。
Tomcat が RHEL 9.2 以降で利用可能になりました。
RHEL 9.2 では、Apache Tomcat サーバーバージョン 9 が導入されています。Tomcat は、Java Servlet および JavaServer Pages テクノロジーの公式リファレンス実装で使用されるサーブレットコンテナーです。Java Servlet および JavaServer Pages の仕様は、Java Community Process に基づいて Sun によって開発されました。Tomcat はオープンな参加型環境で開発され、Apache ソフトウェアライセンスバージョン 2.0 に基づいてリリースされています。