A implantação em lote PXE tem as três vantagens a seguir:
- Escala: instale vários servidores ao mesmo tempo;
- Automação: instalar o sistema, configurar vários serviços;
- Realização remota: nenhum CD, disco U e outras mídias de instalação são necessários.
PXE é uma tecnologia de inicialização de rede desenvolvida pela Intel que funciona no modo Cliente / Servidor, permitindo que os clientes baixem imagens de inicialização de servidores remotos através da rede e carreguem arquivos de instalação ou todo o sistema operacional. Para construir um sistema de rede PXE, os seguintes pré-requisitos devem ser atendidos.
- A placa de rede do cliente suporta o protocolo PXE (chip BOOTROM integrado) e a placa-mãe suporta inicialização de rede.
- Há um servidor DHCP na rede para atribuir endereços automaticamente aos clientes e especificar a localização do arquivo de inicialização.
- O servidor fornece o download do arquivo de imagem de inicialização por meio do TFTP (Trivial File Transfer Protocol).
Processo básico de implantação
- Prepare a fonte de instalação do CentOS7
- Instale e ative os serviços TFTP e FTP
- Fornece kernel Linux, programa de inicialização PXE, etc.
- Instale e habilite o serviço DHCP
- Configurar o menu de inicialização
Planejamento:
um sistema Linux para construir um serviço ------------- 20.0.0.15
Um sistema Linux para teste PXE ------------- aquisição de DHCP
Versão do software: Centos 7.6
A seguir estão as etapas completas para iniciar a instalação:
Construa o serviço primeiro
vi /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
.......
ONBOOT=yes
IPADDR=20.0.0.15
NETMASK=255.255.255.0
GATEWAY=20.0.0.2
DNS1=8.8.8.8
DNS2=114.114.114.114
systemctl restart network ##重启网卡
vi /etc/selinux/config ##关闭核心防火墙
......
SELINUX=disabled
......
systemctl stop firewalld ##关闭防火墙
systemctl disable firewalld ##开机自动关闭防火墙
最小化
A instalação precisa compilar e instalar o yum
yum list --------- Verifique se há instalação do yum
1. Prepare a fonte de instalação do CentOS7
[root@localhost ~]# mkdir -p /var/ftp/centos7
[root@localhost ~]# mount /dev/cdrom /mnt
[root@localhost ~]# cp -rf /mnt/* /var/ftp/centos7
[root@localhost ~]# yum -y install vsftpd
[root@localhost ~]# systemctl start vsftpd
[root@localhost ~]# systemctl enable vsftpd
2. Instale e ative os serviços TFTP e FTP
[root@localhost ~]# yum -y install tftp-server
[root@localhost ~]# vi /etc/xinetd.d/tftp
service tftp
{
......
protocol = udp ###TFTP 采用 UDP 传输协议
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot ###指定 TFTP 根目录
disable = no
......
}
[root@localhost ~]# systemctl start tftp
[root@localhost ~]# systemctl enable tftp
3. Fornece kernel Linux, programa de inicialização PXE, etc.
[root@localhost ~]# cd /mnt/images/pxeboot/ ####切换到挂载目录/mntimages/pxeboot/
[root@localhost pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot/ ###两个文件并将其复制到 tftp 服务的根目录下[root@localhost ~]# yum -y install syslinux
[root@localhost pxeboot]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
4. Instale e ative o serviço DHCP
[root@localhost ~]# yum -y install dhcp
[root@localhost ~]# vi /etc/dhcp/dhcpd.conf
......
subnet 20.0.0.0 netmask 255.255.255.0 {
option routers 20.0.0.15;
option subnet-mask 255.255.255.0;
option domain-name "bdqn.com";
option domain-name-servers 20.0.0.254,202.106.0.20;
default-lease-time 21600;
max-lease-time 43200;
range 20.0.0.100 20.0.0.200;
next-server 20.0.0.15; #####指定 TFTP 服务器的地址
filename "pxelinux.0"; ####指定 PXE 引导程序的文件名
}
[root@localhost ~]# systemctl start dhcpd
[root@localhost ~]# systemctl enable dhcpd
Created symlink from
/etc/systemd/system/multi-user.target.wants/dhcpd.service to
/usr/lib/systemd/system/dhcpd.service.
5. Configure o menu de inicialização
[root@localhost ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@localhost ~]# vi /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 1
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://20.0.0.15/centos7
label linux text
kernel vmlinuz
append text initrd=initrd.img method=ftp://20.0.0.15/centos7
label linux rescue
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://20.0.0.15/centos7
Três entradas de inicialização são definidas no registro de configuração acima, ou seja, instalação gráfica (padrão), instalação de texto e modo de recuperação. Entre eles, prompt é usado para definir se deve aguardar a seleção do usuário; rótulo é usado para definir e separar itens de inicialização; kernel e append são usados para definir parâmetros de inicialização. O número e o conteúdo das entradas do guia são definidos por eles próprios. Por exemplo, apenas uma entrada é necessária para instalação autônoma.
Implementar instalação autônoma do Kickstart
[root@localhost ~]# yum -y install system-config-kickstart
######### Configuração básica ########## Configuração
básica:
- Idioma padrão: Chinês (RP da China) -Chinês (Simplificado)
- Teclado: inglês americano
- Fuso horário: Ásia / Xangai
- Senha root: Abc123
- Senha padrão: Abc123
- Verifique √: Criptografar a senha de root
Configuração avançada:
- Arquitetura de destino: X86, AMD64 ou IntelEm64T
- Verifique √: reiniciar após a instalação
- Desmarque: instalar em modo de texto (o padrão é o modo gráfico)
######### Método de
instalação ########## Método de instalação:
- Verifique √: execute uma instalação limpa
Método de instalação: - Verifique √: FTP
- Servidor FTP: ftp://20.0.0.254
- Diretório FTP: centos
######### Opções do carregador de boot ######
Tipo de instalação:
- Verifique √: instalar novo carregador de inicialização
######### Informações da partição ##########
Na interface "Informações da partição", você precisa planejar o esquema de partição do disco rígido corretamente. Por exemplo, você pode dividir uma partição de 500 MB / boot, partição de 4 GB / home, partição de troca de 2 GB e dividir o espaço restante na partição raiz
/ boot ----- xfs ----- is ----- 500
/ home ----- xfs ----- Sim ----- 4096
swap ----- swap ----- Sim ----- 2048
/ ----- xfs ----- Sim ----- toda a memória restante
### Outras informações ###
Se não houver nenhum requisito especial, basta manter as configurações padrão na interface "Verificar" e na interface "Configuração do display".
#### Depois de instalar o script ####
Verifique √: Use o interpretador: / bin / bash
Digite seu script% post abaixo:
rm -rf /etc/yum.repos.d/*
echo -e'[base]\nname=CentOS7.6\nbaseurl=ftp://20.0.0.15/centos7\nenabled=1\ngpgcheck=1\ngpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7'>/etc/yum.repos.d/centos7.repo
#### Salvar arquivo de resposta automática ####
[root @ localhost ~] # vi /ks.cfg
Corte para o fundo e adicione:
%packages
@^minimal
%end
#### Realize a instalação automática em lote ####
Assim que tiver o arquivo de resposta para a instalação automática, basta colocá-lo no diretório FTP do servidor de instalação PXE e modificar o menu de inicialização apropriadamente para realizar a instalação automática em lote baseada na rede.
1. Habilite o arquivo de resposta automática No servidor de instalação remota PXE, copie o arquivo de resposta criado na seção anterior para o diretório / var / ftp / centos7, para que o cliente possa usar ftp://20.0.0.254/centos7/ks.cfg Acesse e edite o arquivo padrão do menu de inicialização e adicione o parâmetro de inicialização ks para especificar o caminho da URL do arquivo de resposta ks.cfg.
[root@localhost ~]# cp /root/ks.cfg /var/ftp/ks.cfg
[root@localhost ~]# vi /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 0
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://20.0.0.15/centos7 ks=ftp://20.0.0.15/ks.cfg