Skip to content

Latest commit

 

History

History
173 lines (124 loc) · 12.8 KB

index.md

File metadata and controls

173 lines (124 loc) · 12.8 KB
page_title subcategory description
Citrix Provider
Manage and deploy Citrix resources easily using the Citrix Terraform provider. The provider currently supports both Citrix Virtual Apps & Desktops (CVAD 2311+) and Citrix Desktop as a Service (DaaS) solutions. You can automate creation of site setup including host connections, machine catalogs and delivery groups etc for both CVAD and Citrix DaaS. You can deploy resources in Citrix supported hypervisors and public clouds. Currently, we support deployments in Nutanix, VMware vSphere, XenServer, Microsoft Azure, AWS EC2 and Google Cloud Compute. Additionally, you can also use Manual provisioning or RemotePC to add workloads. The provider is developed and maintained by Citrix.

Citrix Provider

Manage and deploy Citrix resources easily using the Citrix Terraform provider. The provider currently supports both Citrix Virtual Apps & Desktops (CVAD 2311+) and Citrix Desktop as a Service (DaaS) solutions. You can automate creation of site setup including host connections, machine catalogs and delivery groups etc for both CVAD and Citrix DaaS. You can deploy resources in Citrix supported hypervisors and public clouds. Currently, we support deployments in Nutanix, VMware vSphere, XenServer, Microsoft Azure, AWS EC2 and Google Cloud Compute. Additionally, you can also use Manual provisioning or RemotePC to add workloads. The provider is developed and maintained by Citrix.

Documentation regarding the Data Sources and Resources supported by the Citrix Provider can be found in the navigation to the left.

Check out the release notes to find out more about the provider's latest features and version information.

Getting Started

New to Terraform? Click here to learn more.

Importing existing Citrix resources into Terraform

Experience the immediate benefits of Terraform by importing your Citrix resources (CVAD or DaaS) using our Onboarding Script. This allows you to quickly adopt infrastructure as code and streamline your infrastructure management. A comprehensive ReadMe is available to guide you through the process.

Creating Citrix resources via Terraform

Please refer to Citrix Tech Zone to find detailed guides on how to deploy and manage resources using the Citrix provider:

Demo video

alt text https://www.youtube.com/watch?v=c33sMLaCVjY

(On-Premises Only) Enable Web Studio

For on-premises sites with version >= 2311 are supported. Web Studio needs to be installed and configured for the provider to work.

Frequently Asked Questions

What resource is supported for different connection types?

Connection Type Hypervisor Resource Pool MCS Power Managed MCS Provisioning PVS Manual/Remote PC
AzureRM ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
AWS EC2 ✔️ ✔️ ✔️ ✔️ ✖️ ✔️
GCP ✔️ ✔️ ✔️ ✔️ ✖️ ✔️
vSphere ✔️ ✔️ ✔️ ✔️ ✖️ ✔️
XenServer ✔️ ✔️ ✔️ ✔️ ✖️ ✔️
Nutanix ✔️ ✔️ ✔️ ✔️ ✖️ ✔️
SCVMM ✔️ ✔️ ✔️ ✔️ ✖️ ✔️

Example Usage

# Cloud Provider
provider "citrix" {
    cvad_config = {
      customer_id   = ""
      client_id     = ""
      # secret can be specified via the CITRIX_CLIENT_SECRET environment variable
    }
}

# On-Premises Provider
provider "citrix" {
    cvad_config = {
      hostname      = "10.0.0.6"
      client_id     = "foo.local\\admin"
      # secret can be specified via the CITRIX_CLIENT_SECRET environment variable
    }
}

# Storefront Provider
provider "citrix" {
  storefront_remote_host = {
    computer_name = ""
    ad_admin_username =""
    ad_admin_password =""
    # secret can be specified via the CITRIX_CLIENT_SECRET environment variable
  }
}

Schema

Optional

  • cvad_config (Attributes) Configuration for CVAD service. (see below for nested schema)
  • storefront_remote_host (Attributes) StoreFront Remote Host for Citrix DaaS service.
    Only applicable for Citrix on-premises StoreFront. Use this to specify StoreFront Remote Host.
    (see below for nested schema)
  • wem_on_prem_config (Attributes) Configuration for WEM on-premises service. (see below for nested schema)

Nested Schema for cvad_config

Optional:

  • client_id (String) Client Id for Citrix DaaS service authentication. For Citrix On-Premises customers: Use this to specify a DDC administrator username. For Citrix Cloud customers: Use this to specify Cloud API Key Client Id.

-> Note Can be set via Environment Variable CITRIX_CLIENT_ID.

~> Please Note This parameter is required to be specified in the provider configuration or via environment variable.

  • client_secret (String, Sensitive) Client Secret for Citrix DaaS service authentication. For Citrix on-premises customers: Use this to specify a DDC administrator password. For Citrix Cloud customers: Use this to specify Cloud API Key Client Secret.

-> Note Can be set via Environment Variable CITRIX_CLIENT_SECRET.

~> Please Note This parameter is required to be specified in the provider configuration or via environment variable.

  • customer_id (String) The Citrix Cloud customer ID.

-> Note Can be set via Environment Variable CITRIX_CUSTOMER_ID.

~> Please Note This parameter is required for Citrix Cloud customers to be specified in the provider configuration or via environment variable.

  • disable_daas_client (Boolean) Disable Citrix DaaS client setup. Set to true to skip Citrix DaaS client setup.

-> Note Can be set via Environment Variable CITRIX_DISABLE_DAAS_CLIENT.

  • disable_ssl_verification (Boolean) Disable SSL verification against the target DDC. Set to true to skip SSL verification only when the target DDC does not have a valid SSL certificate issued by a trusted CA. When set to true, please make sure that your provider config is set for a known DDC hostname.

-> Note Can be set via Environment Variable CITRIX_DISABLE_SSL_VERIFICATION.

~> Please Note It is recommended to configure a valid certificate for the target DDC

  • environment (String) Citrix Cloud environment of the customer. Available options: Production, Staging, Japan, JapanStaging, Gov, GovStaging.

-> Note Can be set via Environment Variable CITRIX_ENVIRONMENT.

~> Please Note Only applicable for Citrix Cloud customers.

  • hostname (String) Host name / base URL of Citrix DaaS service. For Citrix on-premises customers: Use this to specify Delivery Controller hostname. For Citrix Cloud customers: Use this to force override the Citrix DaaS service hostname.

-> Note Can be set via Environment Variable CITRIX_HOSTNAME.

~> Please Note This parameter is required for on-premises customers to be specified in the provider configuration or via environment variable.

  • wem_region (String) WEM Hosting Region of the Citrix Cloud customer. Available values are US, EU, and APS.

-> Note Can be set via Environment Variable CITRIX_WEM_REGION.

~> Please Note Only applicable for Citrix Workspace Environment Management (WEM) Cloud customers.

Nested Schema for storefront_remote_host

Optional:

  • ad_admin_password (String, Sensitive) Active Directory Admin Password to connect to storefront server
    Use this to specify AD admin password
    Can be set via Environment Variable SF_AD_ADMIN_PASSWORD.
    This parameter is required to be specified in the provider configuration or via environment variable.
  • ad_admin_username (String) Active Directory Admin Username to connect to storefront server
    Use this to specify AD admin username
    Can be set via Environment Variable SF_AD_ADMIN_USERNAME.
    This parameter is required to be specified in the provider configuration or via environment variable.
  • computer_name (String) StoreFront server computer Name
    Use this to specify StoreFront server computer name
    Can be set via Environment Variable SF_COMPUTER_NAME.
    This parameter is required to be specified in the provider configuration or via environment variable.
  • disable_ssl_verification (Boolean) Disable SSL verification against the target storefront server.
    Only applicable to customers connecting to storefront server remotely. Customers should omit this option when running storefront provider locally. Set to true to skip SSL verification only when the target DDC does not have a valid SSL certificate issued by a trusted CA.
    When set to true, please make sure that your provider storefront_remote_host is set for a known storefront hostname.
    Can be set via Environment Variable SF_DISABLE_SSL_VERIFICATION.

Nested Schema for wem_on_prem_config

Optional:

  • admin_password (String, Sensitive) WEM Admin Password to connect to WEM service
    Use this to specify WEM admin password
    Can be set via Environment Variable WEM_ADMIN_PASSWORD.
    This parameter is required to be specified in the provider configuration or via environment variable.
  • admin_username (String) WEM Admin Username to connect to WEM service
    Use this to specify WEM admin username
    Can be set via Environment Variable WEM_ADMIN_USERNAME.
    This parameter is required to be specified in the provider configuration or via environment variable.
  • disable_ssl_verification (Boolean) Disable SSL verification against the target WEM service.
    Set to true to skip SSL verification only when the target WEM service does not have a valid SSL certificate issued by a trusted CA.
    When set to true, please make sure that your provider config is set for a known WEM hostname.
    Can be set via Environment Variable WEM_DISABLE_SSL_VERIFICATION.
  • hostname (String) Name of server hosting Citrix WEM service.
    Use this to specify WEM service hostname.
    Can be set via Environment Variable WEM_HOSTNAME.
    This parameter is required to be specified in the provider configuration or via environment variable.