• 11 Building Webster’s Lab V2 – Citrix XenServer Host and Pool Configuration

    June 7, 2021

    XenServer

    [Updated 28-Aug-2021]

    Now that you have installed the XenServer host, the host’s configuration can begin.

    As stated in the Introduction article, Citrix uses XenCenter to manage one or more XenServer hosts.

    The first thing needed is to download XenCenter from Citrix or browse the XenServer host’s IP address and download either the XenCenter CD image (ISO) or the XenCenter installer (MSI).

    Note: The XenCenter version should be the same or newer, not older, than the XenServer version. For example, don’t use XenCenter 7.1 Long Term Service Release (LTSR) to configure a XenServer 8.2 host, but you can use XenCenter 8.2 to configure a XenServer 7.1 LTSR host.

    From Tobias:

    “Note that on a single PC host, you can only install one version of XenCenter. Be wary of differences in versions which may show options for different versions that are not compatible or no longer exist.”

    XenCenter is very easy to install. Double-click the CitrixHypervisor-8.2.0-XenCenter.msi file to start the XenCenter installation. The install is a quick and easy Next, Install, Finish routine, as shown in Figures 1 through 4.

    Note: Citrix could have updated XenCenter since I wrote this chapter. Use the XenCenter installation file you downloaded.

    Figure 1
    Figure 1

    I decided not to install the two additional language packs.

    Figure 2
    Figure 2
    Figure 3
    Figure 3
    Figure 4
    Figure 4

    Launch XenCenter either searching for “XenCenter” or from the Start Menu, as shown in Figure 5.

    Figure 5
    Figure 5

    Click Add a Server, as shown in Figure 6.

    Figure 6
    Figure 6

    Enter the XenServer host’s IP address, log in using the root credentials created during the initial XenServer installation, and click Add, as shown in Figure 7.

    Figure 7
    Figure 7

    Click Accept on the Security Certificate warning as shown in Figure 8.

    Figure 8
    Figure 8

    Decide whether to Save and restore server connection state on startup and click OK as shown in Figure 9.

    If you save the connection state and a master password is wanted, select Require a master password and enter the password when prompted.

    Figure 9
    Figure 9

    Decide whether to enroll in Health Checks or not. If no, Click Close, as shown in Figure 10, and continue to Figure 13.

    Figure 10
    Figure 10

    If yes, click Enroll now, as shown in Figure 11.

    Figure 11
    Figure 11

    Enter the required information and click OK, as illustrated in Figure 12.

    Figure 12
    Figure 12

    After entering valid MyCitrix credentials, click Close, as shown in Figure 13.

    Figure 13
    Figure 13

    The host is added to XenCenter, as shown in Figure 14.

    Figure 14
    Figure 14

    The host is Unlicensed. Why? Licensing XenServer requires a Citrix license server and license file. As a CTP, I have the license file, but so far, in this lab building process, there is no VM to install the Citrix License Server component on. Later in the lab building process, the XenServer hosts are licensed.

    Repeat the steps in Figures 6 through 14 for the additional hosts, as shown in Figure 15.

    Figure 15
    Figure 15

    Managing individual hosts isn’t very productive. The answer is to create a Resource Pool. First, there are rules to play by. Let’s let Citrix explain in XenServer resource pools.

    A resource pool is a homogeneous (or heterogeneous with restrictions) aggregate of one or more XenServer hosts, up to a maximum of 64. The definition of homogeneous is:

    • CPUs on the server joining the pool are the same (in terms of the vendor, model, and features) as the CPUs on servers already in the pool.
    • The server joining the pool runs the same version of XenServer software, at the same patch level, as servers already in the pool.

    The software enforces extra constraints when joining a server to a pool. In particular, XenServer checks that the following conditions are valid for the server joining the pool:

    • The server is not a member of an existing resource pool.
    • The server has no shared storage configured.
    • The server is not hosting any running or suspended VMs.
    • No active operations are in progress on the VMs on the server, such as a VM shutting down.
    • The clock on the server synchronizes to the same time as the pool master (for example, by using NTP).
    • There is no bond on the management interface of the server. You can configure the management interface when the server successfully joins the pool.
    • The management IP address is static, either configured on the server or using an appropriate configuration on your DHCP server.

    My hosts meet all the criteria:

    • Have the same CPU
    • Running the same version of XenServer
    • Not a member of an existing pool
    • There is no shared storage configured
    • There are no VMs, running or otherwise
    • Hosts use the same NTP server
    • The management interface is not in a bond
    • The management IP address is static

    From Tobias:

    “Note that to join servers into a pool, all servers must also be at the same hotfix level. Also, as you point out, the server must not have the primary management interface bonded, or it can lead to major confusion. Another important point is that the number, type, and order of NICs on all servers must match exactly (such as 4 x 1, Gb, followed by 2x 10 Gb, followed by 2 x 1Gb) as eth0-eth9. The brand is not so important, but the capacity and number, and order most are. Even if unused, additional NICs on servers can lead to problems (at least from my experience).”

    To create the resource pool, either right-click the top XenCenter node in XenCenter and select New Pool (Figure 16) or Click Pool, New Pool from the menu (Figure 17).

    Figure 16
    Figure 16
    Figure 17
    Figure 17

    Enter a Name, optional Description, select the Master, select the Additional members and click Create Pool as shown in Figure 18.

    Figure 18
    Figure 18

    After a few minutes, the pool successfully creates, as shown in Figure 19.

    Figure 19
    Figure 19

    Now on to the fun stuff: Networking.

    My TinkerTry server has two 1Gb NICs and two 10Gb NICs. The Management Interface uses the 1Gb NICs, and VMs use the 10Gb NICs.

    In the XenCenter console, click on the pool, and then, in the right frame, click on the Networking tab, as shown in Figure 20.

    Figure 20
    Figure 20

    First, select Network 2 (one of the 10G NICs) and click Properties, shown in Figure 21.

    Figure 21
    Figure 21

    Click on Network Settings, enter an MTU of 9000 (to enable Jumbo Frame support), select Automatically add this network to new virtual machines and click OK as shown in Figure 22.

    Note: If a XenServer host or pool has enough NICs, you can create a storage-specific NIC or Bond. In that case, you probably would not want to add that NIC or Bond automatically to new VMs. Also, if you have VLANs for specific traffic and VLANs to segregate VM traffic, you may not want to automatically add any NIC or Bond to VMs. In that case, you would manually add a NIC or Bond to a VM when you create a VM.

    Figure 22
    Figure 22

    After a minute, Network 2 is back Connected and showing the new MTU, as shown in Figure 23.

    Figure 23
    Figure 23

    Repeat for Network 3. After a bit, both Network 2 and Network 3 show as Connected with an MTU of 9000, as shown in Figure 24.

    Figure 24
    Figure 24

    Click on Network 2 and click Add Network…, as shown in Figure 25.

    Figure 25
    Figure 25

    Select Bonded Network and click Next, as shown in Figure 26.

    Figure 26
    Figure 26

    Select the two NICs for the bond, select the Bond mode, since these are the 10Gb NICs, change MTU to 9000, verify that Automatically add this network to new virtual machines is selected, and click Finish, as shown in Figure 27.

    From Tobias:

    “I take it your network doesn’t support LACP bonds? If it does, that’s what I generally recommend.”

    Webster:

    “Yes, it does. How to configure LACP on my switch is beyond me right now.”

    From Tobias:

    “For servers/pools with VMs that use different interfaces/subnets/VLANs, etc. I generally do not make any of the interfaces such that they automatically get added, as this creates unnecessary extra VIFs that serve no purpose.”

    Figure 27
    Figure 27

    After a minute, you see the new bond, Bond 2+3, in a Connected state, as shown in Figure 28.

    Figure 28
    Figure 28

    Click on Network 0 and click Add Network…, as shown in Figure 29.

    Figure 29
    Figure 29

    Select Bonded Network and click Next, as shown in Figure 30.

    Figure 30
    Figure 30

    Select the two NICs for the bond, select the Bond mode, verify that Automatically add this network to new virtual machines is NOT selected, and click Next as shown in Figure 31.

    Figure 31
    Figure 31

    Click Create bond anyway on the warning popup, as shown in Figure 32.

    Figure 32
    Figure 32

    After a minute, you see the new bond, Bond 0+1, in a Connected state, and the Management Interface uses the new bond, as shown in Figure 33.

    Figure 33
    Figure 33

    Now on to storage.

    Note: In the Introduction article, I stated that my permanent VMs reside in XenServer. I never move the permanent VMs between hosts. Those VMs reside in a local SR. For me, this allows for faster boot times than VMs that reside in shared storage as there is no network traffic to load the VM. The Microsoft infrastructure VMs all reside in the local SR on each XenServer host.

    From Tobias:

    “Note, of course, that putting a VM on a local SR prevents it from being agile (able to be moved readily to a different host within the pool).”

    To create an SR for shared VM storage, right-click the pool and click New SR…, as shown in Figure 34.

    Figure 34
    Figure 34

    Select NFS and click Next, as shown in Figure 35.

    From Tobias:

    “For NFS connections, make sure the NFS host is set to allow connections from all the XenServer/Citrix Hypervisor hosts and that file permissions are set accordingly. I’d also suggest looking into increasing the buffer sizes (rsize, wsize). There are many articles on optimizing NFS connectivity, beyond this scope.”

    Figure 35
    Figure 35

    Enter a Name, an optional Description, and click Next, as shown in Figure 36.

    Figure 36
    Figure 36

    Enter the NFS path information for the Share Name, select NFSv4, and click Finish, as shown in Figure 37.

    From Tobias:

    “NFS3 vs. NFS4 is still a big subject of debate! I have seen in some cases NFS3 perform slightly better than NFS4. I would follow the storage device manufacturer’s recommendations.”

    Figure 37
    Figure 37

    To create an SR for Microsoft-related ISOs, right-click the pool and click New SR…, shown in Figure 34.

    Select NFS ISO and click Next, as shown in Figure 38.

    Figure 38
    Figure 38

    Enter a Name, an optional Description, and click Next, as shown in Figure 39.

    Figure 39
    Figure 39

    Enter the NFS path information for the Share Name, select NFSv4, and click Finish, as shown in Figure 40.

    Figure 40
    Figure 40

    The new SRs are now shown in XenCenter, as seen in Figure 40.

    Figure 41
    Figure 41

    To add the 1TB SSD as a local SR, I followed the process I documented several years ago in Adding an SSD Storage Device to Citrix XenServer.

    After following that process, the 1TB SSD local SRs show in XenCenter, as shown in Figure 42.

    Figure 42
    Figure 42

    There is still one thing left to do, see if there are any updates for the hosts.

    From Tobias:

    “Again, make sure the updates are all the same on all servers before creating the pool; it may be less work to do so beforehand as I keep running into issues where CPU masks don’t match in the process of applying hotfixes and then to migrate VMs, you have to use the CLI and force them. I’ve complained to Citrix about this several times (that XenCenter doesn’t contain a “force” option), but I hear only crickets.”

    In the XenCenter console, click Notifications in the bottom left pane and click Updates in the upper left pane, as shown in Figure 43. If any updates are available, click the Actions dropdown and select Download and install, shown in Figure 43.

    Figure 43
    Figure 43

    I am fortunate that as a CTP, Citrix provides CTPs with product licenses. Instead of installing updates to each host, I license my pool and use XenCenter’s ability to automatically download and install all updates to every pool member.

    To license a XenServer pool, click Tools, License Manager…, as shown in Figure 44.

    Figure 44
    Figure 44

    Click Assign License…, as shown in Figure 45.

    Figure 45
    Figure 45

    Enter the IP address or FQDN of the Citrix License Server, select the appropriate License type, and click OK, as shown in Figure 46.

    Figure 46
    Figure 46

    If the Citrix license file contains license information for the license type selected, click Close, as shown in Figure 47.

    If an error is displayed, correct the license type selection.

    Figure 47
    Figure 47

    The Pool now shows as licensed, as shown in Figure 48.

    Figure 48
    Figure 48

    Now that my pool is licensed, I can add my fourth XenServer host to the pool using the process shown in Figures 6 through 14. Figure 49 shows all four servers in the pool.

    Figure 49
    Figure 49

    To install all XenServer updates to the pool, click Tools, Install Update…, as shown in Figure 50.

    Figure 50
    Figure 50

    Click Next, as shown in Figure 51.

    Figure 51
    Figure 51

    Select Automated Updates, and click Next, as shown in Figure 52.

    Figure 52
    Figure 52

    Select the pool and click Next, as shown in Figure 53.

    Figure 53
    Figure 53

    If all pre-checks are successful, click Next, as shown in Figure 54. If the pre-checks report any issues, correct the issues and then continue.

    Figure 54
    Figure 54

    As shown in Figure 55, the updates are downloaded and installed.

    Figure 55
    Figure 55

    After the installation of the updates, click Finish, as shown in Figure 56.

    Figure 56
    Figure 56

    There is an update for XenCenter 8.2. Installing updates for XenCenter is the same as installing XenCenter.

    Up next: Create a Server 2019 Template Image

    Landing page for the article series







    About Carl Webster

    Carl Webster is an independent consultant specializing in Citrix, Active Directory, and technical documentation. Carl (aka “Webster”) serves the broader Citrix community by writing articles (see CarlWebster.com) and by being the most active person in the Citrix Zone on Experts Exchange. Webster has a long history in the IT industry beginning with mainframes in 1977, PCs and application development in 1986, and network engineering in 2001. He has worked with Citrix products since 1990 with the premiere of their first product – the MULTIUSER OS/2.

    View all posts by Carl Webster

    No comments yet.

    Leave a Reply