RHEL9の詳細設計まとめ

Linux

RHEL9の詳細設計をまとめました。以下を想定しています。

  • Red Hat Enterprise Linux 9.6

RHEL10の詳細設計については以下の記事でまとめています。

物理環境・仮想環境

物理環境なのか仮想環境なのかを設計します。物理環境であればサーバーの機器名称を確認します。

サーバー等のハードウェアの情報は以下でまとめています。

CPUのコア数

物理仮想を問わず、使用するCPUのコア数を確認します。仮想環境ではハイパーバイザー上でコア数の設定を確認できます。

RHEL9 では、CPUのアーキテクチャがx86_64の場合は最大で「1792 [8192]」までのコア数制限があります。

詳細は以下のRed Hat公式記事を参照ください。

Red Hat Enterprise Linux テクノロジーの機能と制限 - Red Hat Customer Portal
ここでは、Red Hat Enterprise Linux でサポートされる制限と理論上の制限を紹介します。

メモリの設定値

RHEL9 では、CPUのアーキテクチャがx86_64の場合は最大で設定できるメモリが48TB [64TB]までになります。

RHEL9でCPUのアーキテクチャがx86_64の場合、最小限のメモリ要件は「ローカルメディアまたは NFS ネットワークインストールの場合は 1.5 GiB、HTTP(S) および FTP ネットワークインストールの場合は 3 GiB」となっています。わかりやすく書き換えると、CDに.isoファイルを焼き付けたり、NFSでディレクトリをマウントしてインストールする場合はメモリを1.5GB、インターネットに接続してインターネット経由でRHEL9をインストールする場合は3GiB以上のメモリに設定する必要があります。

詳細は以下のRed Hat公式記事を参照ください。

Red Hat Enterprise Linux テクノロジーの機能と制限 - Red Hat Customer Portal
ここでは、Red Hat Enterprise Linux でサポートされる制限と理論上の制限を紹介します。

ストレージ容量

ストレージの容量を決めて記載します。仮想環境でストレージを割り当てる場合、Red Hat Enterprise Linux9そのものに、推奨の容量があるので参考にしてください。

最低 10 GiB の空きディスク容量が必要です。Red Hat Enterprise Linux をインストールするには、パーティションが分割されていないディスク領域か、削除できるパーティション内に、最低 10 GiB の容量が必要です。

A.2. ディスクおよびメモリーの要件 | 標準的な RHEL 9 インストールの実行 | Red Hat Enterprise Linux | 9 | Red Hat Documentation
A.2. ディスクおよびメモリーの要件 | 標準的な RHEL 9 インストールの実行 | Red Hat Enterprise Linux | 9 | Red Hat Documentation

マウントしているストレージの容量は以下のコマンドで確認できます。

df -Th

各ディレクトリの容量

/var、/rootなど、各ディレクトリの容量を設計します。なお、ストレージ容量と同じくして各ディレクトリの容量も推奨のサイズがあります。

以下のRHEL9公式ドキュメントを参考に、各ディレクトリの最低推奨値(最小限の推奨値)をまとめました。

B.4. 推奨されるパーティション設定スキーム | 標準的な RHEL 9 インストールの実行 | Red Hat Enterprise Linux | 9 | Red Hat Documentation
B.4. 推奨されるパーティション設定スキーム | 標準的な RHEL 9 インストールの実行 | Red Hat Enterprise Linux | 9 | Red Hat Documentation
B.5. パーティション設定に関するアドバイス | 標準的な RHEL 9 インストールの実行 | Red Hat Enterprise Linux | 9 | Red Hat Documentation
B.5. パーティション設定に関するアドバイス | 標準的な RHEL 9 インストールの実行 | Red Hat Enterprise Linux | 9 | Red Hat Documentation
ディレクトリ推奨値備考
/home1 GiB 以上のサイズを推奨
swap最小限 1 GB のサイズを推奨していますmkswap(8) の man ページを参照してください
/ (10 GiB のサイズを推奨)
/boot/efiサイズは 200 MiB を推奨
PReP 起動パーティション(4 – 8 MiB のサイズを推奨)IBM Power System サーバーに Red Hat Enterprise Linux をインストールする場合は、ディスクの最初のパーティションに PReP 起動パーティションが含まれている必要があります。
/var最低 5 GB/var を含むパーティションまたはボリュームは、最低 5 GB となることを確認してください。
/usrCUI ⇒ 最低 5 GiB
GUI ⇒ 最低 10 GiB
このディレクトリーを含むパーティションまたはボリュームは、最小インストールの場合は最低 5 GiB、グラフィカル環境のインストールの場合は最低 10 GiB 必要です。

マウント情報

以下のコマンドで確認できるマウント情報を確認します。

# df -Th

マウントに関しての詳細は以下でまとめています。

fstabの確認

fstab(ファイルシステムテーブル)を確認します。

# cat /etc/fstab

NFSサーバーの構築、NFSマウントの詳細は以下の記事でまとめています。

isoファイル(CPU)のアーキテクチャ

OSのインストールに使用するisoファイルはCPUのアーキテクチャによって必要なisoが異なります。

カーネルのバージョン

以下のコマンドでカーネルのバージョンを確認できます。

uname -r

カーネルのバージョンを特定のバージョンにする

以下の記事でカーネルを特定のバージョンにする方法をまとめています。

yum update / dnf updateコマンドでカーネルのバージョンアップを防ぐ方法

以下の記事でyum update/ dnf updateコマンドでカーネルのバージョンがアップデートされるのを防ぐ方法をまとめています。

ホスト名

サーバーのホスト名を決めます。一般的には商用であればprodのp、検証用であればstagingのsを含むホスト名を設定するなど。

ユーザーとグループの情報

以下のファイルに保存されるユーザーの情報をcat コマンドで確認します。

/etc/passwd

グループの情報は以下のファイルを確認します。

/etc/group

ロケールの設定

設定するロケールを確認します。RHEL9のロケールの設定方法については以下の記事で詳細をまとめています。

自身のIPアドレス

以下コマンドで自身のIPアドレスを確認します。

ifconfig

IPv6の無効化

IPv6を無効化する場合は以下のRHEL9公式ドキュメントでIPv6の無効化手順を確認できます。

第19章 NetworkManager で特定接続の IPv6 の無効化 | ネットワークの設定および管理 | Red Hat Enterprise Linux | 9 | Red Hat Documentation
第19章 NetworkManager で特定接続の IPv6 の無効化 | ネットワークの設定および管理 | Red Hat Enterprise Linux | 9 | Red Hat Documentation

接続先のDNSサーバー

DNSサーバーに接続して使う場合のDNSサーバーのIPアドレスを確認します。

プロキシサーバーの接続先

プロキシサーバーを使用する場合はプロキシサーバーのIPアドレスを確認します。

yumコマンド、dnfコマンド実行時にプロキシサーバーを経由する場合は、以下のファイルに次のようにパラメータを設定する。なお、/etc/yum.confは/etc/dnf/dnf.confへのシンボリックリンクになっている(/etc/yum.conf -> dnf/dnf.conf)。

設定ファイル:

/etc/dnf/dnf.conf

パラメータ:

proxy=http://<プロキシサーバーのIPアドレスもしくは/etc/hostsで名前解決したホスト名>:<ポート番号>

一般的にプロキシのポート番号には「80番」、「8080番」、「1080番」などが使われます。

ルーティング設定(ルーティングテーブルの確認)

ルーティング設定を確認します。以下のコマンドで現在設定されているルーティング情報を確認します。

netstat -nr

以下は実行例です。

[root@RHEL96 ~]# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.242.2   0.0.0.0         UG        0 0          0 ens160
192.168.242.0   0.0.0.0         255.255.255.0   U         0 0          0 ens160
[root@RHEL96 ~]#

ルーティング設定の追加については以下の記事で詳細をまとめています。

SSHの設定

rootユーザーのSSH接続を許可している場合はrootユーザーのSSH接続を許可したパラメータを確認します。

インストール時にrootユーザーのSSH接続を許可していれば以下のファイルとパラメータが自動で生成され、以下のような内容の文章が記載されます。

[root@RHEL95 ~]# cat /etc/ssh/sshd_config.d/01-permitrootlogin.conf
# This file has been generated by the Anaconda Installer.
# Allow root to log in using ssh. Remove this file to opt-out.
PermitRootLogin yes

時刻同期に関する設定

RHEL9では時刻同期にchronyd(chronyのデーモン)を使用します。デーモンは常駐プログラムのことでWindows のサービスに該当する概念です。

RHEL9のchronyの設定については以下のRHEL9公式ドキュメントで詳細が確認できます。

11.3. chrony の使用 | 基本的なシステム設定 | Red Hat Enterprise Linux | 9 | Red Hat Documentation
11.3. chrony の使用 | 基本的なシステム設定 | Red Hat Enterprise Linux | 9 | Red Hat Documentation

ファイヤウォールに関する設定の確認

ファイヤウォールに関する設定を確認します。

SELinuxの無効化

SELinuxを無効化しないと動作しないケースが複数あると思います。Apache HTTP Serverでブラウザからhtmlファイルを読み込むにはSELinuxを無効化します。

RHEL9ではRHEL8とSELinuxの無効化方法が異なるので、以下の記事でSELinuxを無効化させます。

まずは以下のコマンドで今の状態を確認します。

# grubby --info ALL

次に以下のコマンドでパラメータを追加します。

# grubby --update-kernel ALL --args selinux=0

以下のコマンドでOSの再起動を実施します。

# reboot

再度最初に実行したコマンドを実行して実行結果を確認して差分を確認します。

# grubby --info ALL

SELinuxの無効化を取り消すには以下のコマンドを実行します。

# grubby --update-kernel ALL --remove-args selinux

カーネルバージョンの確認

カーネルのバージョン情報を確認します。

各種RPMパッケージの一覧、バージョン情報を確認

以下コマンドで各rpmパッケージの情報を確認します。

rpm -qa | sort

サービスの一覧を確認する

以下のコマンドを実行してサービスの一覧を確認しておきます。

# systemctl list-units -t service

実行例:

[root@RHEL96 ~]# systemctl list-units -t service
  UNIT                                                  LOAD   ACTIVE SUB     DESCRIPTION
  accounts-daemon.service                               loaded active running Accounts Service
  alsa-state.service                                    loaded active running Manage Sound Card State (restore and store)
  atd.service                                           loaded active running Deferred execution scheduler
  auditd.service                                        loaded active running Security Auditing Service
  avahi-daemon.service                                  loaded active running Avahi mDNS/DNS-SD Stack
  chronyd.service                                       loaded active running NTP client/server
  colord.service                                        loaded active running Manage, Install and Generate Color Profiles
  crond.service                                         loaded active running Command Scheduler
  cups.service                                          loaded active running CUPS Scheduler
  dbus-broker.service                                   loaded active running D-Bus System Message Bus
  dracut-shutdown.service                               loaded active exited  Restore /run/initramfs on shutdown
...(中略)

kdumpの設定

kdump(カーネルに関するダンプの設定)が有効になっているはずなので、kdumpが有効になっていることを確認しておきます。

コアダンプの設定

コアダンプはアプリケーションのクラッシュ時に作られるダンプです。コアダンプの設定についても確認しておきます。

リモートデスクトップ接続

RHEL9ではポート番号3389でWindows Serverのようにリモート接続できないので、これはRHEL10からの仕様です。RHEL10ではWindows Server同様にポート番号3389でリモート接続が可能です。

名前解決

以下のhostsファイルにIPアドレスとホスト名が対応している情報が記載します。

/etc/hosts

以下のコマンドでhostsを確認します。実行例とコマンドです。

[root@RHEL96 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
[root@RHEL96 ~]#

viエディタで/etc/hostsファイルを編集する方法は以下の記事でまとめています。

インストールしたミドルウェアの一覧とその設定

RHELにインストールしたミドルウェアの一覧とその設定値を確認します。Apache HTTP ServerやOracle Database Client、環境変数など。

Apache HTTP Serverのインストール

Apacheのインストール作業の詳細は以下の記事でまとめています。

NGINX(エンジンエックス)のインストール

NGINX(エンジンエックス)のインストール作業の詳細は以下の記事でまとめています。

MySQLのインストール

MySQLのインストール作業の詳細は以下の記事でまとめています。

WordPressのインストール

WordPressのインストール作業は以下の記事でまとめています。

.bashrc_と.bash_profileの内容を確認

.bashrcと.bash_profileの内容を確認します。

カーネルパラメータを確認

以下のコマンドで確認できるカーネルパラメータを確認します。

# sysctl -a

カーネルパラメータには永続的なものと一時的なものがあります。Red Hatのサポートに不明点は確認するなどの対応が必要です。

cronジョブの確認

定期的に実行するジョブ(コマンド)の設定を確認します。

OS起動時に実行されるコマンド(/etc/rc.localもしくは/etc/rc.d/rc.local)の確認

OS起動時に実行するコマンドの確認を行います。/etc/rc.localは/etc/rc.d/rc.localへのシンボリックリンクです(/etc/rc.local -> rc.d/rc.local)。また、/etc/rc.d/rc.localは実行権限が付与されている必要があります。

# cat /etc/rc.local
# cat /etc/rc.d/rc.local

RHEL9.6のデフォルトでは、/etc/rc.d/rc.localに実行権限がないので、chmod +x /etc/rc.d/rc.localコマンドを実行して実行権限を付与します。

# chmod +x /etc/rc.d/rc.local
タイトルとURLをコピーしました