第 9 章 FIBRE CHANNEL OVER ETHERNET の設定
15.3. ディスクレスクライアントの DHCP サーバーの設定
この手順では、ディスクレスシステムに DHCP を設定する方法を説明します。
前提条件 前提条件
必要なパッケージをインストールしている。「リモートディスクレスシステム用環境の準 備」の前提条件を参照してください。
tftp を設定している。「ディスクレスクライアントの tftp サービスの設定」を参照してくださ
い。
手順 手順
1. 以下の設定を /etc/dhcp/dhcpd.conf に追加して、DHCP サーバーを設定し、PXE ブートを有
1. 以下の設定を /etc/dhcp/dhcpd.conf に追加して、DHCP サーバーを設定し、PXE ブートを有 効にします。
allow booting;
allow bootp;
subnet 192.168.205.0 netmask 255.255.255.0 { pool
{
range 192.168.205.10 192.168.205.25;
}
option subnet-mask 255.255.255.0;
option routers 192.168.205.1;
}
class "pxeclients" {
match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
next-server server-ip;
filename "pxelinux.0";
}
この設定は UEFI からは起動しません。「UEFI ベースのクライアント向けに TFTP サーバーの 設定」を参照してください。また、/etc/dhcp/dhcpd.conf はサンプルファイルであることに注 意してください。
注記 注記
libvirt 仮想マシンがディスクレスクライアントとして使用されると、libvirt は
DHCP サービスを提供し、スタンドアロン DHCP サーバーは使用されません。
このような状況では、libvirt ネットワーク設定 virsh net-edit の bootp file='filename' オプションで、ネットワークブートを有効にする必要がありま す。
2. 次のコマンドを実行して、dhcpd.service を有効にします。
# systemctl enable --now dhcpd.service
15.4. ディスクレスクライアントのエクスポートしたファイルシステムの設
定
この手順では、ディスクレスクライアントのエクスポートしたファイルシステムを設定する方法を説明 します。
前提条件 前提条件
必要なパッケージをインストールしている。「リモートディスクレスシステム用環境の準 備」の前提条件を参照してください。
tftp を設定している。「ディスクレスクライアントの tftp サービスの設定」を参照してくださ
い。
DHCP を設定している。「ディスクレスクライアントの DHCP サーバーの設定」を参照してく
ださい。
手順 手順
1. /etc/exports にその root ディレクトリーを追加して、root ディレクトリーをエクスポートする
ように NFS サーバーを設定します。手順は、「NFS サーバーの設定」を参照してください。
2. ディスクレスクライアントに完全に対応できるようにするには、root ディレクトリーには Red
Hat Enterprise Linux の完全なインストールが含まれている必要があります。新しいベースシス
テムをインストールするか、または既存のインストールのクローンを作成できます。
Red Hat Enterprise Linux をエクスポートした場所にインストールするには、--installroot オプションを指定して yum ユーティリティーを使用します。
# yum install @Base kernel dracut-network nfs-utils \ --installroot=exported-root-directory --releasever=/
実行中のシステムで同期するには、rsync ユーティリティーを使用します。
# rsync -a -e ssh --exclude='/proc/' --exclude='/sys/' \ example.com:/exported-root-directory
hostname.com を、rsync ユーティリティーを介して同期する実行中のシステムのホ スト名に置き換えます。
exported-root-directory を、エクスポートしたファイルシステムへのパスに置き換え ます。
このオプションには、実行中の別のシステムが必要です。これは、このコマンドでサー バーにクローンを作成します。
エクスポートするファイルシステムは、ディスクレスクライアントが使用できるようにする前に追加で 設定する必要があります。空き領域が足りない場合は、次の手順を実行します。
ファイルシステムの設定 ファイルシステムの設定
1. ディスクレスクライアントが使用するカーネル (vmlinuz-kernel-version) を選択し、tftp の
boot ディレクトリーにコピーします。
# cp /exported-root-directory/boot/vmlinuz-kernel-version /var/lib/tftpboot/
2. NFS サポートで initrd (つまり initramfs-kernel-version.img) を作成します。
# dracut --add nfs initramfs-kernel-version.img kernel-version 3. 次のコマンドで initrd のファイル権限を 644 に変更します。
# chmod 644 /exported-root-directory/boot/initramfs-<kernel-version>.img
警告 警告
initrd のファイルパーミッションを変更しないと、pxelinux.0 ブートロー ダーが「file not found」エラーで失敗します。
4. 作成した initramfs-kernel-version.img を tftp の boot ディレクトリーにコピーします。
# cp /exported-root-directory/boot/initramfs-kernel-version.img /var/lib/tftpboot/
5. /var/lib/tftpboot/ ディレクトリーに initrd とカーネルを使用するように、デフォルトのブート 設定を編集します。この設定は、エクスポートしたファイルシステム
(/exported-root-directory) を読み書きとしてマウントするよう、ディスクレスクライアントの root に指示を出 します。/var/lib/tftpboot/pxelinux.cfg/default ファイルに以下の設定を追加します。
default rhel8 label rhel8
kernel vmlinuz-kernel-version
append initrd=initramfs-kernel-version.img root=nfs:server-ip:/exported-root-directory rw server-ip を、tftp サービスと DHCP サービスが置かれているホストマシンの IP アドレスに置 き換えます。
6. 必要に応じて、/var/lib/tftpboot/pxelinux.cfg/default ファイルで以下の設定を使用して、シス テムを読み取り専用読み取り専用形式でマウントできます。
default rhel8 label rhel8
kernel vmlinuz-kernel-version
append initrd=initramfs-kernel-version.img root=nfs:server-ip:/exported-root-directory ro
7. NFS サーバーを再起動します。
これで、NFS 共有がディスクレスクライアントにエクスポートできるようになりました。これらのクラ イアントは、PXE 経由でネットワーク経由で起動できます。
15.5. リモートディスクレスシステムの再設定
場合によってはシステムの再設定が必要になる場合があります。以下の手順は、ユーザーがパスワード を変更する方法、システムにソフトウェアをインストールする方法、およびシステムを読み取り専用
モードの /usr に分割する方法、読み取りと書き込みモードの /var に説明する方法を示しています。
前提条件 前提条件
no_root_squash オプションは、エクスポートしたファイルシステムで有効にしている。
手順 手順
1. ユーザーパスワードを変更するには、以下の手順に従います。
コマンドラインを /exported/root/directory に変更します。
# chroot /exported/root/directory /bin/bash 必要なユーザーのパスワードを変更します。
# passwd <username>
<username> を、パスワードを変更する必要がある実際のユーザーに置き換えます。
コマンドラインを終了します。
# exit
2. リモートのディスクレスシステムにソフトウェアをインストールするには、次のコマンドを使 用します。
# yum install <package> --installroot=/exported/root/directory --releasever=/ --config /etc/dnf/dnf.conf --setopt=reposdir=/etc/yum.repos.d/
<package> を、インストールする実際のパッケージに置き換えます。
3. リモートディスクレスシステムを /usr および /var に分割し、別々のエクスポートを設定する 必要があります。詳細は、「NFS サーバーの設定」を参照してください。
15.6. リモートディスクレスシステムの読み込みにおける最も一般的な問題
以下のセクションでは、ディスクレスクライアントでリモートディスクレスシステムの読み込み時の問 題と、その解決可能な解決策を説明します。
15.6.1. クライアントが IP アドレスを取得しない
この問題のトラブルシューティングを行うには、次を行います。
1. DHCP サービスがサーバーで有効になっているかどうかを確認します。
dhcp.service が実行しているかどうかを確認します。
# systemctl status dhcpd.service
dhcp.service がアクティブでない場合は、有効にして起動する必要があります。
# systemctl enable dhcpd.service
# systemctl start dhcpd.service
ディスクレスクライアントを再起動します。
2. それでも問題が続く場合は、サーバーで DHCP 設定ファイル /etc/dhcp/dhcpd.conf を確認し ます。詳細は「ディスクレスクライアントの DHCP サーバーの設定」を参照してください。
3. ファイアウォールポートが開いているかどうかを確認します。
tftp.service がアクティブなサービスに記載されているかどうかを確認します。
# firewall-cmd --get-active-zones
# firewall-cmd --info-zone=public
tftp.service がアクティブなサービスに記載されていない場合は、一覧に追加します。
# firewall-cmd --add-service=tftp
nfs.service がアクティブなサービスに記載されているかどうかを確認します。
# firewall-cmd --get-active-zones
# firewall-cmd --info-zone=public
nfs.service がアクティブなサービスに記載されていない場合は、これを一覧に追加しま
す。
# firewall-cmd --add-service=nfs
15.6.2. リモートディスクレスシステムの起動時に、ファイルは使用できない
この問題を解決するには、以下を行います。
1. ファイルが有効であるかどうかを確認します。サーバーの場所が /var/lib/tftpboot/ です。
2. ファイルが導入される場合は、その権限を確認します。
# chmod 644 pxelinux.0
3. ファイアウォールポートが開いているかどうかを確認します。
15.6.3. カーネル /initrd の読み込み時に、システムの起動に失敗した
この問題を解決するには、以下を行います。
1. サーバーで NFS サービスが有効になっているかどうかを確認します。
nfs.service が実行中かどうかを確認します。
# systemctl status nfs.service
nfs.service が非アクティブの場合は、有効にして起動する必要があります。
# systemctl enable nfs.service
# systemctl start nfs.service
2. pxelinux.cfg でパラメーターが正しいかどうかを確認します。詳細は「ディスクレスクライア ントのエクスポートしたファイルシステムの設定」を参照してください。
3. ファイアウォールポートが開いているかどうかを確認します。
第 16 章 RAID の管理
この章では、RAID (Redundant Array of Independent Disks) を説明します。ユーザーが RAID を使用し て、複数のドライブにデータを保存できます。また、ドライブに障害が発生した場合にデータ損失を回 避するのに役立ちます。