PXE自动化装机和构建、使用KVM虚拟化平台

简介:

PXE自动化装机和构建、使用KVM虚拟化平台



KVM虚拟化服务器(真机或高配虚拟机(内存>4G)

    操作系统:CentOS 6.5  ==> 关闭 iptables 防火墙、关闭SELinux机制,进入图形桌面

    网卡连接:eth0 (VMnet4)==> 关闭 NetworkManager 服务

    主机名:kvmsvr.tarena.com

    IP地址:192.168.4.254/24

    分区示例:

        /boot  200MB、SWAP 8GB、/  80GB、

        /var/ftp  40GB (逻辑卷 /data/vg_data/lv_data)


 

#########################################################

一:服务的准备工作

[root@pxesvr ~]# service iptables stop  #关闭防火墙

[root@pxesvr ~]# service iptables save

[root@pxesvr ~]# chkconfig iptables off

[root@pxesvr ~]# setenforce 0  #关闭selinux

[root@pxesvr ~]# vim /etc/selinux/config  #修改文件永久关闭selinux 

SELINUX=permissive

[root@pxesvr ~]# vim /etc/sysconfig/network

HOSTNAME=kvmsvr.tarena.com

[root@pxesvr ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0  #修改IP地址

IPADDR=192.168.4.254

NM_CONTROLLED=no

[root@pxesvr ~]# service NetworkManager stop  #关闭 NetworkManager服务

[root@pxesvr ~]# chkconfig NetworkManager off 

[root@pxesvr ~]# reboot


二:在KVM服务器上为CentOS 6.5客户机提供 YUM 源


1. 安装、启用 vsftpd 服务,允许匿名下载

[root@kvmsvr ~]# rpm  -ivh  /光盘挂载点/Packages/vsftpd*.rpm

[root@kvmsvr ~]# service  vsftpd  restart

[root@kvmsvr ~]# chkconfig  vsftpd  on


2. 插入CentOS 6.5光盘,将其中所有文档部署到 FTP 目录

[root@kvmsvr ~]# mkdir  -p  /var/ftp/pub/iso/centos/6.5/

[root@kvmsvr ~]# cp  -rf  /misc/cd/*  /var/ftp/pub/iso/centos/6.5/

准备 RHEL 5.10 安装源(FTP方式提供)

[root@kvmsvr ~]# mkdir -p /var/ftp/pub/iso/redhat/5.10/

.. .. //更换为 RHEL 5.10光盘

[root@kvmsvr ~]# cp  -rf  /misc/cd/*  /var/ftp/pub/redhat/5.10/


3.配置第三方yum源

[root@kvmsvr ~]# mkdir /var/ftp/pub/other/

将办公软件包放入这个文件夹中

[root@kvmsvr ~]# createrepo -s sha1 /var/ftp/pub/other/  # -s sha1 是针对低版本的linux使用第三方yum的一个算法


4. 在本机测试,确保 YUM 源可用

[root@kvmsvr ~]# vim /etc/yum.repos.d/CentOS-Debuginfo.repo 

[debug]

name=CentOS-6 - Debuginfo

baseurl=ftp://192.168.4.254/pub/iso/centos/6.5

gpgcheck=0

#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-Debug-6

enabled=1

[other-RPMS]

name=Other Packages

baseurl=ftp://192.168.4.254/pub/other

enabled=1

gpgcheck=0


[root@kvmsvr ~]# yum  repolist

.. ..


5. 将YUM仓库配置文件部署到 FTP 目录备用

[root@kvmsvr ~]# mkdir  -p  /var/ftp/pub/pxe/

[root@kvmsvr ~]# cp  /etc/yum.repos.d/centos6.repo  /var/ftp/pub/pxe/


[root@kvmsvr ~]# wget  ftp://192.168.4.254/pub/pxe/centos6.repo

.. .. //确认可下载


[root@kvmsvr ~]# vim /var/ftp/pub/pxe/rhel5.repo  #提供 RHEL 5.10客户机的YUM仓库文件

[rhel5]

name=rhel5 - Debuginfo

baseurl=ftp://192.168.4.254/pub/iso/redhat/5.10/Server

gpgcheck=0

#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-Debug-6

enabled=1

[other-RPMS]

name=Other Packages

baseurl=ftp://192.168.4.254/pub/other

enabled=1

gpgcheck=0


[root@kvmsvr ~]# wget  ftp://192.168.4.254/pub/pxe/rhel5.repo

.. .. //确认下载可用




三:安装 KVM 虚拟化相关软件、启用服务


[root@kvmsvr ~]# yum  -y  groupinstall  "Virtualization"  "Virtualization Client"  "Virtualization Tools" "Virtualization Platform" 

.. ..

[root@kvmsvr ~]# service  libvirtd  restart

[root@kvmsvr ~]# chkconfig  libvirtd  on



四:配置 PXE 装机服务器


1. 配置DHCP服务器

[root@kvmsvr ~]# yum  -y  install  dhcp

[root@kvmsvr ~]# vim  /etc/dhcp/dhcpd.conf 

option domain-name "tarena.com";

option domain-name-servers 192.168.4.254;

default-lease-time 7200;

max-lease-time 14400;

subnet  192.168.4.0  netmask  255.255.255.0  {

    range  192.168.4.10 192.168.4.50;

    option routers 192.168.4.254;

    next-server  192.168.4.254;

    filename  "pxelinux.0";

}

[root@kvmsvr ~]# service  dhcpd  restart

[root@kvmsvr ~]# chkconfig  dhcpd  on


2.配置DNS服务器

[root@kvmsvr ~]# yum -y install bind bind-chroot

[root@kvmsvr ~]# service named restart

[root@kvmsvr ~]# chkconfig named on

[root@kvmsvr ~]# mv /etc/named.conf /etc/named.conf.bak

[root@kvmsvr ~]# vim /var/named/chroot/etc/named.conf 

options {

        directory "/var/named";

};

zone "tarena.com" IN {                                          //定义正向区域

        type master;

        file "tarena.com.zone";

};

zone "4.168.192.in-addr.arpa" IN {                              //定义反向区域

        type master;

        file "192.168.4.arpa";

};

[root@kvmsvr ~]# cd /var/named/chroot/var/named/

[root@kvmsvr named]# vim tarena.com.zone

@ SOA tarena.com.  root.tarena.com.  (

        2014072101

        8H

        2H

        4H

        1D

)

@       IN      NS      kvmsvr.tarena.com.

kvmsvr  IN      A       192.168.4.254

ftp     IN      CNAME   pxesvr

$GENERATE  10-50        pc$     IN      A       192.168.4.$

[root@kvmsvr named]# vim 192.168.4.arpa

$TTL 1D

@ SOA tarena.com.  root.tarena.com.  (

        2014072101

        8H

        2H

        4H

        1D

)

@       IN      NS      kvmsvr.tarena.com.

254     IN      PTR     kvmsvr.tarena.com.

$GENERATE  10-50        $       IN      PTR     pc$.tarena.com.

[root@kvmsvr named]# service named restart


3.配置TFTP服务组件

1)安装相关软件包

[root@kvmsvr ~]# yum  -y  install  tftp-server

[root@kvmsvr ~]# chkconfig  tftp  on

[root@kvmsvr ~]# chkconfig  xinetd  on

[root@kvmsvr ~]# service  xinetd  restart


2)准备引导文件

[root@kvmsvr ~]# yum  -y  install  syslinux

[root@kvmsvr ~]# cp  /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/  //网卡启动文件


[root@kvmsvr tftpboot]# mkdir centos6     #存放centos6的内核和初始化镜像的目录

[root@kvmsvr tftpboot]# mkdir rhel5       #存放redhat5.10内核和初始化镜像的目录

[root@kvmsvr ~]# cd  /var/ftp/pub/iso/centos/6.5/isolinux/

[root@kvmsvr isolinux]# cp  initrd.img  vmlinuz  /var/lib/tftpboot/  //给CentOS6客户机用的内核及PXE相关文件


[root@kvmsvr ~]# cd  /var/ftp/pub/iso/redhat/5.10/isolinux/

[root@kvmsvr isolinux]# cp  vmlinuz  initrd.img  /var/lib/tftpboot/rhel5/  //给RHEL5.10客户机用的内核和初始化镜像


3)准备PXE启动菜单

准备图形支持模块、背景图片

[root@pxesvr ~]# yum  -y  install  syslinux

[root@pxesvr ~]# cp  /usr/share/syslinux/vesamenu.c32  /var/lib/tftpboot/

[root@pxesvr ~]# cp  /usr/share/doc/syslinux-4.02/sample/syslinux_splash.jpg  /var/lib/tftpboot/splash.jpg

准备菜单文件

[root@kvmsvr isolinux]# mkdir  -p  /var/lib/tftpboot/pxelinux.cfg/

[root@kvmsvr isolinux]# cd  /var/lib/tftpboot/pxelinux.cfg/

[root@kvmsvr pxelinux.cfg]# vim  default

default   rhel5

timeout 300


UI  vesamenu.c32

menu background splash.jpg

menu title Welcome to PXE Installation Server !


label rhel5

        menu label Install RH^EL 5.9 ( Kickstart )

        kernel  rhel5/vmlinuz

        append  ks=ftp://192.168.4.254/pub/pxe/ks-el5.cfg  initrd=rhel5/initrd.img


label centos6

        menu label Install ^CentOS 6.5 ( Kickstart )

        kernel  centos6/vmlinuz

        append  ks=ftp://192.168.4.254/pub/pxe/ks-cos6.cfg  initrd=centos6/initrd.img


label rescue

        menu label ^Rescue Installed System

        kernel  rhel5/vmlinuz

        append initrd=rhel5/initrd.img rescue


4)测试TFTP下载,确保可用

[root@kvmsvr ~]# yum  -y  install  tftp  //安装 TFTP 客户端命令

[root@kvmsvr ~]# tftp  192.168.4.254  -c  get  pxelinux.0  //连接服务端,测试下载文件

[root@kvmsvr ~]# ls  -lh  pxelinux.0  //确认下载结果

-rw-r--r--. 1 root root 27K 8月  16 17:50 pxelinux.0



5. 提供自动应答配置文件

1)找一台RHEL 5.10主机,根据模板创建应答文件

     新装系统时将root口令设为123456

    自动填序列号、初始化磁盘并分区、安装桌面环境

    完成安装后能自动下载rhel5.repo配好YUM仓库


[root@el5pc ~]# yum  -y  install  system-config-kickstart

[root@el5pc ~]# system-config-kickstart


安装序列号:2515dd4e215225dd  //自动填入安装序号

安装方法选择ftp

服务器:192.168.4.254

目录:/pub/iso/redhat/5.10

安装后脚本

rm  -rf  /etc/yum.repos.d/*

    wget  ftp://192.168.4.254/pub/pxe/rhel5.repo  -O  /etc/yum.repos.d/rhel5.repo

    yum  clean  all

  yum -y install libreoffice4.1*


将上述 ks-el5文件拷贝到 KVM 服务器的 FTP 目录下

[root@kvmsvr ~]# ls  /var/ftp/pub/pxe/ks-el5.cfg

.. ..

[root@kvmsvr ~]# wget  ftp://192.168.4.254/pub/pxe/ks-el5.cfg

.. .. //确保可下载

2)将Centos6.5的主机创建应答文件

[root@el5pc ~]# yum  -y  install  system-config-kickstart

[root@el5pc ~]# system-config-kickstart

安装方法选择ftp

服务器:192.168.4.254

目录:/pub/iso/centos/6.5/

安装后脚本

rm  -rf  /etc/yum.repos.d/*

    wget  ftp://192.168.4.254/pub/pxe/centos6.repo  -O  /etc/yum.repos.d/centos6.repo

    yum  clean  all

  yum -y install libreoffice4.1*


将上述 ks-el5文件拷贝到 KVM 服务器的 FTP 目录下

[root@kvmsvr ~]# ls  /var/ftp/pub/pxe/ks-cos6.cfg

.. ..

[root@kvmsvr ~]# wget  ftp://192.168.4.254/pub/pxe/ks-cos6.cfg

.. .. //确保可下载




五:建立桥接网卡、虚拟机存储


1. 建立桥接网卡 br0

[root@kvmsvr ~]# cp  /etc/sysconfig/network-scripts/ifcfg-{eth0,br0}


[root@kvmsvr ~]# vim  /etc/sysconfig/network-scripts/ifcfg-br0  //调整 br0 配置

DEVICE=br0  //新建的连接名称

TYPE=Bridge  //连接类型

ONBOOT=yes

NM_CONTROLLED=no  //不接受NetworkManager管理

BOOTPROTO=static

IPADDR=192.168.4.254  //设为原eth0网卡的IP地址

PREFIX=24


[root@kvmsvr ~]# vim  /etc/sysconfig/network-scripts/ifcfg-eth0  //调整 eth0 配置

DEVICE=eth0

TYPE=Ethernet

.. ..

NM_CONTROLLED=no  //不接受NetworkManager管理

BRIDGE=br0  //桥接到 br0 


[root@kvmsvr ~]# service  network  restart

[root@kvmsvr ~]# ifconfig  br0

br0   Link encap:Ethernet  HWaddr 00:0C:29:73:9A:C7

         inet addr:192.168.4.254  Bcast:192.168.4.255  Mask:255.255.255.0

.. ..



!!!! 备用操作提示:命令建立桥接网卡

[root@kvmsvr ~]# brctl  addbr  br0

[root@kvmsvr ~]# brctl  addif  br0  eth0




2. 准备虚拟机磁盘 

    建立一个不小于40G的文件系统,挂载到 /data/


[root@kvmsvr ~]# mkdir  -p  /data/images

[root@kvmsvr ~]# dd  if=/dev/zero  of=/data/images/node1.img  bs=10M  count=1000

.. .. //用来装第一个RHEL 5.10虚拟机



六:KVM 虚拟机管理(virt-manager工具)


1. 运行虚拟机管理器

    !!!! 桌面环境 --> 应用程序 --> 系统工具 --> 虚拟系统管理器

    !!!! 或直接运行 virt-manager 命令打开

    —— 默认连接到本机的KVM服务平台进行管理


2. 新建一台虚拟机

    名称:rh5_n1

    内存:512M

    网卡:桥接(br0)

    磁盘:/data/images/node1.img



3. 通过PXE方式为此虚拟机安装系统

    安装过程全自动,完成后登入系统

    检查 YUM 等安装后设置是否自动配置好

    .. ..










本文转自 无心低语 51CTO博客,原文链接:http://blog.51cto.com/fengzhankui/1543729,如需转载请自行联系原作者
目录
相关文章
|
4月前
|
监控 jenkins 测试技术
自动化测试框架的构建与实践
【10月更文挑战第40天】在软件开发周期中,测试环节扮演着至关重要的角色。本文将引导你了解如何构建一个高效的自动化测试框架,并深入探讨其设计原则、实现方法及维护策略。通过实际代码示例和清晰的步骤说明,我们将一起探索如何确保软件质量,同时提升开发效率。
74 1
|
4月前
|
测试技术 开发者 Python
自动化测试之美:从零构建你的软件质量防线
【10月更文挑战第34天】在数字化时代的浪潮中,软件成为我们生活和工作不可或缺的一部分。然而,随着软件复杂性的增加,如何保证其质量和稳定性成为开发者面临的一大挑战。自动化测试,作为现代软件开发过程中的关键实践,不仅提高了测试效率,还确保了软件产品的质量。本文将深入浅出地介绍自动化测试的概念、重要性以及实施步骤,带领读者从零基础开始,一步步构建起属于自己的软件质量防线。通过具体实例,我们将探索如何有效地设计和执行自动化测试脚本,最终实现软件开发流程的优化和产品质量的提升。无论你是软件开发新手,还是希望提高项目质量的资深开发者,这篇文章都将为你提供宝贵的指导和启示。
|
5天前
|
机器学习/深度学习 设计模式 测试技术
Python 高级编程与实战:构建自动化测试框架
本文深入探讨了Python中的自动化测试框架,包括unittest、pytest和nose2,并通过实战项目帮助读者掌握这些技术。文中详细介绍了各框架的基本用法和示例代码,助力开发者快速验证代码正确性,减少手动测试工作量。学习资源推荐包括Python官方文档及Real Python等网站。
|
11天前
|
运维 安全 网络安全
VMware NSX 4.2.1.3 下载 - 网络安全虚拟化平台
VMware NSX 4.2.1.3 下载 - 网络安全虚拟化平台
29 0
VMware NSX 4.2.1.3 下载 - 网络安全虚拟化平台
|
2月前
|
人工智能
LangGraph:构建多代理动态工作流的开源框架,支持人工干预、循环、持久性等复杂工作流自动化
LangGraph 是一个基于图结构的开源框架,专为构建状态化、多代理系统设计,支持循环、持久性和人工干预,适用于复杂的工作流自动化。
176 12
LangGraph:构建多代理动态工作流的开源框架,支持人工干预、循环、持久性等复杂工作流自动化
|
3月前
|
安全 Linux KVM
Linux虚拟化技术:从Xen到KVM
Xen和KVM是Linux平台上两种主要的虚拟化技术,各有优缺点和适用场景。通过对比两者的架构、性能、安全性、管理复杂性和硬件依赖性,可以更好地理解它们的适用场景和选择依据。无论是高性能计算、企业虚拟化还是云计算平台,合理选择和配置虚拟化技术是实现高效、稳定和安全IT环境的关键。
151 8
|
3月前
|
人工智能 自然语言处理 JavaScript
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
Agent-E 是一个基于 AutoGen 代理框架构建的智能自动化系统,专注于浏览器内的自动化操作。它能够执行多种复杂任务,如填写表单、搜索和排序电商产品、定位网页内容等,从而提高在线效率,减少重复劳动。本文将详细介绍 Agent-E 的功能、技术原理以及如何运行该系统。
298 5
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
|
3月前
|
Serverless 决策智能 UED
构建全天候自动化智能导购助手:从部署者的视角审视Multi-Agent架构解决方案
在构建基于多代理系统(Multi-Agent System, MAS)的智能导购助手过程中,作为部署者,我体验到了从初步接触到深入理解再到实际应用的一系列步骤。整个部署过程得到了充分的引导和支持,文档详尽全面,使得部署顺利完成,未遇到明显的报错或异常情况。尽管初次尝试时对某些复杂配置环节需反复确认,但整体流程顺畅。
|
3月前
|
缓存 监控 安全
公司电脑监控软件的 Gradle 构建自动化优势
在数字化办公环境中,公司电脑监控软件面临代码更新频繁、依赖管理和构建复杂等挑战。Gradle 构建自动化工具以其强大的依赖管理、灵活的构建脚本定制及高效的构建缓存与增量构建特性,显著提升了软件开发效率和质量,支持软件的持续更新与优化,满足企业对员工电脑使用情况的监控与管理需求。
56 3
|
3月前
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
91 9

热门文章

最新文章