前回はこちら。
1. 事前準備
Oracle Linux 6.3 をインストールしたサーバを用意しておきます。
※これは、VortualBox 上の VM でも OK です。
下記のIPアドレスを設定をしておくことにします。
- eth0: 192.168.56.110 → このサーバへの通常アクセス用。
- eth1: 192.168.10.110 → Kickstart 用の NW に接続しておく。
2. DVD イメージのマウント
今回は、Oracle Linux 6.3 のインストールメディア (DVD イメージ) に入っている RPM を使用します。
[root@ks1 ~]# mount /dev/cdrom /media
mount: ブロックデバイス /dev/sr0 は書き込み禁止です、読込み専用でマウントします
[root@ks1 ~]# ls /media/
EFI README-en.html RPM-GPG-KEY eula.en_US
EULA RELEASE-NOTES-en RPM-GPG-KEY-oracle eula.py
GPL RELEASE-NOTES-en.html ResilientStorage images
HighAvailability RELEASE-NOTES-x86-en ScalableFileSystem isolinux
LoadBalancer RELEASE-NOTES-x86-en.html Server media.repo
Packages RELEASE-NOTES-x86_64-en TRANS.TBL repodata
README-en RELEASE-NOTES-x86_64-en.html UEK2 supportinfo
3. YUM リポジトリの設定
yum コマンドが、DVD にある RPM を探してインストールするように設定します。
デフォルトで入っていた Oracle の パブリック Yum リポジトリの設定は、
今回は使用しないので参照しないようにしています。
[root@ks1 ~]# mv /etc/yum.repos.d/public-yum-ol6.repo /etc/yum.repos.d/public-yum-ol6.repo_bk
[root@ks1 ~]# vi /etc/yum.repos.d/dvd.repo
(下記を記載)
[OEL63-dvd-Server]
name=OEL63-dvd-Server
baseurl=file:///media/Server
gpgcheck=0
enabled=1
DVD を参照できるようになったことを確認しておきます。
[root@ks1 ~]# yum repolist
Loaded plugins: refresh-packagekit, security
OEL63-dvd-Server | 3.7 kB 00:00 ...
OEL63-dvd-Server/primary_db | 2.9 MB 00:00 ...
repo id repo name status
OEL63-dvd-Server OEL63-dvd-Server 3,563
4. PRM のインストール
Kickstart サーバとして、下記の RPM パッケージをインストールします。
今回使用する RPM パッケージは、すべてインストール DVD に入っています。
※ tftp は、tftp-server の動作確認のためだけに使用します。
[root@ks1 ~]# yum list dhcp syslinux tftp-server tftp httpd
Loaded plugins: refresh-packagekit, security
Installed Packages
httpd.x86_64 2.2.15-15.0.1.el6_2.1 @anaconda-OracleLinuxServer-201206261930.x86_64/6.3
Available Packages
dhcp.x86_64 12:4.1.1-31.P1.0.1.el6 OEL63-dvd-Server
syslinux.x86_64 4.02-7.el6 OEL63-dvd-Server
tftp.x86_64 0.49-7.el6 OEL63-dvd-Server
tftp-server.x86_64 0.49-7.el6 OEL63-dvd-Server
5. インストール実施
RPM を yum コマンドでインストールします。
「-y」 をつけて、あらかじめインストール中の確認メッセージに yes と答えています。
※途中経過は、長いので小さくしています・・・
[root@ks1 ~]# yum install -y dhcp syslinux tftp-server tftp httpd
Loaded plugins: refresh-packagekit, security
Setting up Install Process
Package httpd-2.2.15-15.0.1.el6_2.1.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package dhcp.x86_64 12:4.1.1-31.P1.0.1.el6 will be installed
---> Package syslinux.x86_64 0:4.02-7.el6 will be installed
---> Package tftp.x86_64 0:0.49-7.el6 will be installed
---> Package tftp-server.x86_64 0:0.49-7.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
====================================================================================
Package Arch Version Repository Size
====================================================================================
Installing:
dhcp x86_64 12:4.1.1-31.P1.0.1.el6 OEL63-dvd-Server 816 k
syslinux x86_64 4.02-7.el6 OEL63-dvd-Server 858 k
tftp x86_64 0.49-7.el6 OEL63-dvd-Server 31 k
tftp-server x86_64 0.49-7.el6 OEL63-dvd-Server 39 k
Transaction Summary
====================================================================================
Install 4 Package(s)
Total download size: 1.7 M
Installed size: 4.0 M
Downloading Packages:
------------------------------------------------------------------------------------
Total 7.0 MB/s | 1.7 MB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : tftp-0.49-7.el6.x86_64 1/4
Installing : 12:dhcp-4.1.1-31.P1.0.1.el6.x86_64 2/4
Installing : tftp-server-0.49-7.el6.x86_64 3/4
Installing : syslinux-4.02-7.el6.x86_64 4/4
Verifying : syslinux-4.02-7.el6.x86_64 1/4
Verifying : tftp-server-0.49-7.el6.x86_64 2/4
Verifying : 12:dhcp-4.1.1-31.P1.0.1.el6.x86_64 3/4
Verifying : tftp-0.49-7.el6.x86_64 4/4
Installed:
dhcp.x86_64 12:4.1.1-31.P1.0.1.el6 syslinux.x86_64 0:4.02-7.el6
tftp.x86_64 0:0.49-7.el6 tftp-server.x86_64 0:0.49-7.el6
Complete!
6. DVD イメージをアンマウントしておきます。
[root@ks1 ~]# umount /media/
7. DHCP サーバの設定と起動
DHCP で自動設定する IP アドレスは、
PXE ブートの起動イメージを読み込むネットワークセグメントのものです。
今回は、192.168.10.0/24 の IP アドレスを設定しています。
next-server は、PXE ブートで使用するファイルをもつ TFTP サーバです。
たいてい DHCP サーバと同じサーバで、今回もこのサーバ自身にしました。
filename には、PXE ブートで使用するファイル名「pxelinux.0」を指定します。
これが TFTP サーバから取得するファイルで、
サーバ起動で使用するブートローダと呼ばれるファイルです。
[root@ks1 ~]# vi /etc/dhcp/dhcpd.conf
(下記を記載)
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.1 192.168.10.9;
next-server 192.168.10.110;
filename "pxelinux.0";
}
DHCP サーバの自動起動の設定を変更しておきます。
[root@ks1 ~]# chkconfig --list dhcpd
dhcpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@ks1 ~]# chkconfig dhcpd on ★DHCP自動起動ON
[root@ks1 ~]# chkconfig --list dhcpd
dhcpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
DHCP サーバを起動します。
[root@ks1 ~]# service dhcpd start
dhcpd を起動中: [ OK ]
[root@ks1 ~]# ps ax | grep dhcp
1921 ? Ss 0:00 /usr/sbin/dhcpd -user dhcpd -group dhcpd
1965 pts/0 S+ 0:00 grep dhcp
8. TFTP サーバの設定と起動
Oracle Linux 6.x の TFTP サーバは、デフォルトでは xinetd で管理されています。
xinetd の設定ファイルを編集して、tftp サービスを有効化します。
TFTP のファイル格納ディレクトリはデフォルトのまま(/var/lib/tftpboot)です。
[root@ks1 ~]# vi /etc/xinetd.d/tftp
server_args = -s /var/lib/tftpboot
disable = yes
↓(編集)
server_args = -s /var/lib/tftpboot
disable = no ★変更する
TFTP サーバを有効化するため、xinetd サービスを再起動します。
[root@ks1 ~]# chkconfig --list xinetd
xinetd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
[root@ks1 ~]# chkconfig --list tftp
tftp on ★「on」になっているが再起動するまで有効ではない
[root@ks1 ~]# service xinetd restart
xinetd を停止中: [ OK ]
xinetd を起動中: [ OK ]
9. PXE ブート用ファイルを配置
syslinux の RPM に含まれる PXE ブート用のファイルを
TFTP サーバのディレクトリに配置します。
[root@ks1 ~]# cp -p /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@ks1 ~]# cp -p /usr/share/syslinux/menu.c32 /var/lib/tftpboot/
[root@ks1 ~]# cp -p /usr/share/syslinux/chain.c32 /var/lib/tftpboot/
TFTP サーバからファイルを get できることを確認しておきます。
[root@ks1 ~]# mkdir work
[root@ks1 ~]# cd work/[root@ks1 work]# ls[root@ks1 work]# tftp -4 192.168.10.110 -c get pxelinux.0[root@ks1 work]# ls -l合計 28-rw-r--r--. 1 root root 26828 1月 6 08:10 2013 pxelinux.0
10. PXE ブート用の設定ファイル作成
PXE ブートをした時の起動メニューになるファイルを記載します。
今回は、メニューを2つ作ってあります。
- 「 1. Oracle VM Server 2.2.2 」
→ OVS2.2.2をインストールします。 - 「 2. Local boot [on-timeout Default] 」
→ インストーラを起動せず、サーバのローカルディスクからOSを起動します。
「/ovs222/vmlinuz」「/ovs222/initrd.img」「http://192.168.10.110/ks/ovs222_ks.cfg」
といったファイルは、まだ準備できていませんが記載しておきます。
[root@ks1 ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@ks1 ~]# vi /var/lib/tftpboot/pxelinux.cfg/default
(下記を記載)
DEFAULT menu.c32
PROMPT 0
TIMEOUT 200
ONTIMEOUT LOCAL
MENU TITLE Oracle VM Server Install Menu
LABEL OVS222
MENU LABEL ^1. Oracle VM Server 2.2.2
MENU DEFAULT
KERNEL /ovs222/vmlinuz
APPEND initrd=/ovs222/initrd.img ks=http://192.168.10.110/ks/ovs222_ks.cfg ksdevice=eth0
LABEL LOCAL
MENU LABEL ^2. Local boot [on-timeout Default]
KERNEL chain.c32
APPEND hd0
11. ファイアウォールの無効化
Kickstart サーバのファイアウォールはすべて無効にしておきます。
(お試し環境なので)
(お試し環境なので)
[root@ks1 work]# chkconfig --list iptables
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@ks1 work]# chkconfig iptables off ★FWの自動起動OFF
[root@ks1 work]# chkconfig --list iptables
iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@ks1 work]# service iptables stop ★FW停止
iptables: ファイアウォールルールを消去中: [ OK ]
iptables: チェインをポリシー ACCEPT へ設定中filter [ OK ]
iptables: モジュールを取り外し中: [ OK ]
以上、まずはKickstart用サーバの構築でした。
つづく
0 件のコメント:
コメントを投稿