Carl Webster Accessibility Statement

Carl Webster is committed to facilitating the accessibility and usability of its website, carlwebster.com, for everyone. Carl Webster aims to comply with all applicable standards, including the World Wide Web Consortium’s Web Content Accessibility Guidelines 2.0 up to Level AA (WCAG 2.0 AA). Carl Webster is proud of the efforts that we have completed and that are in-progress to ensure that our website is accessible to everyone.

If you experience any difficulty in accessing any part of this website, please feel free to email us at info@carlwebster.com and we will work with you to provide the information or service you seek through an alternate communication method that is accessible for you consistent with applicable law (for example, through telephone support).

  • 10 Building Webster’s Lab V1 – Citrix XenServer Host and Pool Configuration

    September 20, 2019

    Blog, XenServer

    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 to the IP address of the XenServer host and download either the XenCenter CD image (ISO) or the XenCenter installer (MSI).

    Note: The XenCenter version should be the same version 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.0 host but you can use XenCenter 8.0 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 difference is 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.0.0-XenCenter.msi file to start the XenCenter installation. The install is a quick and easy Next, Next, Install, Finish routine as shown in Figures 1 through 4.

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

    Launch XenCenter by 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 IP address of a XenServer host, and 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.

    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

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

    Figure 13
    Figure 13

    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 will get licensed.

    Repeat the steps in Figures 6 through 13 for the additional host as shown in Figure 14.

    Figure 14
    Figure 14

    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 is running 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 true 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 is synchronized to the same time as the pool master (for example, by using NTP).
    • The management interface of the server is not bonded. You can configure the management interface when the server successfully joins the pool.
    • The management IP address is static, either configured on the server itself or by using an appropriate configuration on your DHCP server.

    My three 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 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 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 15) or Click Pool, New Pool from the menu (Figure 16).

    Figure 15
    Figure 15
    Figure 16
    Figure 16

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

    Figure 17
    Figure 17

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

    Figure 18
    Figure 18

    Now on to the fun stuff: Networking.

    My TinkerTry server has two 1Gb NICs and two 10Gb NICs. I want to use all four NICs but can only use three because of a lack of 10G switch ports. The Management Interface uses the 1Gb NICs, and VMs use the 10Gb NIC.

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

    Figure 19
    Figure 19

    First, select Network 2 (the 10G NIC) and click Properties, as shown in Figure 20.

    Figure 20
    Figure 20

    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 21.

    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 types of traffic and VLANs to segregate VM traffic, you may not want to add any NIC or Bond to VMs automatically. In that case, you would manually add a NIC or Bond to a VM when you create a VM.

    Figure 21
    Figure 21

    After a minute, you will see Network 2 back in a Connected state and showing the new MTU, as shown in Figure 22.

    Figure 22
    Figure 22

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

    Figure 23
    Figure 23

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

    Figure 24
    Figure 24

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

    Figure 25
    Figure 25

    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 26.

    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 26

    Figure 26

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

    Figure 27
    Figure 27

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

    Figure 28
    Figure 28

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

    Figure 29
    Figure 29

    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 30.

    Figure 30
    Figure 30

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

    Figure 31
    Figure 31

    After a minute, you will see the new bond, Bond 0+1, in a Connected state and the Management Interface is using the new bond, as shown in Figure 32.

    Figure 32
    Figure 32

    Now on to storage.

    Note: In the Introduction article, I stated my permanent VMs reside in XenServer. I never move the permanent VMs between hosts. For those VMs, they 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. I use the shared storage SR for Citrix App Layering and the VMs created for the various layers.

    From Tobias:

    “Note of course that putting a VM on a local SR will prevent 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 33.

    Figure 33
    Figure 33

    Select NFS and click Next as shown in Figure 34.

    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 a number of articles on optimizing NFS connectivity, beyond this scope.”

    Figure 34

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

    Figure 35
    Figure 35

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

    Note: I am selecting NFSv3 because of the issues with vCenter and NFSv4 on the Synology NAS. Even though XenServer had no issues with NFSv4, I went with the lowest common denominator of NFSv3.

    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 36
    Figure 36

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

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

    Figure 37
    Figure 37

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

    Figure 38
    Figure 38

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

    Note: Why NFSv4 here? These Visual Studio ISOs are on a different Synology NAS that is not used by VMware. Therefore, NFSv4 is used.

    Figure 39
    Figure 39

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

    Figure 40
    Figure 40

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

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

    Figure 41
    Figure 41

    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 actually 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, first, click Notifications in the bottom left pane and then click Updates in the upper left pane, as shown in Figure 42. If there are any updates available, click the Actions dropdown and select Download and install, also shown in Figure 42.

    Figure 42
    Figure 42

     







    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

    Comments are closed.