Citrix XenServer

advertisement

SUNY IT Master's Project

Using Open Source Virtualization Technology In

Computer Education

By: Ronny L. Bull

Advised By: Geethapriya Thamilarasu, Ph.D.

Fall 2011

Goals

Create a scalable virtualization server cluster using Open Source technology

Used by students & faculty for labs, research,

& development

Used by CS Admins to migrate aging physical servers to virtual environment

Provide fine grained user access to virtual machines via the web using current LDAP authentication

Virtualization Overview

Allows an organization to leverage the power of multi-core server hardware to host multiple virtual servers on a single physical host.

Consolidates a large server farm down to a few powerful machines which have the advantage of saving space and energy costs while still retaining the same level of service that they previously relied upon.

Hypervisor

Makes server virtualization possible by creating a basic abstraction layer of software that sits directly on the hardware below any operating system.

Responsible for CPU scheduling and memory partitioning of the various virtual machines running on the physical hardware

Controls execution of virtual machines as they share the common processing environment and resources

Hypervisor Cont.

Has no knowledge of networking, external storage devices, video, or any other common

I/O functions

Most enterprise virtualization solutions offer their hypervisors for free. ( Microsoft Hyper-V,

Citrix XenServer, VMWare ESXi)

Hosts & Guests

The Host operating system is a privileged virtual machine that has special rights to access physical I/O resources as well as manages the other virtual machines running on the system

The Guest operation systems have no direct access to the physical hardware on the machine, and rely on the host to manage them

The Host must be online before any Guests are allowed to be started

My Choice

Most enterprise virtualization solutions offer free hypervisors however the utilities to manage them can be expensive

Enter Xen, the open source hypervisor

Citrix bases all of it's products on Xen

Xen Cloud Platform (XCP) is an open source implementation of Citrix XenServer

CentOS Linux based distribution

Minimal documentation

Hardware Specs

Motherboard: SUPERMICRO MBDX9SCM-O

Server Motherboard (SandyBridge) w/ 2 integrated 1000MB Intel NIC's

Processor: Intel Xeon E3-1240 @ 3.30GHz

Quad Core w/ Hyper Threading

RAM: 16 GB Crucial DDR3 SDRAM ECC

Unbuffered Server Memory

Hard Drives: 2x Seagate Momentus XT

500GB Hybrid

Hardware Specs Cont.

Hard Drive Mounts: 2x Mushkin Enhanced drive adapter bracket

Rack Mount Case: Antec Take 4 + 4U With

650W Power Supply (Quiet Computing)

Rack Rails: Antec 20" Side Rails

Total Cost Per Server: $1,331.46

Hardware Issues

Repeatable lockups on two of the three servers when pushing heavy I/O

Performed extensive hardware diagnostic and stress tests

Swapped parts

Found both motherboards were faulty and had to be RMA'd

XCP Installation

Installed from CDROM

Setup management interface on Admin subnet

Created local ISO storage repositories

Extended the Default LVM Volume Group to include the remaining 450GB from second hard drive

Networking

Created firewall rules for the Eth0 management interface, connected to Admin subnet

Created VLAN entries on all of the servers to support all of the VLAN's on the network

Assigned all VLANS to Eth1 – VM interface

Assigned Eth1 to 201 VLAN – Student, and gave it an IP address

Connected Eth1 to trunked port and setup firewall rules for access

Server Management

Can not clone servers to produce new ones because of UUID's on resources

Each server must be setup from scratch

Can use Citrix XenCenter to manage multiple servers from a single remote location

Export, Import, Create, Connect To, & Manage

VM's

Snapshots, Resource Management, CPU

Priority, & Templates

Server Pools

Created three server pools

CSAdmin – For migrated CS dept. servers

NCS-Student – NCS Lab server

CS-Student – CS Lab/Research server

More servers will be added as they are retired from ITS and become available

Bugs

Default Linux templates do not boot from

CDROM

30 day license issue

XenCenter snapshot issue (Version)

User Access & Authentication

 https://xen1-web.cs.sunyit.edu

XVP Appliance – turnkey virtual appliance created to manage Citrix XenServer & XCP servers

LDAP integration

Fine grained user access control on a per machine or per pool basis

Web based using https

Access & Setup via command line utility

User Access & Authentication Cont.

User only needs access to port 443 of xen1web appliance

All console connections to virtual machines are done over the standard VNC TCP port

5900 from xen1-web to the xen server the virtual machine is hosted on. This is done on the local network, users do not need port 5900 access to anything!

Users can open multiple consoles at the same time in the same session

Conclusion

Xen Cloud Platform proved to be a stable and robust competitor to the other enterprise level virtualization options that are currently offered

Offers a low cost (hardware only) highly scalable solution to server virtualization, and allows for the creation of Windows, Linux, and

FreeBSD guests

Virtual machines can be accessed securely from anywhere via web browser

VLANs allow separation for security

Conclusion Cont.

Lab environments can be consolidated

Students can each have their own set of virtual machines rather than sharing physical computers, maximizing their learning experience

References

Xen Overview: http://xen.org/files/Marketing/HowDoesXenWork.pdf

Citrix XenServer 5.6 Feature Pack 1

Administrator's Guide: http://support.citrix.com/article/CTX127321

Xen Cloud Platform: http://xen.org/products/cloudxen.html

Citrix XenCenter: http://community.citrix.com/display/xs/XenCenter

XVP Appliance: http://www.xvpsource.org/topic=about&page=xvpappliance

More Stuff

My notes, paper, and a copy of this presentation can be found at: http://ronnybull.com/portfolio/masters-project

Within my notes all of the setup commands are documented with step by step instructions.

Source code for my scripts are also included for bug workarounds.

Download