一、PXE网络装机; 二、Cobbler高效网络装机; 一、PXE网络装机; 1.概述:PXE是intel公司开发的网络引导技术,C/S架构; 2.条件: 服务器: dhcp服务:为客户机提供网络参数,及指定pxe服务器地址, tftp-server服务:为客户端发送vmlinuz内核,initrd.img启动文件,pxelinux相关的文件;(注:tftp:简单文件传输) vsftpd服务:提供系统安装过程的ISO镜像中的软件及ks.cfg(应答文件); kickstart服务:生成ks.cfg应答文件(涵盖了装系统中的每一步); 客户端:网卡支持PXE协议,且主板支持网络引导; 3.各个组件关联: 4.装机流程: a、设置客户机的BIOS从PXE启动 b、客户机向网络中请求DHCP服务器获取动态IP c、DHCP服务器下发IP、引导文件位置、TFTP服务器地址 d、客户机请求TFTP服务器获取引导文件 e、执行引导程序 f、请求TFTP服务器获取配置文件(pxelinux.cfg) g、配置文件包含vmlinux、initrd.img、ks文件位置信息 h、根据配置文件,用户请求TFTP服务器获取linux内核(vmlinux) i、请求TFTP服务器获取linux根文件系统(initrd.img) j、客户机启动linux内核 k、内核挂载initrd.img,并执行挂载各种各样的模块 l、如果设置KS文件,装机步骤自动选择,否则需手动选择 m、装机完成 二、Cpbbler高效网络装机: 1. 概述:Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows。该工具使用python开发,小巧轻便,使用简单的命令即可完成PXE网络安装环境的配置,同时还可以管理DHCP、DNS、TFTP、RSYNC以及yum仓库、构造系统ISO镜像。Cobbler通过将DHCP、TFTP、DNS、HTTP等服务进行集成,创建一个中央管理节点。Cobbler的最终目的是实现无需进行人工干预即可安装机器。 2. Cobbler服务工作原理: 3. 服务流程: a、client裸机配置了从网络启动后,开机后会广播包请求DHCP服务器(cobbler server)发送其分配好的一个IP; 配置cobbler网络装机 一、配置网络和基础环境设置: [root@cobbler ~]# vi/etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no NAME=eth0 DEVICE=eth0 ONBOOT=yes IPADDR0=192.168.100.108 PREFIX0=24 GATEWAY0=192.168.100.100 DNS1=8.8.8.8 [root@cobbler ~]# systemctl restart network ##重启网络服务 [root@cobbler ~]# systemctl stop firewalld ##关闭防火墙 [root@cobbler ~]# systemctl disablefirewalld ##设置防火墙开机禁用 [root@cobbler ~]# sed -i'/SELINUX/s/enforcing/disabled/g' /etc/selinux/config [root@cobbler ~]# setenforce 0 ##临时关闭selinux 二、配置yum源,安装cobbler软件包; [root@cobbler ~]# wget -O/etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo [root@cobbler ~]# yum -y installepel-release [root@cobbler ~]# yum -y install cobblercobbler-web dhcp tftp-server pykickstart httpd xinetd [root@cobbler ~]# systemctl start httpd [root@cobbler ~]# systemctl enable httpd [root@cobbler ~]# systemctl start cobblerd [root@cobbler ~]# systemctl enable cobblerd [root@cobbler ~]# systemctl start tftp [root@cobbler ~]# systemctl enable tftp 三、配置cobbler服务; 1.配置tftp服务; [root@cobbler ~]# sed -i '/disable/cdisable = no' /etc/xinetd.d/tftp ##启动tftp服务 [root@cobbler ~]# systemctl restart tftp [root@cobbler ~]# sed -i'/next_server/s/127.0.0.1/192.168.100.108/g' /etc/cobbler/settings [root@cobbler ~]# sed -i'/server/s/127.0.0.1/192.168.100.108/g' /etc/cobbler/settings [root@cobbler ~]# sed -i'/manage_dhcp/s/0/1/g' /etc/cobbler/settings [root@cobbler ~]# sed -i'/manage_rsync/s/0/1/g' /etc/cobbler/settings [root@cobbler ~]# sed -i'/manage_tftpd/s/0/1/g' /etc/cobbler/settings [root@cobbler ~]# cobbler get-loaders ##初始化cobbler菜单 *** TASK COMPLETE *** [root@cobbler ~]# systemctl restart cobblerd [root@cobbler ~]# cobbler check ##检查cobbler配置 [root@cobbler ~]# openssl passwd -1 -salt'haha' '123123' ##设置客户端的root的密码 [root@cobbler ~]# vi /etc/cobbler/settings default_password_crypted: "$1$haha$JOzIffoIApOx1RMB/l2mq/" [root@cobbler ~]# systemctl restartcobblerd 2.配置dhcp服务; [root@cobbler ~]# vi/etc/cobbler/dhcp.template ##配置DHCP服务,修改如下,不是覆盖 subnet 192.168.100.0 netmask 255.255.255.0{ option routers 192.168.100.100; option domain-name-servers 192.168.100.100; option subnet-mask 255.255.255.0; range dynamic-bootp 192.168.100.200 192.168.100.254; default-lease-time 21600; max-lease-time 43200; next-server $next_server; [root@cobbler ~]# systemctl enable dhcpd [root@cobbler ~]# cobbler check [root@cobbler ~]# cobbler sync ##重新加载cobbler的配置文件 *** TASK COMPLETE *** [root@cobbler ~]# egrep -v '^#|^$'/etc/dhcp/dhcpd.conf ##查看dhcp服务的配置,挂载centos6.5 DVD1的光盘 3.准备安装系统的镜像文件; [root@cobbler ~]# mount /dev/cdrom /mnt/ [root@cobbler ~]# cobbler import--path=/mnt/ --name=centos6.5 --arch=x86_64 ##导入镜像 [root@cobbler ~]# cobbler profile find--distro=centos6.5-x86_64 ##查看镜像的配置文件 [root@cobbler ~]# cobbler distro list ##查看distro镜像列表 [root@cobbler ~]# netstat -utpln 4.设置客户端的yum源; [root@cobbler ~]# cobbler repo add--name=centos6.5-x86_64-base--mirror=http://mirrors.163.com/centos/6/os/x86_64/ --arch=x86_64 --breed=yum ##为客户端配置yum源 [root@cobbler ~]# cobbler reposync ##将上述yum源的文件同步到cobbler服务器本地,同步位置为/var/www/cobbler/repo_mirror/centos6-x86_64-base/ [root@cobbler ~]# cobbler repo list ##查看yum源文件列表 [root@cobbler ~]# cobbler profile edit--name=centos6.5-x86_64 --repos="centos6.5-x86_64-base"--distro=centos6.5-x86_64 --kickstart=/var/lib/cobbler/kickstarts/sample.ks ##更改安装镜像的配置文件,使其自动配置yum源 [root@cobbler ~]# sed -i '/yum_post_install_mirror/s/0/1/g'/etc/cobbler/settings [root@cobbler ~]# cobbler sync 5.设置cobbler服务的密码; [root@cobbler ~]# openssl passwd -1 -saltcobbler hao123 ##为cobbler服务设置密码 [root@cobbler ~]# vi/etc/cobbler/pxe/pxedefault.template 4 MENU MASTER PASSWD $1$cobbler$vPfNo.y/obrlGZWEbif8O0 [root@cobbler ~]# vi/etc/cobbler/pxe/pxeprofile.template ##指定密码类型 2 MENU PASSWD [root@cobbler ~]# cobbler sync ##重新加载配置文件 6.配置cobbler服务的web管理界面: [root@cobbler ~]# htdigest/etc/cobbler/users.digest "Cobbler" cobbler ##设置web网页的登录密码,账号为cobbler [root@cobbler ~]# systemctl restartcobblerd 访问地址:https://192.168.100.108/cobbler_web 扩展: cobbler profile remove--name=centos6.5-x86_64 ##删除镜像的配置文件 cobbler distro remove--name=centos6.5-x86_64 ##删除distro 注:cobbler服务相对比pxe服务来讲,简便了很多,在导入系统文件时,服务默认就将内核文件、启动文件、ks文件自动复制到/var/lib/tftpboot/下; 默认的ks文件位置:/var/lib/cobbler/kickstarts/sample.ks 入口文件的位置:/var/lib/tftpboot/pxelinux.cfg/default 内核文件位置:/var/lib/tftpboot/images/ 四、新建虚拟机客户端调整网卡模式进行测试; 五、客户端管理工具:koan(注:在安装好的虚拟机上进行设置) [root@localhost ~]# yum -y installepel-release [root@localhost ~]# yum -y install koan [root@localhost ~]# koan --server=192.168.100.101--list=profiles ##查看服务端的镜像配置文件 [root@localhost ~]# koan--server=192.168.100.101 --display --profile=centos6.5-x86_64 ##查看详细信息 [root@localhost ~]# koan -r--server=192.168.100.101 --profile=centos6.5-x86_64 ##重新安装本客户端的操作系统,重启后进行安装 [root@localhost ~]# reboot |
|