烂泥:KVM与kickstart集成,烂泥kvmkickstart


本文由秀依林枫提供友情赞助,首发于烂泥行天下

KVM与kickstart集成在这里我要说明下,因为在前面有关CentOS无人值守安装的文章中,我提到过如果要使用网卡PXE功能的话,内网中必须有DHCP服务器。

也就是说内部网络中必须有一台DHCP服务器,用来获取TFTP服务器的地址,否则无法进行无人值守安装,CentOS也就无法通过网络安装。

如果我们是物理机通过网络进行安装CentOS的话,那么上述条件必须符合,也就是说。内网中必须存在DHCP服务器,否则客户端的网卡不能获取到相关的IP地址。

但是如果我们是通过KVM进行安装虚拟机的话,我们的网络就不一定需要DHCP服务器。我们只需要在KVM安装的脚本中配置相关IP地址,以及在kickstart的配置文件ks.cfg中配置相关IP地址即可。

为什么会是这样的呢?

其实在《烂泥:kickstart无人值守安装CentOS6.5》文章中,我们已经介绍过了PXE的原理。PXE的网络安装CentOS过程其实有是两个阶段需要IP地址的支持,第一个阶段是通过TFTP下载系统安装内核、第二个阶段是在系统安装时获取安装源的地址。如果是内网有DHCP服务器的话,这两个阶段获取的IP地址直接是从DHCP服务器上得到的。如果我们给网卡配置固定IP地址的话,那么就不需要DHCP服务器了。即第一阶段的所使用的IP地址由KVM安装虚拟机的脚本中配置,第二阶段使用的IP地址由ks.cfg文件中配置。

在这再补充一点有关网络的知识,同一个网络中即使没有路由器,只要两台机器配置的IP地址为同一个网段即可正常通信。

在下面的文章中,我会分两部分来介绍KVM与kickstart的集成:网络中存在DHCP服务器和网络不存在DHCP服务器。

一、网络中存在DHCP服务器

因为是与KVM集成相关,所以有关KVM的搭建与配置可以参照我之前的文章《烂泥:虚拟化KVM安装与配置》,在这里我们也使用到了有关LVM和裸设备相关的知识,也可以参考这两篇文章《烂泥:LVM学习之LVM基础》、《烂泥:KVM使用裸设备配置虚拟机》。

既然这一部分是和DHCP服务器相关的,那么我们来开启DHCP服务器,有关DHCP服务器的配置,可以参考这篇文章《烂泥:CentOS安装及配置DHCP服务器》。

开启DHCP服务器,如下:

/etc/init.d/dhcpd start

DHCP服务开启完毕后,我们开始创建一个LV逻辑卷作为虚拟机的硬盘。如下:

lvcreate -L 20G -n kickstart vg1

lvs

虚拟机硬盘创建后,我们现在开始创建虚拟机,使用如下命令:

virt-install -n kickstart -r 2048 --vcpus=1 --os-type=linux -l nfs:192.168.1.11:/iso -f /dev/vg1/kickstart --bridge=br0 -m 52:54:00:12:D7:5D --nographics -x "console=ttyS0 ks=nfs:192.168.1.11:/ks/ks.cfg"

这条命令的意思是:创建一个名叫kickstart的虚拟机,该虚拟机分配的内存为2G,使用一颗CPU,虚拟机为linux OS,该虚拟机的硬盘是/dev/vg1/kickstart,该虚拟机网卡桥接的物理网卡br0,同时为该网卡指定MAC地址为52:54:00:12:D7:5D。安装该虚拟机使用的镜像源为nfs:192.168.1.11:/iso,KVM在给该虚拟机安装过程中不使用图形界面。同时安装该虚拟机时,使用ks配置文件位于nfs:192.168.1.11:/ks/ks.cfg,并且在该虚拟机安装完毕后,可以通过串口进行来连接该虚拟机。

在这里介绍下,有关这条命令的主要参数:

1、安装源与KS源的位置

在这我们使用的是NFS方式,当然我们也可以使用FTP、HTTP方式。有关NFS在KVM的使用,可以通过查看virt-install的帮助文档来了解。如下:

virt-install --help

也可以通过man virt-install来了解,如下:

2、虚拟机硬盘

虚拟硬盘我们在此使用裸设备/dev/vg1/kickstart,有关虚拟机硬盘的我们也可以通过查看帮助文档来了解。

virt-install --help

man virt-install

3、MAC地址

我们为该虚拟机指定了MAC地址,MAC地址一定要为大写。否则KVM会报错。而且有关指定MAC地址,我们只能通过man virt-install来查看。如下:

man virt-install

4、ks源配置

该虚拟机的ks源,我们是通过nfs方式来连接的。这个我们也可以通过查看man virt-install,如下:

以上就是该条命令创建虚拟机的相关参数,为什么要这么清楚的介绍这些参数?是因为这些参数都是在安装虚拟机时,是必须的而且我们通过这种方式也能更好的理解KVM的参数以及如何查看KVM的帮助文档。

以上是介绍KVM创建虚拟机,记住此时我们还没有正式创建虚拟机。现在还需要我们来配置ks的配置文件ks.cfg。如下:

more ks.cfg

在此我们主要配置ks.cfg中的网络部分。设置虚拟机安装时,使用DHCP方式获取IP地址。

好了这个配置完毕后,我们就来正式安装KVM虚拟机,如下:

系统安装完毕后,我们来查看该虚拟机的IP地址以及MAC地址。如下:

ifconfig

可以看到虚拟机确实获取到了IP地址,并且MAC地址也确实是我们指定的。

以上讲解的是在网络有DHCP服务器的情况,下面我们来讲解没有DHCP服务器的情况。

二、网络中不存在DHCP服务器

首先关闭DHCP服务器,如下:

/etc/init.d/dhcpd stop

修改kickstart配置ks.cfg有关网络的配置如下:

在ks.cfg文件中,我们定义虚拟机的IP地址、子网掩码、默认网关、DNS服务器以及主机名。如下:

IP:192.168.1.220 DNS:192.168.1.1 hostname:ilanni

修改完毕后,我们来通过KVM创建虚拟机,使用如下命令:

virt-install -n kickstart -r 2048 --vcpus=1 --os-type=linux -l nfs:192.168.1.11:/iso -f /dev/vg1/kickstart --bridge=br0 -m 52:54:00:12:D7:5D --nographics -x "console=ttyS0 --device=eth0 ip=192.168.1.220 netmask=255.255.255.0 gateway=192.168.1.1 ks=nfs:192.168.1.11:/ks/ks.cfg ksdevice=eth0"

注意:KVM中定义的IP地址和ks.cfg文件定义的IP可以相同也可以不相同,但是两个IP地址必须为同一个网段。并且最后虚拟机的IP地址以ks.cfg文件中配置的为准。

通过上述两张截图,我们可以看出在没有DHCP服务器时,我们通过为KVM安装虚拟机时配置IP地址和ks.cfg配置IP地址,也可以通网络安装CentOS系统。

系统安装完毕后,我们重启进入虚拟机,查看我们定义的相关网络配置及主机名。如下:

ifconfig

more /etc/resolv.conf

通过上图,我们完全看出虚拟机的网络配置和主机名就是我们通过ks.cfg文件配置的。

到此我们的实验就已经结束了,在此我重申下。

在KVM中网络CentOS系统不一定需要DHCP服务器,但是如果是物理机网络安装CentOS系统,必须要有DHCP的支持。而无论是KVM还是物理机安装CentOS系统,都是需要TFTP服务器的支持。

 


linux资源是怎管理的? 要详细点的快

资源管理器:为了确保分配给作业合适的资源,集群资源管理需要维护一个数据库。这个数据库记录了集群系统中各种资源的属性和状态、所有用户提交的请求和正在运行的作业。策略管理器根据这些数据和指定的调度策略生成优先级列表。资源管理器根据这个优先级列表调度作业。资源管理器还应该具有资源预留能力。这样不仅可以保留强大的资源给需要的作业,而且可以预留一定的冗余资源以应付集群中的结点失效和突发的计算。
作业调度策略管理器:策略管理器根据资源管理器得到各个结点上的资源状况和系统的作业信息生成一个优先级列表。这个列表告诉资源管理器何时在哪些结点上运行哪个作业。策略管理器不仅要提供一个复杂的参数集合去定义计算环境和作业,而且要为这个定义提供简捷灵活的表达方式以允许系统管理员实现策略驱动的资源调度。
2 Beowulf集群中的作业管理软件
有很多种选择去管理集群系统中的资源。其中PBS资源管理器和Maui作业调度器最适合集群系统。

2.1 PBS
PBS(Portable Batch System)是由NASA开发的灵活的批处理系统。它被用于集群系统、超级计算机和大规模并行系统。PBS主要有如下特征:

易用性:为所有的资源提供统一的接口,易于配置以满足不同系统的需求,灵活的作业调度器允许不同系统采用自己的调度策略。
移植性:符合POSIX 1003.2标准,可以用于shell和批处理等各种环境。
适配性:可以适配与各种管理策略,并提供可扩展的认证和安全模型。支持广域网上的负载的动态分发和建立在多个物理位置不同的实体上的虚拟组织。
灵活性:支持交互和批处理作业。
OpenPBS( www.OpenPBS.org/)是PBS的Open Source的实现。商业版本的PBS可以参照: www.pbspro.com/。

2.2 Maui
Maui 是一个高级的作业调度器。它采用积极的调度策略优化资源的利用和减少作业的响应时间。Maui的资源和负载管理允许高级的参数配置:作业优先级(Job Priority)、调度和分配(Scheduling and Allocation)、公平性和公平共享(Fairness and Fairshare)和预留策略(Reservation Policy)。Maui的QoS机制允许资源和服务的直接传递、策略解除(Policy Exemption)和指定特征的受限访问。Maui采用高级的资源预留架构可以保证精确控制资源何时、何地、被谁、怎样使用。Maui的预留架构完全支持非入侵式的元调度。

Maui的设计得益于世界最大的高性能计算中心的经验。Maui本身也提供测试工具和模拟器用于估计和调节系统性能。

Maui需要资源管理器与其配合使用。我们可以把Maui想象为PBS中的一个插入部件。

更多Maui的信息可以访问: www.supercluster.org

3 集群系统管理
从系统组成角度说,集群系统是......余下全文>>
 


相关内容