0% found this document useful (0 votes)
121 views46 pages

Xenserver Master Class: Automated End-To-End Deployment of Xenserver

The document outlines an automated process for deploying XenServer on multiple hosts using network boot and scripting. It describes using PXE, DHCP and TFTP to boot hosts which then run scripts for silent install, post-install configuration and pooling resources.

Uploaded by

Mohit Gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
121 views46 pages

Xenserver Master Class: Automated End-To-End Deployment of Xenserver

The document outlines an automated process for deploying XenServer on multiple hosts using network boot and scripting. It describes using PXE, DHCP and TFTP to boot hosts which then run scripts for silent install, post-install configuration and pooling resources.

Uploaded by

Mohit Gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 46

Pablo Legorreta

William Elvington
Brian Tannous

XenServer Master Class
Automated End-to-End Deployment of XenServer
2013 Citrix | Confidential Do Not Distribute
Cisco
Size and timeline
1000+ XenServer Host Design
Three weeks
Ciscos vision for UCS
Created scripting cookbook
Framework of scripts
2013 Citrix | Confidential Do Not Distribute
Applied Materials
Size and timeline
200+ XenServer w/HDX 3D Pro Design & Build
Three weeks
Automated process needed
Installed & configured servers in < 2 weeks!
2013 Citrix | Confidential Do Not Distribute
Agenda
Business Cases for Automation
Simple XenServer Deployment
Advanced XenServer Deployment
Automating XenServer Deployments
Demonstration
Business Cases for Automation
2013 Citrix | Confidential Do Not Distribute
Manual Deployment Process
Host
powered
on
Boot via
installation
media
Configure
initial
settings
Install
hotfixes
Configure
post-install
settings
XenServer
deployed
2013 Citrix | Confidential Do Not Distribute
Manual Installation Pain Points
Prone to human error and inconsistencies
Increased installation times at scale
Increased patching and configuration times
Manual rollback of installation
Manual media management

2013 Citrix | Confidential Do Not Distribute
Business Cases for Automated Installation
Rapid deployment of XenServers
Scaling out production
Deploy sandbox environments
Scaling disaster recovery sites
Introducing new configurations and maintaining uniformity
Rolling back new configurations
Reduce human error
Simple XenServer Deployment
2013 Citrix | Confidential Do Not Distribute
Installation Method: From CD
Process:
Mount and boot to ISO
Configure initial settings via wizard
Install hotfixes via console
Configure post-install settings via console
Pros:
Simplest method to implement
Cons:
Prone to human error and inconsistencies
Slowest method to install at scale
2013 Citrix | Confidential Do Not Distribute
Initial Settings
Boot disk
Root password
DOM0 vCPU and memory
Hostname
Management IP and interface
DNS name
NTP server
Time zone


2013 Citrix | Confidential Do Not Distribute
Post-installation: Host Configurations
XenServer hotfixes
Driver updates
Networking
Storage
Virtual machines
2013 Citrix | Confidential Do Not Distribute
Post-installation: Resource Pool Creation
Requirements
Homogeneous servers
Static IP
NTP server
No running VMs
Lengthy process
Join servers serially
Server reboot recommended
Members receive pool configuration
Advanced XenServer Deployment
2013 Citrix | Confidential Do Not Distribute
Installation Method: From Network
Process:
Boot from network: DHCP/PXE/TFTP/HTTP
Configure initial settings
Install hotfixes
Configure post-install settings
Pros:
Centralized installation repository
Positioned to automate installation process
Cons:
Requires networking components

2013 Citrix | Confidential Do Not Distribute
Installation From Network: Boot Requirements
DHCP Service
Provide IP configuration to hosts
Boot Image Deployment:
DHCP option 66 and 67
PXE Service: Port 67,68, or 4011
TFTP Service: Port 69
PXELINUX boot environment
HTTP Service: Port 80 and 443
XenServer installation media
unattend.xml
Automation scripts

2013 Citrix | Confidential Do Not Distribute
Installation From Network: PXELINUX
Used to network boot Linux: pxe + linux (Xen)
Boot file: pxelinux.0
XenServer PXELINUX
Copy all to TFTP root directory
Location:
XenServer Install Media\boot\pxelinux
2013 Citrix | Confidential Do Not Distribute
Installation From Network: PXELINUX Configuration
Configuration: pxelinux.cfg/default
Create this directory and file in TFTP root
Provides initial installation configurations
unattend.XML location (optional)
DOM0 configuration
- CPU
- Memory
Default installation configuration (console, boot file, install, etc.)
Automating
XenServer Deployments
2013 Citrix | Confidential Do Not Distribute
Automating XenServer Deployments
Utilize network installation method
Automation Opportunities:
Silent install
XenServer updates
Driver updates
Create and configure virtual machines
XenServer resource pool creation
Scaling out
Server can be reimaged
2013 Citrix | Confidential Do Not Distribute
Automated Deployment Process
Host
powered on
Boot via
network
installation
Silent install
provided by
unattend.xml
Post install
script
First boot
script
XenServer
deployed
2013 Citrix | Confidential Do Not Distribute
Installation Automation: Unattend.XML
Referenced via pxelinux.cfg/default
Configurations
Primary disk
Guest disk
Keymap
Root password
Installation source location
Driver source location
Post installation script
Admin network interface
Time zone
Name server
Hostname
NTP server
2013 Citrix | Confidential Do Not Distribute
Automated Deployment Process
Host
powered on
Boot via
network
installation
Silent install
provided by
unattend.xml
Post install
script
2013 Citrix | Confidential Do Not Distribute
Installation Automation: Post Install Script
Referenced via unattend.xml
Runs at end of installation before first reboot
Purpose
Downloads first boot script
Sets first boot script to execute on each boot
2013 Citrix | Confidential Do Not Distribute
Automated Deployment Process
Host
powered on
Boot via
network
installation
Silent install
provided by
unattend.xml
Post install
script
First boot
script
2013 Citrix | Confidential Do Not Distribute
Post-Installation Automation: First Boot Script
Referenced via post install script
Purpose
Run during each boot
Perform post-installation configuration via xe and shell commands
Clean up after itself
Potential post installation configurations
Specify license and license server
Perform hotfixes
Driver updates
Configure network settings
Import virtual machines
Configure resources pools
Anything that can be done via xe
2013 Citrix | Confidential Do Not Distribute
Automated Deployment Process
Host
powered on
Boot via
network
installation
Silent install
provided by
unattend.xml
Post install
script
First boot
script
XenServer
deployed
XenServer
Automated Installation
2013 Citrix | Confidential Do Not Distribute
Demonstration:
Start Installation
2013 Citrix | Confidential Do Not Distribute
Automated Install Process: Installation Process
Reboots
Download and runs
post-script.sh
Installs XenServer using HTTP repository
Connects to TFTP server for PXELINUX and unattend.xml
Host Powers on and boots via network
2013 Citrix | Confidential Do Not Distribute
Automated Install Process: first-boot-script.sh
Reboot
Download and runs hostname.sh
Uses inventory CSV file: hostname, IP address, and pool master address
Configure license server and license edition
Download XenServer updates from HTTP server
Runs upon each XenServer reboot. Begins by checking if first run:
Yes: first run
2013 Citrix | Confidential Do Not Distribute
Automated Install Process: first-boot-script.sh
Cleanup
Create resource pool
Using inventory CSV file
Download, clone, and configure virtual machines
Install XenServer updates
Runs upon each XenServer reboot. Begins by checking if first run:
No: second+ run
2013 Citrix | Confidential Do Not Distribute
XenServer Deployed!
2013 Citrix | Confidential Do Not Distribute
How to Get Started
Download package to Windows Server:
http://bit.ly/XSAIM
Execute XSAIMunpack.exe
Copy required files(details in appendix):
XenServer 6.1 installation media
XenServer hotfixes
Virtual machine template
Configure environment specifics
XSPools.csv
Get creative!
SCAN
THIS!
Questions
Work better. Live better. Work better. Live better.
Appendix
2013 Citrix | Confidential Do Not Distribute
Documentation
http://docs.vmd.citrix.com/XenServer/6.1.0/1.0/en_gb/
http://support.citrix.com/article/CTX134586

2013 Citrix | Confidential Do Not Distribute
PXE Setup/pxelinux Documentation
http://www.syslinux.org/wiki/index.php/PXELINUX
http://support.citrix.com/article/CTX116021
http://support.citrix.com/article/CTX137332

2013 Citrix | Confidential Do Not Distribute
XSAIM Tool details: Directory template
Root directory
NWA_PXE
XS61
- XenServer installation media copied here
- boot
- pxelinux
mboot.c32
menu.c32
pxelinux.0
pxelinux.cfg
default
XSScripts
- Scripts go here (First boot, post install, ect.)
XSTemplates
- VM template exported from XenServer goes here
XSUpdates
- xsupdate files go here
Serva.chm
Serva.evc
Serva.ini
Serva32.exe
2013 Citrix | Confidential Do Not Distribute
XSAIM Tool details: TFTP Server Directory
The TFTP server root directory is configured to serve from the ROOT\
NWA_PXE\XS61 directory. The TFTP server root directory contains a copy of
the following files listed below:
XenServer 6.1 install image files
XenServer 6.1 install image\boot\pxelinux\pxelinux.cfg
XenServer 6.1 install image\boot\pxelinux\mboot.c32
XenServer 6.1 install image\boot\pxelinux\menu.c32
XenServer 6.1 install image\boot\pxelinux\pxelinux.0
2013 Citrix | Confidential Do Not Distribute
XSAIM Tool details: HTTP Server Directory
XS61. The contents of this directory are described in the TFTP Server section
above.
XSScripts. This directory contains the scripts required for the XenServer
automated installation. These files are as follows:
first-boot-script.sh
hostname.sh
post-script.sh
XSPool.csv
XSTemplates. This directory contains the virtual machine template required for
virtual machine creation.
XSUpdates. This directory contains the XenServer update files, which are
applied in alphabetical order.
unattend.xml. Used for unattended installation configuration
2013 Citrix | Confidential Do Not Distribute
XSAIM Tool details: XSScripts details
default file. The XenServer default is a configuration file that allows for an
unattended installation of XenServer. The pxe boot configuration as well as a
location to the unattend.xml file.
unattend.xml answer file. The XenServer unattend.xml is a configuration file
that allows for an unattended installation of XenServer. This file contains the
keymap settings, local storage configuration, root password, installation media
and post-installation locations, as well as network time configurations. A full list
of the unattended.xml configurations can be found at: CTX130421.
post-script.sh. The post-script.sh script runs at the very end of the XenServer
installation. This script is only used to download and configure the first-boot-
script.sh to run at startup of the XenServer host. Note: This file must be saved
using UNIX format line endings (LF).
2013 Citrix | Confidential Do Not Distribute
XSAIM Tool details: XSScripts details
first-boot-script.sh. The first-boot-script.sh script runs after the newly imaged
XenServers first boot. This script is used to automatically configure a newly
imaged XenServer host. Firstly, the XenServer host will download XenServer
update files from the HTTP server, assign a license, and set the hostname.
After a reboot, the host will continue by patching itself using updates
downloaded in the previous step in order by file name. If a given update
requires a reboot or a XAPI restart the required action will be preformed and
the host will continue where it left off. After patched, the host will then
download a virtual machine template from the HTTP server, clone two virtual
machines from the template, and assign the appropriate networks to these
virtual machines. Next, the XenServer host will join its pool by using the
information assigned within the XSPools.csv inventory file. Finally, the host will
preform a cleanup of the installation method. Note: This file must be saved
using UNIX format line endings (LF).
2013 Citrix | Confidential Do Not Distribute
XSAIM Tool details: XSScripts details
hostname.sh. The hostname.sh script downloads the XSPools.csv inventory
file and searches for the hosts hostname. If the hosts management IP
address matches a machine in the inventory, the hostname and name-label of
the XenServer host will be configured as per the inventory file. Note: This file
must be saved using UNIX format line endings (LF).
XSPools.csv. The XSPools.csv inventory file is a list of XenServer hostnames,
management IP addresses, and its pool masters IP addresses. Note: This file
must be saved using UNIX format line endings (LF).

You might also like