CloudCenter 4.8 has reached End of Life (EOL) as of November 14, 2018. See End of Support Notices for additional context.

CloudCenter-Defined Parameters

Overview

Automated parameters are defined in the CloudCenter platform and contain the following characteristics:

  • Values provided by CloudCenter.

  • Designed to cover unknown, dynamically generated values or system-dependent values.

  • Reusable in application profiles to automate jobs without writing extensive scripts (examples include timestamp, dynamically-generated IP address, private IP address, IP address of a tier, environment variables, automation policy parameters, number of nodes in a cluster, deployment name, and so forth).

Using CloudCenter-Defined Parameters

To use a system-defined parameter, follow this procedure:

  1. Use the parameter name to reference this parameter inside a configuration script or configuration file as a macro using the CloudCenter platform convention. For example:

    • Parameter name: XYZ_TIER_IP

    • Macro reference for this parameter: %XYZ_TIER_IP%

  2. Reference the macro inside the Application Profile.

List of Defined Parameters

This section lists all parameters, macros, and environment variables defined for the CloudCenter platform for use in CloudCenter deployments.

Reference

CloudCenter-Defined
Parameter/Macro/Variable

Description

Standard IP Address Replacement

These parameters are available at the application level. Some parameters are specific to some application profiles as identified in the Description column.

(ensures backward compatibility with previously-modeled applications)

Use the same case and format (UPPER_CASE)







%XYZ_TIER_IP%

  • Private IP address of a custom tier. XYZ is custom tier name
  • If the tier name is Custom1, then macro name will be %Custom1_TIER_IP%

%DB_TIER_IP%

  • Private IP address of the database tier.
  • The tier name must be Database

%NOSQL_TIER_IP%

Private IP address of NoSQL Database tier

%MB_TIER_IP%

Private IP address of Message BUS

$CliqrTier_{Tiername}_IP

Private IP of tier named XYZ

%BC_TIER_IP%

Private IP address of Backend Cache

Other Macros – Input Parameters for Script

These parameters are available at the application level. Some parameters are specific to some application profiles as identified in the Description column.

Use the same case and format (UPPER_CASE)

See VM Name Config for the pre-defined macros that you can use for the CliQr Macro Replacement Option.


 

 

 

 

 

 

 

 

 

%OUTPUT_DIR%

Path for output directory:
/shared/output

%JOB_NAME%Name of the deployment
%USER_NAME%Name of the user deploying the application
%FIRST_NAME%First name of the user deploying the application
%LAST_NAME%Last name of the user deploying the application
%EMAIL_ADDRESS%Email address of the user deploying the application

%USER_EXTERNAL_ID% or

%userExternalId%

External ID of the user deploying the application (if using SSO)

Both versions of this macro are the same – the %userExternalId% macro is replaced by the user's external ID in the URL for webservice (see Using Parameters > Parameter Type for additional details on webservice)

%DEPLOYMENT_ENV%

Name of the deployment environment

%DEP_ENV_NAME%Name of the Puppet or Chef environment

%TIME%

Time stamp string in yyyyMMddHHmmss format

%TASK_INDEX%

  • Task index starting from 1
  • Applies to Batch Compute Application Profiles

%NODE_INDEX%

  • Node index starting from 1
  • Applies to: 
    • Cluster Compute Application Profiles
    • Parallel Execution Application Profile

%HOST_IPS%

  • Host IP address list delimit by comma 
  • Applies to Cluster Compute Application Profiles

%NUM_CPU%

Number of CPUs on the application VM

$VM_NODE_INDEX

This is an additional macro to create VMs using a sequential number for each VM that is newly created. For example, if you use this macro to launch an N-Tier app with 3 nodes:

  • The VM_NODE_INDEX is set as 1, 2, and 3.
  • If you remove Node 2 and add one more node, the VM_NODE_INDEX is set as1, 3, 4, and 5.
  • For Tiers with only one node the VM_NODE_INDEX is set to 1.

This macro is exported as part of userenv file. To consume this macro, add $VM_NODE_INDEX to your scripts and source the userenv(/usr/local/osmosix/etc/userenv) file use the variables as part of your scripts.

Cluster-Based Environment Variables

(Cluster Compute Application Profiles)

CliqrTier_<job_name>_IPPrivate IP address for the tier
CliqrTier_<job_name>_PUBLIC_IPPublic IP address for the tier. This parameter is also available for N-tier deployments
CliqrTier_<job_name>_HOSTNAMEHostname for the tier
SSH Keys
sshUserNameThe SSH user name for the current cloud VM
sshKeyThe SSH private key for the current cloud VM
sshPublicKeyThe SSH public key for the current cloud VM
Parameters as Environment Variables

These parameters are available as environment variables. Some parameters are specific to some application profiles as identified in the Description column.

Use the same case and format (InitCaps or camelCase)


 

 

 

 

 

$UseBatchTaskList

  • Applies to Batch Execution Application Profile.
  • When set to:
    • 1 = command is read from a task list file
    • 0 = command is an execution command line

$NumTasks

  • Only applicable when UseBatchTaskList=0.
  • Represents the number of tasks to be performed (number of times to repeat a series of execution commands).
  • Applies to Batch Compute Application Profiles

$numClusterNodes

Number of nodes in the tier

$minClusterSize

Minimum number of nodes in a cluster

$maxClusterSize

Maximum number of nodes in a cluster

$minAppClusterSize

Maximum number of nodes for java container-based tiers

VM-Based Environment Variables

(also part of the application and password parameters list)

cliqrNodeId
  • The Node ID of the VM for which the external initialization script is executed.
  • Used for the external, pre-init, Deployment Lifecycle Script.

cliqrNodeHostname
  • The hostname of the VM for which the external initialization script is  executed.
  • Used for the external, pre-init, Deployment Lifecycle Script.

cliqrNodePublicIpThe Public IP of the VM for which the external initialization script is executed.
cliqrNodePrivateIpThe Private IP of the VM for which the external initialization script is executed.
$cliqrWindowsPassword
Automation Policy Parameters

These parameters are only applicable when defining custom action policies and are not available at the application level.

Use the same case and format (camelCase)









%myEmail%

User's email address

%firstName%

User first name

%vendorName%

Tenant name to send notifications, if any

%jobName%

Name of the deployment job

%jobUrl%

The URL for the deployment

%jobType%

Type of deployment job (for example, benchmark)

%appName%

Name of the application

%owner%

Owner of the deployment job

%status%

Current status of the job (for example, Running)

%cloudName%

Name of the cloud (for example, Amazon US East (Virginia))

%paramCloudType%Identifies the cloud in which the node is launched
Environment Variables for N-Tier deployments

These parameters are available at the application level. Some parameters are specific to some application profiles as identified in the Description column.

These values cannot be overridden

Use the same case and format (InitCaps)



 

$CliqrDependents

Comma separated list of connected top tiers name of the tier

$CliqrDependencies

Comma separated list of top tier names connected to bottom tier names

$CliqrDepEnvName

Deployment environment name

$CliqrDepEnvId
  • Helpful on the restore side of the migration as it is available from the source (where the backup is being run).
  • For example: To backup, use <path>/$CliqrDepEnvId 
$CliqrDeploymentId
  • Current deployment ID that ties the pre- and post-migration operations together for scripting purposes (backups and so forth)
  • For example: To backup, use <path>/$CliqrDeploymentId 
$migrateFromDepId
  • Only available for post-migrate operations and points to the previous deployment ID.
  • For example: To restore, <path>/$migrateFromDepId
CliqrTier_<job_name>_PUBLIC_IPPublic IP address for the tier. This parameter is also available as a Cluster-Based Environment Variable (Cluster Compute Application Profiles).

$CliqrTag_{Tagname}

Job tags defined during run time with value

ScaleType
  • The value can be either ScaleUp or ScaleDown.
  • Displays the type of scaling on the tier with the name $CliqrTier_scalingTierName)
CliqrTier_scalingTierName
  • The tier name on which the scaling operation occurred.
CliqrTier_{$CliqrTier_scalingTierName}_scaleUpPublicIps
  • ScaleUp parameter.
  • The public IPs of the VMs that are scaled up on the tier with the name $CliqrTier_scalingTierName.
CliqrTier_{$CliqrTier_scalingTierName}_scaleUpNodeIds
  • ScaleUp parameter.
  • The nodeIds of the nodes that are scaled up on the tier with name $CliqrTier_scalingTierName.
CliqrTier_{$CliqrTier_scalingTierName}_scaleUpPrivateIps
  • ScaleUp parameter.
  • The private IPs of the nodes that are scaled up on the tier with name $CliqrTier_scalingTierName.

CliqrTier_{$CliqrTier_scalingTierName}_scaleUpHostnames

  • ScaleUp parameter.
  • The hostnames of the nodes that are scaled up on the tier with name $CliqrTier_scalingTierName.
CliqrTier_{$CliqrTier_scalingTierName}_scaleDownPublicIps
  • ScaleDown parameter.
  • The public IPs of the nodes that are scaled down on the tier with name $CliqrTier_scalingTierName.
CliqrTier_{$CliqrTier_scalingTierName}_scaleDownNodeIds
  • ScaleDown parameter.
  • The nodeIds of the nodes that are scaled down on the tier with name $CliqrTier_scalingTierName.
CliqrTier_{$CliqrTier_scalingTierName}_scaleDownPrivateIps
  • ScaleDown parameter.
  • The private IPs of the nodes that are scaled down on the tier with name $CliqrTier_scalingTierName.
CliqrTier_{$CliqrTier_scalingTierName}_scaleDownHostnames
  • ScaleDown parameter.
  • The hostnames of the nodes that are scaled down on the tier with name $CliqrTier_scalingTierName.
Docker Custom Services

Right before your script is executed, CloudCenter supplies all the application-specific parameters as environment variables.

$region

Identifies the region information in the environment variables for External Services.
$CloudFamily

Identifies the cloud family in the environment variables for External Services.

cliqrContainerExecuteScriptTimeoutLimits the Docker container from running forever if an external service falls into an infinite loop. See External Service > Script Timer.
External Service Environment Variables
CLIQR_EXECUTE_SCRIPTThe execution command/script for the current Docker container run.
externalServiceBundleThe path/URL to the external service bundle (configured on the CCO Wizard Properties)
actionTypeThe action type of the current external service action, the possible values: SCRIPT or URL or CMD
serviceNameThe name of the External Service.
CUSTOM_REPO_URLThe CloudCenter custom bundle store  URL (configured on the CCO Wizard Properties)
Docker Container Environment Variables
Cloud_Setting_CloudFamilyThe cloud family of the region in the CloudCenter platform.
Cloud_Setting_cloudThe region name, for example: Amazon-us-west-2.
CliqrTier_NameListThe names list of all tiers in the application.
CliqrCloud_RegionEndPointThe region endpoint, example: ec2.us-west-2.amazonaws.com.
CliqrDepEnvIdThe Deployment environment ID created by the CloudCenter platform.
cliqrAppNameThe application Name in the CloudCenter platform.
launchUserNameThe launch username in the CloudCenter platform., for example: cliqradmin
cliqrAppTypeThe type of application in the CloudCenter platform, for example: n-tier
CliqrDepEnvNameThe deployment environment name n the CloudCenter platform

RDS Service Parameters

When defining the RDS OOB service, be sure to pass the values for the VPC ID and DB Subnet Group at deployment time. The CloudCenter platform requires these values to provision the RDS instance. See External Service for additional context. The following table identifies a list of parameters that are required when configuring an RDS service. These deployment parameters were added to the CloudCenter platform effective CloudCenter 4.9.0.

Parameter

Description

vpcIdRequired. The VPC ID with which the RDS Instance is associated, its the same VPC ID of the DBSubnetGroup – a Security Group will be created using this VPC ID. Only available in CloudCenter 4.9.0 and later releases.
dbSubnetGroupRequired. The DB Subnet Group with which the RDS Instance is associated. Only available in CloudCenter 4.9.0 and later releases.
cliqrIsPublicAccessibleRequired. Available effective CloudCenter 4.9.1 for the RDS service to be toggled to true (default) or false so you can control public accessibility.
cliqrRdsEngineVersionYou can customize the RDS service using this parameter. For the RDS MySQL OOB service, the default CloudCenter version is listed as CloudCenter 5.6.35. You can customize this version by adding a custom, deploy parameter with this name and pass the value during deployment. Only available in CloudCenter 4.9.0 and later releases.
cliqrStorageTypeYou can customize the RDS service using this parameter. For RDS MySQL OOB service, the default storage type used by the CloudCenter platform is Magnetic (standard storage). You can customize this storage type by adding a custom, deploy parameter with this name and pass the value as “gp2” for general purpose SSD or “io1” for provisioned IOPS. See Multiple Volumes for additional context. Only available in CloudCenter 4.9.0 and later releases.
portYou can customize the RDS service using this parameter. For RDS MySQL OOB service, the default port used by the CloudCenter platform is 3306. You can customize this port by adding a custom, deploy parameter with this name and pass the value as desired. Only available in CloudCenter 4.9.0 and later releases.
cidrYou can customize the RDS service using this parameter. When creating an RDS security group, the default port used by the CloudCenter platform opens to CIDR 0.0.0.0/0. You can customize the CIDR by adding a custom, deploy parameter with this name and pass the value as desired. Only available in CloudCenter 4.9.0 and later releases.
sgidYou can customize the RDS service using this parameter. For RDS MySQL OOB service, the CloudCenter platform creates a new security group with security rules mentioned as port and/or cidr parameters, You can customize the sgid by adding a custom, deploy parameter with this name and pass the value of security group so that RDS Instance will be launched using the specific security group. See Security and Firewall Rules for additional context. Only available in CloudCenter 4.9.0 and later releases.

Kubernetes Container Service Parameters

Effective CloudCenter 4.9.0, the following network related parameters are available from a Kubernetes Container Service:


Parameter Type
Network Service Type
ClusterIPNodePortLoadBalancer
ServiceNameCliqrTier_tierName_ClusterIP_ServiceNameCliqrTier_tierName_NodePort_ServiceNameCliqrTier_tierName_LoadBalancer_ServiceName

Internal Endpoint

CliqrTier_tierName_ClusterIP_EndpointCliqrTier_tierName_NodePort_EndpointCliqrTier_tierName_LoadBalancer_InternalEndpoint
External EndpointNot applicable
  • CliqrTier_tierName_LoadBalancer_ExternalEndpoint
  • CliqrTier_tiername_PUBLIC_IP (without a port)
Cluster's IP

CliqrTier_tierName_ClusterIP

CliqrTier_tierName_Private_IP

CliqrTier_tierName_IP

Pod's IP

CliqrTier_tierName_PodIP

if multiple network services of same type have been added to the deployment, the above parameter values will be a comma-separated string.

TypeParameters Common to All Service Types
NamespaceCliqrTier_tiername_Namespace
Cluster IP
  • CliqrTier_tiername_servicename
  • CliqrTier_tiername_servicename_ClusterIP
  • CliqrTier_tiername_servicename_PRIVATE_IP
  • CliqrTier_tiername_servicename_IP
{Internal} EndpointCliqrTier_tiername_servicename_Endpoint
External EndpointCliqrTier_tiername_servicename_ExternalEndpoint
Public IP (ext. endpoint. without port)CliqrTier_tiername_servicename_PUBLIC_IP
Service NameCliqrTier_tiername_servicename_ServiceName
  1. tiername = the Name in the General Settings tab of the tier in App. Profile Page
  2. servicename = the Port Name entered by the user in the Network Service tab of the tier in Application Profile Page
  3. Using the ExternalEndpoint variable name for Service types Cluster IP or NodePort will not be substituted. It is specific only to Load Balancer service type.
  4. In the case of NodePort, even using the Endpoint variable may result in a string with two endpoints separated by comma - one with internal port and another with the nodeport.

These parameters may be referenced within the Deployment Parameters section of the Topology Modeler when the application profile contains a container service tier. See Container Service for an example.

If only one network service for a particular network service type is defined for a container-based tier in the Topology Modeler, then the corresponding service name and IP parameters will contain single values. If multiple network services of a particular network service type are defined for a tier in the Topology Modeler, then the corresponding service name and IP parameters will each contain a comma separated string representing the values for each of the network services of that type. 


The userenv Utility File

Effective CloudCenter 4.9.0, tier-based firewall information is available in a VM's userenv file as well as the environment for external initialization scripts as evident in the following examples:

  • Example 1
    firewall={
       "id":null,
       "name":"cliqr-firewall-58E00D70D552698B4355B1F2135F0229",
       "description":"Cliqr user firewall",
       "rules":[
          {
             "protocol":"tcp",
             "fromPort":22,
             "toPort":22,
             "sourceIPRanges":["0.0.0.0/0"],
             "sourceGroups":null,
             "cloudId":null,
             "serviceName":null
          }
       ]
    }
  • Example 2
    firewall={
       "id":null,
       "name":"cliqr-firewall_C1_VMW2_CentOS_1_6438",
       "description":"Cliqr user firewall",
       "rules":[
          {
             "protocol":"tcp",
             "fromPort":22,
             "toPort":22,
             "sourceIPRanges":["0.0.0.0/0"],
             "sourceGroups":null,
             "cloudId":null,
             "serviceName":null
          },
          {
             "protocol":"tcp",
             "fromPort":80,
             "toPort":80,
             "sourceIPRanges":["1.1.1.1/0"],
             "sourceGroups":null,
             "cloudId":null,
             "serviceName":null
          },
          {
             "protocol":"tcp",
             "fromPort":1,
             "toPort":65535,
             "sourceIPRanges":[
                "TIER_WebServer"
             ],
             "sourceGroups":null,
             "cloudId":null,
             "serviceName":null
          }
       ]
    }

    Back to: Parameters and Macros

  • No labels
© 2017-2019 Cisco Systems, Inc. All rights reserved