debian10配置FAI

一、实验环境

#实验环境为debian10.2-64位

PXE的工作过程:

  1. PXE Client 从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP;
  2. DHCP 服务器返回分配给客户机的IP 以及PXE文件的放置位置(该文件一般是放在一台TFTP服务器上) ;
  3. PXE Client 向本网络中的TFTP服务器索取pxelinux.0 文件;
  4. PXE Client 取得pxelinux.0 文件后之执行该文件;
  5. 根据pxelinux.0 的执行结果,通过TFTP服务器加载内核和文件系统 :
  6. 进入安装画面, 此时可以通过选择HTTP、FTP、NFS 方式之一进行安装;

二、网络配置

#虚拟机添加了两块网卡,一块默认nat模式,可以直接访问Internet;另一块设置成LAN区段t模式,模拟成内网环境,通过nat访问Internet,以保证PXE客户机可以正常从网络源下载软件包。

1、eth0设置为VMnet的nat模式(默认即可访问外网)

2、eth1设置为LAN区段模式(客户端网卡也设为LAN区段)


#如果服务器是两块网卡,eth0接外网,eth1接内网的话,那么想通过内网来安装系统就需要做NAT,这样通过内网PXE上来的客户机才可以正常从网络源下载包,命令如下:

iptables -t nat -A POSTROUTING -o eth0 -s 内网地址段(例如:10.1.1.0/24) -j SNAT --to 外网网卡IP地址 --("-o eth0" 此处为外网网卡,如果只有两块网卡,该参数也可省略)

三、FAI Server的配置

1、配置network

vim /etc/network/interfaces

auto eth0
iface eth0 inet static
address 192.168.206.134
netmask 255.255.255.0
gateway 192.168.206.2  //此为VMnet8 下的网关

auto eth1
iface eth1 inet static
address 192.168.205.210
netmask 255.255.255.0

2、开启转发

echo "1" > /proc/sys/net/ipv4/ip_forward

sysctl -p

3、修改网络源

a.先修改系统使用的源,如果有本地ISO镜像源将其注释掉。

vim /etc/apt/sources.list

deb http://mirrors.163.com/debian buster main contrib non-free

b.更新网络源

apt-get update

4、安装fai-quickstart

apt-get install fai-quickstart -y

apt-get会将FAI Server所需的相关服务一并安装,比如DHCP、TFTP、NFS

apt-get install qemu-user-static -y

qeme-user-static如果未安装,需要安装上

5、配置DHCP

vim /etc/dhcp/dhcpd.conf

next-server 192.168.205.210;
ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
server-name "192.168.205.210";
filename "pxelinux.0";
#filename "/boot/pxeboot";
allow booting;
allow bootp;
include "/etc/dhcp/vlan100.conf";

vim /etc/dhcp/vlan100.conf

subnet 192.168.205.0 netmask 255.255.255.0 {
    option routers 192.168.205.210;
    range 192.168.205.10 192.168.205.250;
    option subnet-mask 255.255.255.0;
    allow booting;
    allow bootp;
}

6、配置tftpd-hpa

vim /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp/fai"
TFTP_ADDRESS="192.168.205.210:69" --修改此行
TFTP_OPTIONS="--secure"

7、配置fai.conf

vim /etc/fai/fai.conf

LOGUSER=fai --开启此行
FAI_CONFIG_SRC=nfs://192.168.205.210/srv/fai/config --修改此行

8、配置nfsroot.conf

vim /etc/fai/nfsroot.conf

FAI_DEBOOTSTRAP="buster http://mirrors.163.com/debian" --修改此行
FAI_ROOTPW='$1$kBnWcO.E$djxB128U7dMkrltJHPf6d1'

NFSROOT=/srv/fai/nfsroot
TFTPROOT=/srv/tftp/fai
NFSROOT_HOOKS=/etc/fai/nfsroot-hooks/
FAI_DEBOOTSTRAP_OPTS="--include=aptitude --arch amd64 --exclude=dhcp-client,info" --修改此行(“--include=aptitude”需要保留,否则初始化会失败)
NFSROOT_ETC_HOSTS="192.168.205.210" --添加此行

FAI_CONFIGDIR=/srv/fai/config

9、修改fai网络源

c.拷贝sources.list替换fai的sources.list

cp /etc/apt/sources.list /etc/fai/apt/sources.list

10、初始化FAI

fai-setup -v

初始化需要一些时间,出现下面的信息就表示初始化成功了。如果中途卡死,重新初始化的时候需要加上参数“f”即“fai-setup -vf”

11、生成default

a.此时/srv/fai/config下没有具体的配置文件,将模板复制过来

cp -a /usr/share/doc/fai-doc/examples/simple/* /srv/fai/config

b.生成default

fai-chboot -IBv -u nfs://192.168.205.210/srv/fai/config default --不要使用fai-chboot -IFv default来生成,可能会出现无法连接nfs的问题。

12、配置exports

vim /etc/exports

/srv/fai/config 192.168.205.210/24(async,ro,no_subtree_check) --初始化生成的exports会将eth0,也就是桥接到物理网卡的地址作为nfs服务器的地址,需要手动修改。
/srv/fai/nfsroot 192.168.205.210/24(async,ro,no_subtree_check,no_root_squash)

13、重启相关服务器

/etc/init.d/networking restart

/etc/init.d/isc-dhcp-server restart

/etc/init.d/tftpd-hpa restart

/etc/init.d/rpcbind restart

/etc/init.d/nfs-kernel-server restart

/etc/init.d/nfs-common restart

14、客户机使用PXE启动测试(客户机的网卡也要选择LAN段)

你可能感兴趣的:(debian,运维,linux)