- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
{{category PCクラスタ}}
*NFSROOTによるディスクレスブート環境の構築
Debian squeeze上にネットワーク経由のディスクレスブート用環境を構築する。
*master node側ファイル
**/etc/hosts
127.0.0.1 localhost
外向きNICのIP hostname.hogehoge.com hostname
192.168.99.1 hostname.mycluster.home hostname
192.168.99.5 ssi5.mycluster.home ssi5
192.168.99.6 ssi6.mycluster.home ssi6
192.168.99.7 ssi7.mycluster.home ssi7
192.168.99.8 ssi8.mycluster.home ssi8
192.168.99.9 ssi9.mycluster.home ssi9
192.168.99.10 ssi10.mycluster.home ssi10
192.168.99.11 ssi11.mycluster.home ssi11
192.168.99.12 ssi12.mycluster.home ssi12
**/etc/fstab
proc /proc proc defaults 0 0
UUID=hogehoge / ext4 errors=remount-ro 0 1
/boot /srv/tftp/boot none bind 0 0
LABEL=OCFS2 /work ocfs2 _netdev 0 0
/bin /NFSROOT/slave/bin none bind 0 0
/usr /NFSROOT/slave/usr none bind 0 0
/sbin /NFSROOT/slave/sbin none bind 0 0
/home /NFSROOT/slave/home none bind 0 0
/lib /NFSROOT/slave/lib none bind 0 0
/opt /NFSROOT/slave/opt none bind 0 0
/root /NFSROOT/slave/root none bind 0 0
**/etc/initramfs-tools/initramfs.conf
MODULES=netboot
BUSYBOX=y
KEYMAP=n
COMPRESS=gzip
BOOT=nfs
DEVICE=
NFSROOT=auto
**/srv/tftp/pxelinux.cfg/default
DEFAULT wheezy
LABEL wheezy
kernel boot/vmlinuz-3.1.0-1-amd64
append initrd=boot/initrd.img-3.1.0-1-slave ip=dhcp root=/dev/nfs nfsroot=192.168.99.1:/NFSROOT/slave rw
**/etc/default/atftpd
USE_INETD=false
OPTIONS="--daemon --port 69 --tftpd-timeout 300 --retry-timeout 5 --mcast-port 1758 --mcast-addr 192.168.99.0-255 --mcast-ttl 1 --maxthread 100 --verbose=5 /srv/tftp"
**/etc/ntp.conf
driftfile /var/lib/ntp/ntp.drift
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
server ntp1.jst.mfeed.ad.jp iburst
server ntp2.jst.mfeed.ad.jp iburst
server ntp3.jst.mfeed.ad.jp iburst
server ntp.ring.gr.jp iburst
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
**/etc/default/isc-dhcp-server
INTERFACES="bond0"
**/etc/dhcp/dhcpd.conf
option dhcp-max-message-size 2048;
use-host-decl-names on;
update-static-leases on;
allow booting;
allow bootp;
ddns-update-style none;
log-facility local7;
subnet 192.168.99.0 netmask 255.255.255.0 {
option routers 192.168.99.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.99.255;
option domain-name "mycluster.home";
option domain-name-servers DNSサーバIP1, DNSサーバIP2;
option ntp-servers ntp1.jst.mfeed.ad.jp, ntp2.jst.mfeed.ad.jp, ntp3.jst.mfeed.ad.jp;
range 192.168.99.5 192.168.99.250;
default-lease-time 600;
max-lease-time 7200;
option nis-domain "blackthunder.nis";
option nis-servers 192.168.99.254;
filename "/srv/tftp/pxelinux.0";
option root-path "/NFSROOT/slave";
next-server 192.168.99.1;
host ssi5 {
hardware ethernet MACアドレス1;
fixed-address 192.168.99.5;
option host-name "ssi5";
}
host ssi6 {
hardware ethernet MACアドレス2;
fixed-address 192.168.99.6;
option host-name "ssi6";
}
host ssi7 {
hardware ethernet MACアドレス3;
fixed-address 192.168.99.7;
option host-name "ssi7";
}
host ssi8 {
hardware ethernet MACアドレス4;
fixed-address 192.168.99.8;
option host-name "ssi8";
}
}
group {
filename "/srv/tftp/pxelinux.0";
server-name "192.168.99.1";
option root-path "/NFSROOT/slave";
next-server 192.168.99.1;
}
**/etc/sysctl.conf
net.ipv4.conf.default.rp_filter=1
net.ipv4.conf.all.rp_filter=1
net.ipv4.ip_forward=1
net.ipv4.conf.all.accept_redirects = 0
**/etc/exports
/NFSROOT/slave 192.168.99.0/24(rw,sync,no_root_squash,no_subtree_check,fsid=0)
**/etc/yp.conf
ypserver 127.0.0.1
**/etc/ypserv.conf
192.168.99. : * : shadow.byname : port
192.168.99. : * : passwd.adjunct.byname : port
* : * : * : none
**/etc/defaults/nis
NISSERVER=master
NISCLIENT=true
YPPWDDIR=/etc
YPCHANGEOK=chsh
NISMASTER=
YPSERVARGS=
YPBINDARGS=-no-dbus
YPPASSWDDARGS=
YPXFRDARGS=
**/var/yp/Makefile
+ ALL = passwd shadow group hosts rpc services netid protocols netgrp
*slave node側ファイル
**/etc/fstab
proc /proc proc defaults 0 0
/dev/nfs / nfs defaults 0 1
none /tmp tmpfs defaults 0 0
none /var/run tmpfs defaults 0 0
none /var/lock tmpfs defaults 0 0
none /var/tmp tmpfs defaults 0 0
LABEL=OCFS2 /work ocfs2 _netdev 0 0
**/etc/hosts
127.0.0.1 localhost
192.168.99.5 ssi5.mycluster.home ssi5
192.168.99.6 ssi6.mycluster.home ssi6
192.168.99.7 ssi7.mycluster.home ssi7
192.168.99.8 ssi8.mycluster.home ssi8
192.168.99.9 ssi9.mycluster.home ssi9
192.168.99.10 ssi10.mycluster.home ssi10
192.168.99.11 ssi11.mycluster.home ssi11
192.168.99.12 ssi12.mycluster.home ssi12
**/etc/resolv.conf
nameserver DNSサーバIP1
nameserver DNSサーバIP2
**/etc/hostname
空にする
**/etc/ntp.conf
driftfile /var/lib/ntp/ntp.drift
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
server 192.168.99.1 iburst
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
**/etc/default/o2cb
master nodeからコピー
**/etc/iscsi/iscsid.conf
master nodeからコピー
**/etc/ocfs2/cluster.conf
master nodeからコピー
*コマンド
sudo apt-get install \
dhcp3-server atftpd nfs-kernel-server \
syslinux debootstrap ntp ntpdate
syslinux debootstrap ntp nis
sudo ne /var/yp/Makefile
sudo ne /etc/default/nis
sudo /usr/lib/yp/ypinit -m
sudo make -C /var/yp
sudo /etc/init.d/nis restart
sudo mkdir -p /NFSROOT
sudo sudo debootstrap squeeze \
/NFSROOT/kerrighed \
http://ring.tains.tohoku.ac.jp/archives/linux/debian/debian/
sudo rm -rf etc/hosts bin/* usr/* sbin/* home/* lib/* opt/* root/*
sudo nano -w /etc/fstab
#以下の行を加える
#/etc/hosts /NFSROOT/kerrighed/etc/hosts none bind 0 0
#/bin /NFSROOT/kerrighed/bin none bind 0 0
#/usr /NFSROOT/kerrighed/usr none bind 0 0
#/sbin /NFSROOT/kerrighed/sbin none bind 0 0
#/home /NFSROOT/kerrighed/home none bind 0 0
#/lib /NFSROOT/kerrighed/lib none bind 0 0
#/opt /NFSROOT/kerrighed/opt none bind 0 0
#/root /NFSROOT/kerrighed/root none bind 0 0
sudo sudo debootstrap wheezy \
/NFSROOT/slave \
http://ftp.jp.debian.org/debian/
sudo chroot /NFSROOT/slave
apt-get install open-iscsi ocfs2-tools ntp ne
sudo rm -rf bin/* usr/* sbin/* home/* lib/* opt/* root/* var/run/* var/lock/* var/tmp/*
sudo ne etc/fstab
sudo ne /etc/fstab
sudo cp /usr/lib/syslinux/pxelinux.0 /srv/tftp/
cd /srv/tftp
sudo mkdir boot
sudo cp /boot/vmlinuz-2.6.30-krg boot/
sudo mount --bind /boot /srv/tftp/boot
sudo ne /etc/initramfs-tools/initramfs.conf
sudo mkinitramfs -o boot/initrd.img-3.1.0-1-slave
sudo mkdir pxelinux.cfg
sudo nano -w pxelinux.cfg/default
#内容は以下
#DEFAULT kerrighed
#LABEL kerrighed
# kernel boot/vmlinuz-2.6.30-krg
# append ip=dhcp root=/dev/nfs session_id=1
sudo nano -w /etc/default/atftpd
#変更点は以下
#USE_INETD=false
#OPTIONS="--daemon --tftpd-timeout 300 --retry-timeout 5 --mcast-port 1758 --mcast-addr 239.239.239.0-255 --mcast-ttl 1 --maxthread 100 --verbose=5 /srv/tftp"
sudo ne pxelinux.cfg/default
sudo ne /etc/default/atftpd
sudo /etc/init.d/atftpd start
sudo nano -w /etc/default/ntpdate
#変更点は以下
#NTPSERVERS="ntp1.jst.mfeed.ad.jp ntp2.jst.mfeed.ad.jp ntp3.jst.mfeed.ad.jp"
sudo ne /etc/default/ntpdate
sudo ne /etc/default/isc-dhcp-server
sudo ne /etc/dhcp/dhcpd.conf
#変更点は以下
#option domain-name-servers 192.168.99.1;
#option ntp-servers ntp1.jst.mfeed.ad.jp, ntp2.jst.mfeed.ad.jp, ntp3.jst.mfeed.ad.jp;
#subnet 192.168.99.0 netmask 255.255.255.0 {
# option routers 192.168.99.1;
# option subnet-mask 255.255.255.0;
# option broadcast-address 192.168.99.255;
# range 192.168.99.5 192.168.99.254;
# send host-name = concat("krgnode", binary-to-ascii(10, 8, ".", substring(leased-address, 3, 1)));
#}
#group {
# filename "/srv/tftp/pxelinux.0";
# server-name "192.168.99.1";
# option root-path "/NFSROOT/kerrighed";
#}
sudo nano -w /etc/exports
#内容は以下
#/NFSROOT/kerrighed *(rw,sync,no_root_squash,no_subtree_check)
sudo ne /etc/sysctl.conf
sudo ne /etc/exports
ypinit -s hostname.mycluster.home