工作,学习,生活,这里将会有一些记录. 备用域名:http://meisw.51099.com 注册 | 登陆
浏览模式: 标准 | 列表分类:xen

xenserver中手工给vm添加硬盘及修改cpu、内存

xenserver中的GUI操作功能不全,但命令行下的操作功能齐全而且强大,简单介绍两个
一、给vm添加硬盘
1.获得sr的uuid,新建一个vdi
xe vdi-create sr-uuid=181b140b-2ce7-2a47-eb06-69f10ea696cc name-label=be11 type=user virtual-size=100GiB(单位为MiB,KiB,GiB)
返回vdi uuid:
fb6cb3a9-98dd-4ff7-b49e-08ff34c80671
2.新建一个vbd
xe vbd-create vdi-uuid=fb6cb3a9-98dd-4ff7-b49e-08ff34c80671 vm-uuid=9a1772d5-8eb0-9e48-460b-e7159c33e0ae(需要添加硬盘的vm uuid) device=1(设备号为vm里硬盘数目的顺延,从0开始,比如原来有2个硬盘,则device=2,原来有一个,则device=1) type=Disk(如果是添加光驱,则为CD) mode=RW
返回vbd uuid
31640a57-33e1-699f-22e1-7162770184b8
3.attach新建的vbd
xe vbd-plug uuid=31640a57-33e1-699f-22e1-7162770184b8
ok,在vm中可以使用新硬盘了

二、修改vm的cpu数量
1、确认目前cpu数量
   xe vm-param-list uuid=546f896a-ebe6-8071-2c31-b9214dc1d1b5 |grep VCPUs-
返回
                     VCPUs-params (MRW):
                     VCPUs-max ( RW): 2
              VCPUs-at-startup ( RW): 1
                  VCPUs-number ( RO): 2
             VCPUs-utilisation (MRO): 0: 0.000; 1: 0.000
可以修改的是VCPUs-max(系统最多使用的cpu)、VCPUs-at-startup ( 系统启动时使用的cpu,可以用来热添加cpu测试)
2、修改cpu数量
  xe vm-param-set VCPUs-max=1 uuid=546f896a-ebe6-8071-2c31-b9214dc1d1b5

三、修改vm的memory数量
1、确认目前memory
xe vm-param-list uuid=546f896a-ebe6-8071-2c31-b9214dc1d1b5 |grep -i memory|more
返回
                 memory-actual ( RO): 0
                 memory-target ( RO): 1073741824
             memory-static-max ( RW): 2147483648
            memory-dynamic-max ( RW): 2147483648
            memory-dynamic-min ( RW): 2147483648
             memory-static-min ( RW): 16777216
需要修改的是memory-static-max ( RW): 2147483648
            memory-dynamic-max ( RW): 2147483648
            memory-dynamic-min ( RW): 2147483648
目前为2g
2、修改memory
xe vm-param-set memory-dynamic-max=1073741824  memory-dynamic-min=1073741824  memory-static-max=1073741824
将内存改为1g

XenServer虚拟机添加虚拟硬盘、CPU、内存

Citrix的XenCenter管理XenServer是很方便,但是有一些功能是不能实现的,我们还必须要借助命令来实现

一.给XenServer虚拟机添加一个虚拟硬盘

1>首先要查询要在其上创建VDI的sr的uuid

xe sr-list

2>创建vdi

xe vdi-create sr-uuid=<sr_uuid> name-label=<vdi_name> type=user virtual-size=100GiB   (单位为MiB,KiB,GiB)

3>创建VBD虚拟块设备,将VDI与vm关联起来

xe vbd-create vdi-uuid=<vdi_uuid> vm-uuid=<vm_uuid> device=1 type=disk mode=RW 

device=1:为设备号从0开始

type=disk:如果添加光驱则为cd 

mode=RW:为可读写

4>插入新建的vbd

xe vbd-plug uuid=<vbd_uuid>

二、修改vm的cpu数量
1、确认目前cpu数量
   xe vm-param-list uuid=546f896a-ebe6-8071-2c31-b9214dc1d1b5 | grep VCPUs-
返回
                     VCPUs-params (MRW):
                     VCPUs-max ( RW): 2
                     VCPUs-at-startup ( RW): 1
                     VCPUs-number ( RO): 2
                     VCPUs-utilisation (MRO): 0: 0.000; 1: 0.000
可以修改的是VCPUs-max(系统最多使用的cpu)、VCPUs-at-startup ( 系统启动时使用的cpu,可以用来热添加cpu测试)
2、修改cpu数量
  xe vm-param-set VCPUs-max=1 uuid=546f896a-ebe6-8071-2c31-b9214dc1d1b5

三、修改vm的memory数量
1、确认目前memory
xe vm-param-list uuid=546f896a-ebe6-8071-2c31-b9214dc1d1b5 | grep -i memory | more
返回
                 memory-actual ( RO): 0
                 memory-target ( RO): 1073741824
                 memory-static-max ( RW): 2147483648
                 memory-dynamic-max ( RW): 2147483648
                 memory-dynamic-min ( RW): 2147483648
                 memory-static-min ( RW): 16777216
需要修改的是     memory-static-max ( RW): 2147483648
                 memory-dynamic-max ( RW): 2147483648
                 memory-dynamic-min ( RW): 2147483648
目前为2G
2、修改memory
xe vm-param-set memory-dynamic-max=1073741824  memory-dynamic-min=1073741824  memory-static-max=1073741824
将内存改为1G

 

 

 

xe vdi-create sm-config:type=raw sr-uuid=687a023b-0b20-5e5f-d1ef-3db777ce7ae4 name-label=”My Raw LVM VDI” virtual-size=8GiB type=user

Xenserver 控制台菜单操作说明

Status Display

主要内容包括如下部分:

Ø        Supermicro X8DTN:超软主板

Ø        Xenserver版本信息

Ø        网络配置信息

Ø        SSL key fingerprints for this host

从远程访问时的识别码,有两种远程访问方式

*        Xencenterhttps)访问时的识别码

*        Logging in remotelyssh)访问时的识别码

Network and Management Interface

网络配置基本信息的查看与管理。

配置网络连接的管理,主机名,网络时间设置。

Configure management Interface

eth0eth1进行配置管理,主要是IP地址参数配置,支持DHCPstatic方式。

Add/Remove DNS Servers

增加移除DNS server

Network Time(NTP)

增加移除NTP server

启用,停止同步网络时间服务。

NTP server保持同步。

Test Network

测试网络连接,ping命令。

Display NICS

显示NICS的信息,MAC address

Authentication

显示当前登录的用户。

仅仅登录的用户才能重设和控制该server

Log In/Out

用户的check in check out

Change pwd

修改当前用户的密码。

如果该host在一个池中,则修改池中密码。

Change Auto-Logout Time

设定keyboard不活动后的锁定时间。

此设定的时间,适用于xenserver控制台与local shells

 

Virtual Machines

可以实现对虚拟机的启动、停止、和迁移,显示性能信息。

VMs Running On This Host

显示在主机上正在运行的虚拟机的详细信息。

Host Performance Information

主机性能信息,cpumemory的使用率。

 

All VMs

显示在池中的所有的虚拟机的详细信息。

Disks and Storage Repositories

建立、附加SRstorage repositories),选择本地硬盘作为SR,为主机选择进行suspend或者crash dumpimages

Current Storage Repositories

Ø        显示当前的存储库信息:

ü        本地存储库

ü        DVD

ü        共享存储库

Ø        对存储的管理操作。

Create new storage repository

建立共享存储库:

ü        NFS

ü        iSCSI

ü        NetApp

ü        Hardware HBAFibre channel

ü        Dell EqualLogic

 

 

Attach existing storage repository

附加已经存在存储库或者ISO库。

ü        NFS

ü        iSCSI

ü        NetApp

ü        Hardware HBAFibre channel

ü        Dell EqualLogic

ü        Windows file sharingCIFSISO library

ü        NFS ISO Library

 

Specify suspend SR

Suspend storage repository

 

Specify crash dump SR

To use a SR to storeCrash Dumps 

Resource Pool Configuration

一个资源池,允许一定数量的hosts作为共享资源,可以在他们之间迁移运行的虚拟机。

Join a resource pool

将本机加入到一个资源池,将允许本机共享存储库,并且可以在资源池内的hosts上迁移VM

加入资源池的操作时,需要提供pool master的地址信息,因为master不能是本机,因为本机不能作为自己的slave

加入到资源池后,本机作为masterslave存在。

Join a resource poolforced

慎用此功能。

强制一个主机加入资源池,这将忽略主机间的不兼容性(CPU等),这可能导致一系列问题的发生。特别的,当在不兼容的主机上进行虚拟机的迁移时,可能导致crashes和数据损坏。

Remove this host from the pool

从一个资源池中移除此主机,将永远删除、重新初始化所有的本地SR

在本地SR上的数据将丢失,并将重新启动

Designate a new pool master

首选需要本机是资源池的一个成员,才能执行此功能。

指派一个新的资源池masterXencentet将有几秒钟的时间,失去与资源池的连接。

 

Xenserver Details and Licensing

Ø        显示xenserver产品信息:

*        Xenserver version

*        Xen version

*        Kernel version

Ø        显示license信息:

*        Product SKU

*        Expiry

*        Sockets

Install xenserver license

 

Hardware and BIOS Information

显示processormemorydisk controllerBIOS的详细信息。

System Description

Ø        System manufacturer

Ø        System model

Ø        Serial number

Ø        Assert tag

 

Processor

处理器信息,cpu型号,逻辑cpu数量,物理cpu数量等。

System memory

Ø        Total Memory

Ø        populated memory sockets

Ø        total memory sockets

 

Local storage controllers

BIOS information

Ø        Vendor

Ø        Version

 

Keyboard and Timezone

键盘语言与时区设置。

Keyboard language and layout

Set timezone

Remote Service Configuration

配置远程服务,比如:通过remote shellSSH)访问,remote loggingsyslog到其他servers

Remote Loggingsyslog

Enabl/disable remote shell

 

BackupRestore and Update

Backup and restore system databasevm metadata,借助于软件更新系统。

Schedule VM Metadata

规划VM metadata的备份策略,每天、每周、每月、从不备份。

Backup virtual machine Metadata

备份vmmetadata到一个SR中。同时备份与VM配置的相关信息到一个特定的SR中。

如果迁移了SR到另一个Xenserver pool中,接下来,可以restore metadata

Backup成功后的信息:

Ø        Using SRlocal storage

Ø        Creating new backup VDIXXXXXX  done

Ø        Rotating old backupsfound 0

Ø        Backing up pool databasedone

Ø        Cleaning old vm metadatadone

Ø        Backing up SR metadatadone

Ø        Backing up VM metadatadone

Ø        Backing up template metadatadone

Restore VM Metadata

从一个SRrestoreVM metadata

步骤:

1、 选择一个SR

2、 自动发现backup VDI

3、 选择一个restoremetadata备份;

Technical Support

验证本机配置,upload or save缺陷报告。

Validate server configuration

Ø        VT enabled on CPU

Ø        Local default SR

Ø        Management network interface

Upload bug report

Upload a bug report file,将本机的状态信息上传到support ftp server.上传的文件可能包含一些敏感信息。

Save bug report

保存一个bug报告文件到一个可移动媒介上,该文件包含一些本机的信息,也可能含有一些敏感数据。

Reboot or Shutdown

重启、关闭主机,进入、离开aintenance mode

Enter/Exit maintenance mode

Enering maintenance mode将迁移所有本机的running VM到本资源池内的其它主机上。当maintenance本主机时,shutdown时使用。

将不能再启动vm和不能从其它主机迁移vm到本机。

Reboot server

Shutdown server

 

Local Command Shell

启动本地的命令行模式,shell只能由root使用。

xenserver的SR,VDI,VBD之间的关系

存储库 (SR)

虚拟磁盘映像 (VDI)

物理块设备 (PBD)

虚拟块设备 (VBD)

 

下面就以图形来说明这些术语之间的关系。

1、SR

定义了一个名为存储库 (SR) 的容器来描述存储虚拟磁盘映像 (VDI) 的特定存储目标。SR 具有对本地连接的 IDE、SATA、SCSI 和 SAS驱动器和远程连接的 iSCSI、NFS、SAS 和光纤通道的内置支持,因而非常灵活。

利用xe命令看到如下信息,部分显示内容被省略

[root@xs-10 ~]# xe sr-list

[root@xs-10 ~]# xe sr-list name-label=xenserver 
uuid ( RO)                : 0554628e-448d-fbdf-4544-04cc4f390529 
          name-label ( RW): xenserver 
    name-description ( RW): iSCSI SR [172.20.10.107 (iqn.2007-10.uit.com:techtest.xenserver)] 
                host ( RO): xs-10.8 
                type ( RO): lvmoiscsi 
        content-type ( RO):

结合图形,不难理解,所谓的SR就是一个存储仓库,里面存储了很多的ISO文件,你可以利用这些ISO文件来存储东西,如vmware vsphere、ubuntu这两个SR。又或者当做存储虚拟机文件的仓库,例如xenserver这个SR。下面接着看SR下一层的对象,叫做VDI

2、VDI

虚拟磁盘映像是显示给 VM 的存储抽象,VDI 是 XenServer 中的虚拟化存储的基本单元。

下面我们看一下Ubuntu这个SR存储库中有哪些VDI,即VDI是包含在SR中的。

[root@xs-10 ~]# xe vdi-list sr-uuid=4188b1ee-76bc-10ed-dc15-6c7a236ce9aa

uuid ( RO)                : 5b5bd9b4-b061-4e55-ab8f-a6e685358357

          name-label ( RW): ubuntu-11.04-desktop-i386.iso

    name-description ( RW):

             sr-uuid ( RO): 4188b1ee-76bc-10ed-dc15-6c7a236ce9aa

        virtual-size ( RO): 718583808

            sharable ( RO): false

           read-only ( RO): true

可以看到VDI。由截图不难看出,所谓的VDI就是里面的ISO文件或虚拟机的硬盘文件。下面我们继续vbd

 

3、VBD

虚拟块设备是连接器对象(与上述的 PBD 类似),可用于在 VDI 和 VM 之间进行映射。VBD 还可用于微调给定 VDI 的 QoS(服务质量)、统计数据和可引导性等相关参数。

上文中讲述的VDI只是一些ISO文件或虚拟机的硬盘文件,这些文件如果单独放在一起是没有任何价值的。正如描述中的那样,VBD是用在VDI和VM之间的映射,如果没了这层映射,光有VDI也是不行的。

利用xe命令查看“UCA-VM-10.24”这个主机含有哪些VBD,首先查看UCA-VM-10.24的UUID号

  [root@xs-10 ~]# xe vm-list name-label=UCA-VM-10.24

uuid ( RO)           : 89577946-f487-76a6-387e-86daaca15bef

     name-label ( RW): UCA-VM-10.24

    power-state ( RO): halted

再查看

[root@xs-10 ~]# xe vbd-list vm-uuid=89577946-f487-76a6-387e-86daaca15bef

uuid ( RO)             : a798413b-df47-9fb5-4b4d-56539a26eaf2

          vm-uuid ( RO): 89577946-f487-76a6-387e-86daaca15bef

    vm-name-label ( RO): UCA-VM-10.24

         vdi-uuid ( RO): 34fc2c1c-a3aa-43c7-95e4-b8bf6603e52f

            empty ( RO): false

           device ( RO): hda

可以看出上面的VBD其实将第2节中的VDI和UCA-VM-10.24这个虚拟机做了个映射。也就是说如果我将上图中的disk1这个VDI attach到另一个主机如SQL Server,则VDI不变,而你用xe vbd-list 这个命令查看UCA-VM-10.24这个主机时,会发现少了一个VBD,而SQL Server主机会多了一个VBD。

知道了如上的原理,接下来添加virtual disk就好办了,步骤很简单:

1、在某个SR下面建新的vdi,命名为disk3,其实就是创建虚拟机的硬盘文件

xe vdi-create name-label=disk3 type=user sr-uuid=0554628e-448d-fbdf-4544-04cc4f390529 virtual-size=4GiB 
5b4dfa6a-17f0-4207-b7f2-9d205f4517a9--新的VDI的UUID


2、利用新得到的vdi号创建新的vbd,其实就是为上一步创建的硬盘文件和虚拟机之间做映射

[root@xs-10 ~]# xe vbd-create vdi-uuid=5b4dfa6a-17f0-4207-b7f2-9d205f4517a9 device=5 vm-uuid=89577946-f487-76a6-387e-86daaca15bef 
9bcad328-4006-fb95-eea8-87de94bf0ff8


3、将创建的vbd plug即可。

[root@xs-10 ~]# xe vbd-plug uuid=9bcad328-4006-fb95-eea8-87de94bf0ff8 
You attempted an operation on a VM which requires PV drivers to be installed but the drivers were not detected. 
vm: 89577946-f487-76a6-387e-86daaca15bef (UCA-VM-10.24)

http://taotao1240.blog.51cto.com/731446/888387

XenServer中LVM的性能

在XenServer 5.5以后,提供了snapshot和fast clone的功能,这些功能,具有一定的性能开销,但能够带来一定的灵活性。纯粹为了性能,在基于LVM的存储上支持创建RAW格式的VDI,而默认创建的VDI为VHD格式。RAW格式,虽然能够带来性能的提升,但XenServer不支持RAW格式 VDI的快照。

基于能够通过XenCenter或者命令行快照挂载了RAW格式VDI的虚机,但是这些快照可能只是部分内容,所以一定不要快照使用RAW格式 VDI的虚机。找到并删除这些RAW格式VDI的快照,可以使用:


#该命令用于查看VDI的snapshot-of参数和VDI的UUID
xe vd-list params=snapshot-of,uuid
找到RAW格式VDI的快照后,删除即可,或者通过XenCenter删除。

创建RAW格式的虚机磁盘需要使用命令行操作:


#首先创建VDI
xe vdi-create sr-uuid=<sr-uuid> type=user virtual-size=<virtual-size> name-label=<vdi name> sm-config:type=raw
#附加RAW格式VDI到指定的VM即可
在RAW与VHD之间转换

Citrix官方没有提供直接的工具在两者之间转换。所以,需要转换的话,只能自己解决了,可以想到的两种方法一是,新建VDI,然后把两个VDI同时挂载到一个VM,然后在VM内存,手动来同步数据,另外一种,使用linux的dd命令来copy VDI中的block。

只要确保新VDI的尺寸大于等于原有VDI的virtual size即可。

从VHD转换成RAW格式比较容易处理,但是如果冲RAW格式转换成VHD就比较麻烦了,所以不推荐直接操作VDI,所以,挂到VM上,进行基于文件或者数据的copy更安全和简单。

XenServer中License的设置对各种操作的影响

在XenServer中,License的设置以及XenServer的版本对资源池中的操作具有一定的影响。

首先,XenServer的License有大体两种,一种为.xslic格式,一种为.lic格式。XenServer的授权版本分Free Edition,Advanced,Enterprise,Platinum Edition以及Enterprise-XD共5种。其中,在当前最新版本以及后续版本中,将不再支持.xslic格式的商业授权版License,免费版将任然采用.xslic格式。

License过期后,将服务启动新的虚机或者恢复已经暂停的虚机,除非重新激活。

License宽限期:默认情况下,XenServer会同License通信,检查License,获取License成功以后,XenServer主机会每5分钟与License Server通信一次,发送心跳消息,声明主机处于活动状态。如果通信失败,XenServer讲进入30天的宽限期,如果在宽限期内,仍然无法与License Server取得联系,那么主机将会处于License过期状态,VM将无法启动和恢复,但不影响正在运行的虚机。

特别地,在一个资源池中,如果各个主机的License授权版本不相同的情况下,对各种操作有一定的限制和影响。

资源池中,各种高级功能受资源池中,license版本最低版本的主机影响,例如:资源池中具有高级版和白金版的主机,那么资源池中,默认只能使用高级版主机的功能
在新的主机加入资源池的时候,必须先对主机进行授权,才能加入到资源池,而且,新主机的License版本必须同资源池中License授权版本最低的一致,否则,无法加入资源池
所以,不推荐在资源池中,混合使用不同的license授权

XenServer需要配置多少网卡

最常见的场景是XenServer for Xendesktop,XenServer服务器作为基础架构存在,对网卡的配置有一定的要求,不管项目大小,我们可能都会问,究竟配置多少网卡就可以了?然而,由于需求的不同,比如冗余,吞吐量,安全,扩展性等等,我们需要作出权衡来配置数量。

XenServer5.6需要最少1块网卡,最多支持16块网卡,8个bonds(每2个网卡bond成一个)。

PS:XenServer的bond支持两种模式,一种是Active/Active模式,另外一种是Active/Passive模式。AA模式的bond支持SLB(source load balancing),同时支持冗余功能,而AP模式只有redundancy(冗余)而不具备LB(负载均衡)功能。

一般处于冗余,安全和吞吐量的考虑,可能会有以下几种情形。

存储:典型的,大量的用户使用存储,而且负载较高的时候,会了提供有效的网络吞吐量,一般建议是使用单独的网卡来连接存储。
PVS:PVS对网络的要求也是比较高的。而且,网络对PVS的性能影响较大,所以如果有PVS需求,也是需要单独的网卡来托管流量。典型的WIN7 x86虚拟桌面,在启动时候需要传输166M左右的数据。所以,有效的带宽可以根据此来计算。PS:不是所有的虚机都是同时启动。
VM:虚拟机需要和后端的基础架构通信,包括DC(域控),Web Server,Database Server,file Server等等。如果有效带宽不够,会影响到用户的体验。
管理口:XenServer的管理流量一般情况下推荐和其他流量分离,在安全性,稳定性上都有很大好处,而且不影响正常使用的流量。管理口的最大流量在于虚机的在线迁移等操作。
Backups:备份,在XenDesktop的环境中,如果不使用PVS,那么虚机的备份是非常消耗网络资源的。所以,也是需要单独来分配网卡。
虽然能够换更好的网卡来提高吞吐量。但是分离不同类型的网络流量在管理和安全以及网络的有效利用上还是有很好的帮助。虽然可以使用VLAN等技术来实现,但推荐使用独立网卡。

另外,为了防止单个网卡的网线或者网卡问题,导致的网络不可用,所以推荐所有的网卡都做绑定后使用。也就是推荐网卡数量为2,4,6,8,……

流量基本包括了:management,storage,VM,PVS,backup。

所以,一般情况下,所有流量都走同一bond,那么就只需要使用1个bond(2 NIC)

每有流量需要独立,增加1个bond(2 NIC).

2 x Network Cards:
Bond 1 - management, storage, virtual machine, provisioning, backup

4 x Network Cards:
Bond 1 - management, provisioning and virtual machine
Bond 2 - storage and backup

6 x Network Cards:
Bond 1 - management and virtual machine
Bond 2 - provisioning
Bond 3 - storage and backup

8 x Network Cards:
Bond 1 - management
Bond 2 - virtual machine
Bond 3 - storage and backup
Bond 4 - provisioning

扩展XenServer的Local Storage

有些时候,可能需要在XenServer中使用大容量的本地存储的时候,可能就需要做一些简单的处理。

XenServer5.6中,每个分区的大小不能超过2TB,这受限制于文件块索引的限制,VDI的大小最大不能超过2TB,但是,由于XenServer5.6中,LVM以及是最新版的LVM2,支持超过2TB的大容量本地存储。

但是XenServer5.6在安装的时候是无法处理超过2TB的容量,所以,安装的时候,需要对启动盘做一些处理,安装的时候使用的容量不能超过2TB,安装完成以后,再来对local storage进行扩展,即可支持大容量的本地存储。但是对RAID的支持可能就会有些问题了。。

1、安装在2TB以下容量的磁盘

2、扩展Local Storage

详细的截图,没有了,只说下简单的命令:

查看当前的逻辑组:vgdisplay ,用来查看当前的组的UUID
添加磁盘到LVM中:pvcreate,命令格式:pvcreate /dev/sdb
如果/dev/sdb在安装XenServer以前已经安装过其他系统,或者以前残留的分区,可能需要删除以下分区,命令为:fdisk /dev /sdb,此时,按m进入菜单,按d用来删除分区,删除完以后,按w写入修改。清理完分区以后就可以pvcreate了
扩展Virtual Group:vgextend <VG_Xenstorage_UUID> /dev/sdb,其中,VG Xenstorage UUID为第一步查看到的值,/dev/sdb即为新加的物理盘
扩展完所有的磁盘以后,即完成了。
扩展完以后,可能会看到local storage的容量没有变化,可以重启下服务器以后就可以看容量的变化。

Records:1612