A Nutanix AHV connector configuration contains the credentials and storage container the appliance needs to connect to Nutanix Acropolis.
You can use this connector configuration to access a specific location in your Nutanix environment when you:
- Import a clean OS image for the purposes of creating an OS layer.
- Package layers as part of creating a Platform or App layer, or as part of adding a version to a layer.
- Publish layered images to Nutanix.
Before you start
You can use your Nutanix Acropolis environment for creating layers, and publishing layered images. Each connector configuration accesses a specific storage container in your Nutanix Acropolis environment where you can create your layers or publish layered images.
You may need more than one Nutanix Acropolis connector configuration to access the correct container for each purpose. Further, you may want to publish each layered image to a container convenient to the systems you will be provisioning with the published image. For more about connectors and connector configurations, see Connector configurations.
Specify the Nutanix Prism Elements console
App Layering uses the Prism Elements web console, and does not support the Prism Central console. When configuring the Nutanix connector be sure to enter the URL for the Prism Elements console.
Error you receive if Prism Central is specified in the connector
If Prism Central is used in the connector configuration, you receive the error, “internal error 500.”
Add the Citrix App Layering appliance to the Nutanix whitelist
Make sure that the appliance is added to your Nutanix Whitelist so that it can access the appropriate storage containers, as needed. This can be accomplished through configuring Filesystem and/or Container-level whitelist settings. For details about adding a whitelist in Nutanix, please refer to the Nutanix documentation.
Required information for Acropolis connector configuration settings
The Nutanix connector configuration wizard let’s you define the credentials and container to use for a new configuration.
The fields are case sensitive, so any values that you enter manually must match the case of the object in Nutanix, or the validation will fail.
- Connector Configuration Name - A useful name to help identify and keep track of this connector configuration.
- Web Console (Prism) Address - The host name (resolvable via DNS) or IP address of the Prism Web Console. This is the same address you use to access the Nutanix Prism Web Console.
User Name/Password - Credentials that will be used when interacting with the Nutanix system. The specified user must have sufficient privileges for the following operations:
- VM operations:
- power on/off
- attach virtual disks
- Image operations:
- update (aka upload)
- Virtual disks:
- attach to VMs
- VM operations:
- Ignore Certificate Errors - Lets you use SSL encryption for the API connection traffic between the Connector and Nutanix Acropolis. This field is unchecked by default.
- Virtual Machine Template (recommended) - Virtual Machine Template that can be used to clone a VM with the hardware settings for Nutanix, including memory, CPUs, and video settings. You can specify the host, datastore, and network for configuring the resulting VMs. Since there is no concept of a “template” in Nutanix, these “templates” are actual VMs. The OS version used by the selected “template” must match the OS version that you are using for building layers or publishing layered images. The template must not have any disks attached, and must have at least one network card attached. If it does not, you will see an error when trying to validate or save the configuration.
- Storage Container - Lets you select the storage container for the images (vhds) that will get uploaded and the resulting virtual disks that will get created from those images. When creating App Layers and OS Layer versions, we are required to mount the storage container as an NFS mount point. This means that the selected storage container MUST have the appliance included in a white list of clients that are allowed to mount the storage container via NFS. The white list configuration must be done through the Nutanix product (either their web console or through their CLI tools). If the appliance is not properly white listed for the selected storage container, then the validation phase will fail, and the error will be indicated with the storage container selection.
- Layer Disk Cache Size in GB (optional) - Specifies the size of the cache allowed for each layer.
How Virtual Machines are Organized
Nutanix does not provide a mechanism for organizing virtual machines. Because of this, it may be difficult to find the virtual machines created by your appliance when the total number of virtual machines is large. To help you find these VMs, the following naming conventions are used:
Packaging Machines (virtual machines created during the process of creating an App Layer or OS Version)
- The virtual machine name will start with the layer name that is being created/modified
- The virtual machine names will end with the following text: (Packaging Machine)
Layered Image Virtual Machines (virtual machines created as a result of publishing a layered image)
- The virtual machine name will start with the image name that was published
- The virtual machine name will end with the following text: (Published Image)
When viewing virtual machines through the Nutanix web console, you can search for virtual machines by filtering on:
- “Citrix App Layering” to find all virtual machines created by the App Layering service.
- “Citrix App Layering Packaging Machine” to find all virtual machines created for layer management jobs.
- “Citrix App Layering Published Image” to find all virtual machines created to publish a layered image.
- Image name or layer name to find virtual machines related to a specific layered image publishing job or App or OS creation.
Virtual Machine Network Connectivity
The virtual network settings of the source template specified in the Nutanix AHV connector configuration will be carried over when creating any VMs through the Nutanix Acropolis Hypervisor (AHV) Connector. There is no option in the Connector Configuration UI to override the network settings.
Create a connector configuration
To enter values:
- The first three Connector fields must be entered manually. Once the credentials in those fields are validated, you can select values for the remaining fields from drop-down menus.
- To enter values manually, click to put the cursor in the field and type the value, making sure that the case matches the value in Acropolis.
- To select a value from a drop-down list, click once to put the cursor in the field, and a second time to display the list of possible values.
To add a new connector configuration
- Log into the management console as administrator.
- Select the System > Connectors tab.
- Select Add Connector Config on the Action bar.
- Below the list of connector configurations, click the New button. This opens a small dialog box.
- Select Nutanix from the connector Type dropdown menu and click New. This opens the connector configuration wizard.
- Enter the configuration Name, and the Acropolis Address, User Name, and Password). For guidance, see the above field definitions.
- Click the CHECK CREDENTIALS button below the Acropolis Configuration fields. The Virtual Machine Clone Settings field is then enabled.
- Select the Virtual Machine Template.
- Select the Storage Repository and click the TEST button to verify that the appliance can access the container specified using the credentials supplied.
- Click Save. The new connector configuration should now be listed on the Connector page.
Script configuration (Advanced feature, Optional)
When creating a new connector configuration, you can configure an optional Powershell script to run on any Windows machine running the App Layering Agent. These scripts must be stored on the same machine that the Agent is installed on, and will only be executed after a successful deployment of a Layered Image.
Some preset variables are available to enable scripts to be reusable with different template images and different connector configurations. These variables will also contain information needed to identify the virtual machine created as part of the published Layered Image in Acropolis.
Execution of these scripts will not affect the outcome of the publish job, and progress of commands executed in the script will not be visible. The Acropolis connector logs will contain the output of the executed script.
Configure a Script (optional)
If you want a script to run each time a layered image is published, complete these steps using the values described in the sections that follow.
- Complete and save the connector configuration as described above.
Before selecting Script Configuration page, you must save (or discard) any edits to the Connector Configuration settings,
- If the Navigation menu on the left is not open, select it and click Script Configuration to open the Script Path page.
- Complete the required fields using the values detailed here, and click Save.
Script Configuration fields
- Enable script- Select this check box to enable the remaining fields. This allows you to enter a script that will be executed each time a layered image is published.
- Script Agent- The agent machine where the scripts will be located and executed from.
- Username (optional)- The username to impersonate when running the script. This can be used to ensure the script runs in the context of a user that has the needed rights/permissions to perform the operations in the script.
- Password (optional)- The password for the specified username.
- Script Path- A full path and filename on the agent machine where the script file resides.
Other Script Configuration values
When the script is executed the following variables will be set and can be used in the powershell script:
|Value||Applies to connector types:||Value determined by which code:||Description|
|connectorCfgName||Common||Common||This is the name of the connector configuration that the script configuration is associated with.|
|imageName||Common||Common||This is the name of the layered image template that was used to build/publish the layered image.|
|osType||Common||Common||This is the OS type of the layered image that was published. It can be one of the following values: Windows10; Windows1064; Windows7; Windows7 64-bit; Windows2016 64-bit; Windows2012 64-bit; Windows2008 64-bit|
|virtualInfrastructureServer||Common||Nutanix AHV||The Nutanix AHV (Prism Server) specified in the connector configuration.|
|vmId||Common||Nutanix AHV||The virtual machine UUID (same as vmUuid).|
|vmName||Common||Nutanix AHV||The name of the virtual machine that was created.|
|vmNetwork||Common||Nutanix AHV||The name of the virtual network that the main NIC of the virtual machine is connected to.|
|vmNetworkId||Common||Nutanix AHV||The UUID of the virtual network that the main NIC of the virtual machine is connected to.|
|vmNetworkMAC||Common||Nutanix AHV||The MAC address of the main NIC that is connected to the virtual network specified in vmNetwork and vmNetworkId.|
|vmUuid||Common||Nutanix AHV||The virtual machine UUID (same as vmId).|
The virtual machine UUID (same as vmId).
Definition Scope - Defines whether the scripts variable is set for all Connector types or whether it is specific to a particular Connector type.
Value Source - Defines whether the variable value is determined by common code or by Connector-specific code.