このドキュメントで説明されているソフトウェアはサポートされなくなったか、または拡張サポートされています。
Oracleでは、現在サポートされているリリースにアップグレードすることをお薦めします。
この項の手順では、Spacewalkサーバーと同じシステムにDHCPサーバーを構成することを前提としています。
CobblerとDHCPを構成して、ネットワーク経由でクライアント・システムを起動できるようにするには:
cobbler-loadersパッケージとdhcpパッケージをインストールします:#
yum install cobbler-loaders dhcpDHCPサービスを管理するようにCobblerを構成するには、
/etc/cobbler/settingsを編集し、manage_dhcp構成を変更します:manage_dhcp: 1
DHCPサーバー構成テンプレート・ファイル
/etc/cobbler/dhcp.templateを編集し、ローカル構成のサブネット構成を変更します。次の例では、pxelinuxブート・ローダー(BIOSベースのPXEクライアントの場合)またはGRUBブート・ローダー(UEFIベースのPXEクライアントの場合)を選択する方法を示します。
# ****************************************************************** # Cobbler managed dhcpd.conf file # # generated from cobbler dhcp.conf template ($date) # Do NOT make changes to /etc/dhcpd.conf. Instead, make your changes # in /etc/cobbler/dhcp.template, as /etc/dhcpd.conf will be # overwritten. # # ****************************************************************** ddns-update-style interim; allow booting; allow bootp; ignore client-updates; set vendorclass = option vendor-class-identifier; option pxe-system-type code 93 = unsigned integer 16; set pxetype = option pxe-system-type; option domain-name "mydom.com"; subnet 192.168.1..0 netmask 255.255.255.0 { option domain-name-servers 192.168.1.1; option broadcast-address 192.168.1.255; option routers 192.168.1.254; default-lease-time 14400; max-lease-time 28800; pool { range 192.168.1.101 192.168.1.200; } } #for dhcp_tag in $dhcp_tags.keys(): ## group could be subnet if your dhcp tags line up with your subnets ## or really any valid dhcpd.conf construct ... if you only use the ## default dhcp tag in cobbler, the group block can be deleted for a ## flat configuration # group for Cobbler DHCP tag: $dhcp_tag group { #for mac in $dhcp_tags[$dhcp_tag].keys(): #set iface = $dhcp_tags[$dhcp_tag][$mac] host $iface.name { hardware ethernet $mac; #if $iface.ip_address: fixed-address $iface.ip_address; #end if #if $iface.hostname: option host-name "$iface.hostname"; #end if #if $iface.netmask: option subnet-mask $iface.netmask; #end if #if $iface.gateway: option routers $iface.gateway; #end if if substring(vendorclass, 0, 9)="PXEClient" { if pxetype=00:06 or pxetype=00:07 { filename "/grub/grub.efi"; } else { filename "/pxelinux.0"; } } ## Cobbler defaults to $next_server, but some users ## may like to use $iface.system.server for proxied setups next-server $next_server; ## next-server $iface.next_server; } #end for } #end forこの例では、192.168.1/24サブネット上の192.168.1.101〜192.168.1.200の範囲に一般的に使用可能なIPアドレスのプールも構成しています。 このプール内のシステムは、PXEを使用してブートしません。
/etc/cobbler/dhcp.template内のコメントまたはコメントアウトされたDHCPディレクティブはすべて、Cobblerにより解釈されないように、先頭に二重ハッシュ(##)が付いています。Spacewalkは、TFTPを使用して
/var/lib/tftpbootディレクトリからブート・ローダー構成ファイルを提供するようにCobblerを構成します。 これらのファイルの形式の詳細については、4.5.3項、「ブート・ローダー構成ファイルについて」を参照してください。DHCPでiPXEクライアントのネットワーク・ブートをサポートする場合は、4.5.4項、「iPXEクライアントをサポートするためのDHCPの構成」を参照してください。
システムでSELinuxがenforcingモードで有効になっている場合は、Cobbler操作用にSELinuxを構成します。
httpdサービスがCobblerのプロキシとして機能することを許可します。#
setsebool -P httpd_can_network_connect=1/var/lib/tftpbootおよび/var/www/cobbler/imagesディレクトリ階層でpublic_content_tファイル・タイプを設定します。#
/usr/sbin/semanage fcontext -a -t public_content_t "/var/lib/tftpboot/.*"#/usr/sbin/semanage fcontext -a -t public_content_t "/var/www/cobbler/images/.*"注semanageコマンドは、
policycoreutils-pythonパッケージにより提供されます。
cobblerdサービスを再起動します:#
service cobblerd restarthttpdサービスを開始し、再起動後に起動するように構成します。#
service httpd start#chkconfig httpd on注/etc/cobbler/dhcp.templateに変更を加えた場合は、cobbler syncコマンドを実行してください。/etc/cobbler/settingsに変更を加えた場合は、cobblerdサービスを再起動してからcobbler syncコマンドを実行してください。UEFIベースのPXEクライアントのブートをサポートするには、
/boot/efi/EFI/redhat/grub.efiを/var/lib/tftpboot/grubにコピーします。#
cp /boot/efi/EFI/redhat/grub.efi /var/lib/tftpboot/grubDHCPリクエストによるアクセスを許可するようにファイアウォールを構成します。
たとえば、Oracle Linux 6の場合:
#
iptables -I INPUT -i eth1 -p udp --dport 67:68 --sport 67:68 -j ACCEPT#service iptables saveこの例では、サーバーはインタフェース
eth1でリクエストを受信することを予期します。たとえば、Oracle Linux 7の場合:
#
firewall-cmd --permanent --zone=public --remove-interface=enp0s3#firewall-cmd --permanent --zone=internal --add-interface=enp0s3#firewall-cmd --permanent --zone=internal --add-port=67/udp#firewall-cmd --permanent --zone=internal --add-port=68/udp#firewall-cmd --reloadこの例では、サーバーは
internalゾーンのインタフェースenp0s3でリクエストを受信する予定です。

