一种基于ARM平台PXEServer大量部署Linux方法与流程

文档序号:12491614阅读:3823来源:国知局

本发明涉及ARM服务器搭建技术领域,具体涉及一种基于ARM平台PXE Server大量部署Linux方法。



背景技术:

ARM经过早几年在服务器芯片行业的挫折后,推出高性能的64位架构,迎合了目前在服务器芯片行业普遍使用64位架构的需求,ARM架构也向来以低功耗著称,因此业界对于将ARM架构引入服务器行业一向都有很强的意愿。

目前实际应用中的是基于x86的PXE server部署linux方法,针对ARM服务器部分暂时没有简单可行的方法来实现批量性linux部署。



技术实现要素:

本发明要解决的技术问题是:本发明针对以上问题,提供一种基于ARM平台PXE Server大量部署Linux方法。针对ARM服务器实现linux部署安装时无需进行PXE选单,机器开机后无需再输入任何参数,并进行相关的一些linux系统配置操作,完全实现自动安装。

本发明所采用的技术方案为:

一种基于ARM平台PXE Server大量部署Linux方法,所述方法基于redhat 64bits OS,通过部署PXE server,使用CentOS针对ARM发布的镜像来对ARM服务器进行linux系统的大量部署。

CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。

所述方法操作步骤如下:

1)安装redhat 64bits OS,并进行PXE server搭建;

2)将PXE server与交换机/路由器进行连接,同时将ARM服务器网口与交换机/路由器进行连接;

3)将ARM服务器开机打开网路启动选项,将会自动进行Linux系统安装部署。

所述PXE server搭建过程如下:

1)PXE server网络环境配置;

2)在PXE server上进行DHCP Server/TFTP Server/FTP server/https server的安装及配置;

3)拷贝Centos系统文件;

4)拷贝EFI文件及PXE boot image至tftpboot目录;

5)配置PXE menu文件,编辑/tftpboot/EFI/BOOT/grub.cfg;

6)配置ks.cfg文件,编辑ks.cfg文件并将ks.cfg文件存放于/var/ftp目录下,作为Linux部署的配置文件。

DHCP Server:指在一个特定的网络中管理DHCP标准的一台计算机。DHCP服务器的职责是当工作站登录进来时分配IP地址,并且确保分配给每个工作站的IP地址不同,DHCP服务器极大地简化了以前需要用手工来完成的一些网络管理任务。

TFTP服务器是一个多线程TFTP服务器,允许任何数量的客户端连接同时进行。它支持tsize,blksize,和间隔的选择,PXE启动,并可以运行独立的或以daemon方式运行的。端口范围可以指定工作跨越防火墙。还有一个单端口版本,主要是适应某些环境下无法打开多个端口的情况。

FTP Server服务器是一种专供其他电脑检索文件和存储的特殊电脑。文件服务器通常比一般的个人电脑拥有更大的存储容量,并具有一些其他的功能,如磁盘镜像、多个网络接口卡、热备援多电源供应器。Red Hat是一个开源技术厂家,其产品Red Hat Linux也是全世界应用最广泛的Linux。

PXE server网络环境配置中,设置Selinux:disabled,Firewall:disabled,即关闭Selinux和Firewall。

SELinux是2.6版本的Linux内核中提供的强制访问控制(MAC)系统。对于目前可用的Linux安全模块来说,SELinux是功能最全面,而且测试最充分的,它是在20年的MAC研究基础上建立的。SELinux在类型强制服务器中合并了多级安全性或一种可选的多类策略,并采用了基于角色的访问控制概念。

本发明的有益效果为:

本发明涵盖了较详细的PXE server搭建及相关配置文件的说明方法,弥补了目前在ARM平台上系统批量性部署的空白,大大减少了人工检测操作及干预的时间,实用性强,大大节约了时间成本。

附图说明

图1为PXE server网络环境配置图。

具体实施方式

根据说明书附图,结合具体实施方式对本发明进一步说明:

实施例1:

一种基于ARM平台PXE Server大量部署Linux方法,所述方法基于redhat7.1 64bits OS,通过部署PXE server,使用CentOS针对ARM发布的镜像来对ARM服务器进行linux系统的大量部署。

实施例2

如图1所示,在实施例1的基础,本实施例所述方法操作步骤如下:

1)安装redhat7.1 OS,并进行PXE server搭建;

2)将PXE server与交换机/路由器进行连接,同时将ARM服务器网口与交换机/路由器进行连接;

3)将ARM服务器开机打开网路启动选项,将会自动进行Linux系统安装部署。

实施例3

在实施例2的基础,本实施例所述PXE server搭建过程如下:

1)PXE server网络环境配置;

配置PXE Server IP 192.168.100.2

2)在PXE server上进行DHCP Server/TFTP Server/FTP server/https server的安装及配置;

1>DHCP Server

配置/etc/dhcp/dhcpd.conf如下:

ddns-update-style interim;

ignore client-updates;

authoritative;

allow booting;

allow bootp;

allow unknown-clients;

#A slightly different configuration for an internal subnet.

subnet 192.168.100.0 netmask 255.255.255.0{

range 192.168.100.100 192.168.100.125; #设置server IP address pool

default-lease-time 6000;

max-lease-time 72000;

next-server 192.168.100.2; #设置TFTP server ip

filename"EFI/BOOT/grubaa64.efi";

}

systemctl start dhcpd.service后netstat-nupl|grep dhcpd确认存在dhcpd服务确保DHCP服务正常开启

2>TFTP server

mkdir-p/tftpboot

chmod 777/tftpboot/ #设置tftpboot文件并更改权限777

配置/etc/xinetd.d/tftp

service tftp

{

socket_type=dgram

protocol=udp

wait=yes

user=root

server=/usr/sbin/in.tftpd

server_args=-s/tftpboot

disable=no

per_source=11

cps=100 2

flags=IPv4

}

systemctl start tftp.service后使用netstat–npul确认tftp服务正常开启

3>FTP Server

配置/etc/vsftpd/vsftpd.conf如下:

anonymous_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

local_enable=YES

write_enable=YES

local_umask=022

dirmessage_enable=YES

connect_from_port_20=YES

xferlog_file=/var/log/xferlog

xferlog_enable=YES

xferlog_std_format=YES

listen=yes

tcp_wrappers=YES

systemctl start vsftpd.service后使用ps-ef|grep vsftpd,netstat-nptl|grep ftp,确认vsftpd服务正常开启。

3)拷贝Centos系统文件;

mkdir-p/var/ftp/CentOS-7-for-AArch64 #创建系统文件目录

mount/home/arm_iso/**.iso/var/ftp/CentOS-7-forAArch64

#mount CentOS镜像文件至文件系统目录

ls/var/ftp/CentOS-7-for-AArch64

boot.catalog EFI EULA GPL images LiveOS Packages repodata TRANS.TBL

#确认系统文件目录文件无缺失

4)拷贝EFI文件及PXE boot image至tftpboot目录;

cp/var/ftp/CentOS-7-for-AArch64/EFI//tftpboot/-rf

cp/var/ftp/CentOS-7-for-AArch64/images//tftpboot/-rf

5)配置PXE menu文件;

编辑/tftpboot/EFI/BOOT/grub.cfg并修改如下

set default="1"

function load_video{

if[x$feature_all_video_module=xy];then

insmod all_video

else

insmod efi_gop

insmod efi_uga

insmod ieee1275_fb

insmod vbe

insmod vga

insmod video_bochs

insmod video_cirrus

fi

}

load_video

set gfxpayload=keep

insmod gzio

insmod part_gpt

insmod xfs

set timeout=60

###END/etc/grub.d/00_header###

search--no-floppy--set=root-l'CentOS7Server.aarch64'

###BEGIN/etc/grub.d/10_linux###

menuentry'PXE Install ARM64CentOS7'--class red--class gnu-linux--class gnu--class os{

linux/images/pxeboot/vmlinuz console=ttyAMA0,115200n8

earlycon=pl011,0x87e024000000ks=ftp://192.168.100.2/ks.cfg ip=dhcp

netmask=255.255.255.0gateway=192.168.100.4

initrd/images/pxeboot/initrd.img #配置镜像安装路径及引导方式

}

6)配置ks.cfg文件,编辑ks.cfg文件并将ks.cfg文件存放于/var/ftp目录下,作为Linux部署的配置文件;

#System authorization information

auth--enableshadow--passalgo=sha512

#Use network installation

url--url="ftp://192.168.100.2/CentOS-7-for-AArch64"

#Use text mode install

text

#Run the Setup Agent on first boot

firstboot--disable

ignoredisk--only-use=sda

#Keyboard layouts

keyboard--vckeymap=us--xlayouts='us'

#System language

lang en_US.UTF-8

reboot #安装完成后进行重启

#Network information

network--bootproto=dhcp--device=enP2p1s0f1--onboot=on--ipv6=auto--activate

network--bootproto=dhcp--device=enP2p1s0f2--onboot=off--ipv6=auto--activate

network--hostname=localhost.localdomain

firewall--disabled

selinux--disabled

#Root password

rootpw--iscrypted

$6$iTaWZk60riLB7ov7$22mncEobOxaCWdeD6ryIyoCIFOGzdSH2xqD6yKbffFBnIvfbr3fKs4ZlkmXBdp3esd4JSJ3eHACwzKmPxAzo1.

#Do not configure the X Window System

skipx

#System timezone

timezone Asia/Shanghai--isUtc

#X Window System configuration information

xconfig--startxonboot

#System bootloader configuration

bootloader--append="crashkernel=auto"--location=mbr--boot-drive=sda

#autopart--type=plain

zerombr

part/boot/efi--fstype="ext4"--ondisk=sda--size=200

part/boot--fstype="ext4"--ondisk=sda--size=500

part/--fstype="ext4"--ondisk=sda--size=200000

#part swap--fstype="swap"--ondisk=sda--size=2000

#Partition clearing information

clearpart--all--initlabel--drives=sda

%packages #packages可根据需要自行添加

@^graphical-server-environment

@backup-server

@base

@core

@desktop-debugging

@development

@dial-up

……

..

%end

%addon com_redhat_kdump--enable--reserve-mb='auto'

%end

实施例4

在实施例3的基础,本实施例PXE server网络环境配置中,设置Selinux:disabled,Firewall:disabled,即关闭Selinux和Firewall。

实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1