Introduction

Citrix VDI are virtualization solutions that give IT control of virtual machines, applications, licensing, and security while providing access for any device.

Citrix Virtual Applications and Desktops allow:

  • End users to run applications and desktops independently of the device’s operating system and interface.
  • Administrators to manage the network and control access from selected devices or all devices.
  • Administrators to manage an entire network from a single data center.

Citrix Virtual Applications and Desktops share a unified architecture called FlexCast Management Architecture (FMA). FMA’s key feature is to run multiple versions of Citrix Virtual Applications or Citrix Virtual Desktops from a single site and integrated provisioning.

Citrix OnPrem VDI

Discovery Use cases

Discovery Citrix VDI elements delivery groups and machines.

Monitoring Use cases

Using the REST APIs of the Citrix Monitor Service to collect, analyze, and categorize data from Citrix Virtual Applications and Desktops.

Hierarchy of Citrix VDI

Hypervisor (Xen server)
     - Delivery Groups
      - Machines(desktops)

Prerequisites

OpsRamp Classic Gateway Version 12.0.1 and above.

Default monitoring configurations

Citrix VDI has default Global Device Management Policies, Global Templates, Global Monitors and Global Metrics in OpsRamp. You can customize these default monitoring configurations as per your business use cases by cloning respective Global Templates and Global Device Management Policies. OpsRamp recommends doing this activity before installing the application to avoid noise alerts and data.

  1. Default Global Device Management Policies

    OpsRamp has a Global Device Management Policy for each Native Type of Citrix Onprem VDI. You can find those Device Management Policies at Setup -> Resources -> Device Management Policies -> Search with suggested names in global scope. Each Device Management Policy follows below naming convention:

    {appName nativeType - version}

    Ex: citrix-onprem-vdi Citrix Hypervisors - 1 (i.e, appName = citrix-onprem-vdi, nativeType = Citrix Hypervisors, version = 1)

  2. Default Global Templates

    OpsRamp has a Global Template for each Native Type of Citrix VDI. You can find those templates at Setup -> Monitoring -> Templates -> Search with suggested names in global scope. Each template follows below naming convention:

    {appName nativeType 'Template' - version}

    Ex: citrix-onprem-vdi Citrix Hypervisors Template - 1 (i.e, appName = citrix-onprem-vdi, nativeType = Citrix Hypervisors Template, version = 1)

  3. Default Global Monitors

    OpsRamp has a Global Monitors for each Native Type which has monitoring support. You can find those monitors at Setup -> Monitoring -> Monitors -> Search with suggested names in global scope. Each Monitors follows below naming convention:

    {monitorKey appName nativeType - version}

    Ex: Citrix Hypervisors Monitor citrix-onprem-vdi Citrix Hypervisors 1(i.e, monitorKey = Citrix Hypervisors Monitor, appName = citrix-onprem-vdi, nativeType = Citrix Hypervisors, version = 1)

Configure and install the integration

  1. From All Clients, select a client
  2. Go to Setup > Integrations and Apps.
  3. Click Manage Apps.
    Notes:
    • If there are already installed applications, it will redirect to the INSTALLED APPS page, where all the installed applications are displayed.
    • If there are no installed applications, it will navigate to the ADD APP page.
Citrix OnPrem VDI
  1. Click + ADD on the INSTALLED APP page. The ADD APP page displays all the available applications along with the newly created application with the version.
    Note: You can even search for the application using the search option available. Also you can use the All Categories option to search.
Citrix OnPrem VDI
  1. Click ADD in the Citrix OnPrem VDI application.
  2. In the Configurations page, click + ADD. The Add Configuration page appears.
  3. Enter the below mentioned BASIC INFORMATION:
FunctionalityDescription
NameEnter the name for the configuration.
Host Name / IP AddressHost name / IP address of the target
PortPort

Note: By default 80 is added.
CredentialsSelect the credentials from the drop-down list.

Note: Click + Add to create a credential.

Notes:

  • Select the isSecure checkbox.
  • Select App Failure Notifications; if turned on, you will be notified in case of an application failure that is, Connectivity Exception, Authentication Exception.
  1. In the RESOURCE TYPE section, select:
    • ALL: All the existing and future resources will be discovered.
    • SELECT: You can select one or multiple resources to be discovered.
  2. In the DISCOVERY SCHEDULE section, select Recurrence Pattern to add one of the following patterns:
    • Minutes
    • Hourly
    • Daily
    • Weekly
    • Monthly
  3. Click ADD.
Citrix OnPrem VDI
  1. Now the configuration is saved and displayed on the configurations page after you save it.
    Note: From the same page, you may Edit and Remove the created configuration.
  2. Click NEXT
  3. In the Installation page, select an existing registered gateway profile, and click FINISH.
Citrix OnPrem VDI

The application is now installed and displayed on the Installed Integration page. Use the search field to find the installed application.

Modify the Configuration

View the Citrix OnPrem VDI details

The Citrix OnPrem VDI integration is displayed in the Infrastructure > Resources > Xen Server. You can navigate to the Attributes tab to view the discovery details, and the Metrics tab to view the metric details for Citrix OnPrem VDI.

Citrix OnPrem VDI
Citrix OnPrem VDI

Supported metrics

Native TypeMetric NameDisplay NameUnitsDescription
Hypervisorcitrix_onprem_hypervisor_stateCitrix Onprem Hypervisor StateHypervisor Availability. Possible values 0,1,2,3 Active, Deleted, RequiresResolution, Stub.
Delivery Groupcitrix_onprem_desktops_in_maintenancemodeCitrix Onprem Desktops In Maintenance ModeCitrix Onprem Desktops In Maintenance Mode.
citrix_onprem_desktops_in_maintenancemode_percentCitrix Onprem Desktops In Maintenance Mode Percent%Citrix Onprem Desktops In Maintenance Mode Percent.
citrix_onprem_desktops_total_countCitrix Onprem Desktop Total CountCitrix Onprem Desktop Total Count.
citrix_onprem_desktops_preparingCitrix Onprem Desktop PreparingCitrix Onprem Desktop Preparing
citrix_onprem_desktops_preparing_percentCitrix Onprem Desktop Preparing Percent%Citrix Onprem Desktop Preparing Percent
citrix_onprem_desktops_failure_countCitrix Onprem Desktops Failure CountCitrix Onprem Desktops Failure Count
Desktopcitrix_onprem_desktop_power_stateCitrix Onprem Desktop Power StateCitrix Onprem Desktop Power State. Possible values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. Unknown, Unavailable, Off, On, Suspended, TurningOn, TurningOff, Suspending, Resuming, Unmanaged, NotSupported.
citrix_onprem_desktop_registration_stateCitrix Onprem Desktop Registration StateCitrix Onprem Desktop Registration State.Possible values: 0, 1, 2. Unknown, Registered, Unregistered.
citrix_onprem_desktop_unregisteredpoweronstateCitrix Onprem Desktop UnRegistered PowerOn StateCitrix Onprem Desktop UnRegistered PowerOn State.
citrix_onprem_desktop_cpu_usage_percentCitrix Onprem Desktop CPU Usage Percent%Citrix Onprem Desktop CPU Usage Percent.
citrix_onprem_desktop_memory_usageCitrix Onprem Desktop Memory UsageMBCitrix Onprem Desktop Memory Usage.
citrix_onprem_desktop_memory_available_in_mbCitrix Onprem Desktop Memory Available In MBMBCitrix Onprem Desktop Memory Available In MB.

Risks, Limitations & Assumptions

  • Application can handle Critical/Recovery failure notifications for below two cases when user enables App Failure Notifications in configuration:

    • Connectivity Exception (ConnectTimeoutException, HttpHostConnectException, UnknownHostException)
    • Authentication Exception(UnauthorizedException)
  • Application will not send any duplicate/repeat failure alert notification until the already existed critical alert is recovered.

  • Application cannot control monitoring pause/resume actions based on above alerts.

  • Metrics can be used to monitor Citrix resources and can generate alerts based on the threshold values.

  • We are not providing these following requested metrics as we are not getting any response in the API’s:

        DesktopConditions_ICALatency,ICASessionLatency,DatabaseConnected,DesktopsAvailable, DesktopsAvailablePercent, BrokerServiceStatus, PercentProcessorTime, PhysicalDiskCurrentQueueLength, PhysicalDiskTotalDiskBytesPerSec, DesktopsNeverRegistered, DesktopsNeverRegisteredPercent.
    
        
  • Macro replacement limitation (i.e, customization for threshold breach alert subject, description).

  • Component level thresholds can be configured on each resource level.

  • No support of showing activity log and applied time.

  • No support for the option to get Latest snapshot metric.

  • Application is not compatible with Cluster Gateway.