create-cluster

subtitle

Create a Cloudera Data Warehouse cluster.

version

0.9.106

Description

Create a Cloudera Data Warehouse cluster.

Synopsis

  create-cluster
--environment-crn <value>
[--use-overlay-network | --no-use-overlay-network]
[--database-backup-retention-period <value>]
[--whitelist-ip-cidrs <value>]
[--whitelist-k8s-cluster-access-ip-cidrs <value>]
[--whitelist-workload-access-ip-cidrs <value>]
[--use-private-load-balancer | --no-use-private-load-balancer]
[--use-public-worker-node | --no-use-public-worker-node]
[--enable-storage-roles | --no-enable-storage-roles]
[--reserved-compute-nodes <value>]
[--reserved-shared-services-nodes <value>]
[--custom-registry-options <value>]
[--aws-options <value>]
[--azure-options <value>]
[--private-cloud-options <value>]
[--custom-subdomain <value>]
[--resource-pool <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton]

Options

--environment-crn (string)

The CRN of the environment for the cluster to create.

--use-overlay-network | --no-use-overlay-network (boolean)

Using an overlay network will save IP addresses in the VPC by using a private IP address range for Pods in the cluster.

--database-backup-retention-period (integer)

PostgreSQL server backup retention days.

--whitelist-ip-cidrs (string)

This field is still available for Private Cloud deployments, however it’ll be removed for Public Cloud in the next DWX release. Please use the use ‘whitelistK8sClusterAccessIpCIDRs’ in combination of ‘whitelistWorkloadAccessIpCIDRs’ on Public Cloud. Comma separated list of IP address CIDRs to whitelist.

Form Factors: public, private

--whitelist-k8s-cluster-access-ip-cidrs (array)

List of IP address CIDRs to whitelist for kubernetes cluster access.

Syntax:

"string" "string" ...

--whitelist-workload-access-ip-cidrs (array)

List of IP address CIDRs to whitelist for workload access.

Syntax:

"string" "string" ...

--use-private-load-balancer | --no-use-private-load-balancer (boolean)

Set up load balancer with private IP address. In AWS it is created in private subnets. In Azure an internal load balancer gets created. Make sure there is connectivity between your client network and the network (VPC/VNet) where CDW environment is deployed.

--use-public-worker-node | --no-use-public-worker-node (boolean)

Set up worker node with public IP address. In AWS it is created in public subnets.

--enable-storage-roles | --no-enable-storage-roles (boolean)

Enable Storage Roles

Form Factors: public

--reserved-compute-nodes (integer)

Set additional number of nodes to reserve for executors and coordinators to use during autoscaling. Adding more reserved nodes increases your cloud costs.

--reserved-shared-services-nodes (integer)

Set additional number of nodes to reserve for other services in the cluster. Adding more reserved nodes increases your cloud costs.

--custom-registry-options (object)

Options for custom ACR, ECR, or Docker registry.

registryType -> (string)

Custom registry type.

repositoryUrl -> (string)

URL of the custom image repository.

userName -> (string)

Username for custom registry access (required only for Docker type).

password -> (string)

Password for custom registry access (required only for Docker type).

disableImageVerification -> (boolean)

Disable image verification.

Shorthand Syntax:

registryType=string,repositoryUrl=string,userName=string,password=string,disableImageVerification=boolean

JSON Syntax:

{
  "registryType": "ACR"|"ECR"|"Docker",
  "repositoryUrl": "string",
  "userName": "string",
  "password": "string",
  "disableImageVerification": true|false
}

--aws-options (object)

Options for activating an AWS environment.

enablePrivateEKS -> (boolean)

Use this option to set up AWS EKS cluster in private only mode with restricted access only from internal/peered networks. Ensure you have ccmv2 setup functional to achieve this integration.

workerSubnetIds -> (array)

IDs of AWS subnets where the cluster worker nodes should be deployed.

item -> (string)

lbSubnetIds -> (array)

IDs of AWS subnets where the cluster load balancer should be deployed.

item -> (string)

customAmiId -> (string)

Custom AMI ID.

nodeRoleCDWManagedPolicyArn -> (string)

Managed Policy Arn to be attached to the Node Instance Role.

enableSpotInstances -> (boolean)

Whether to enable Spot instances for Virtual warehouses. It cannot be updated later. If the aws-options is not provided it defaults to false.

reducedPermissionMode -> (boolean)

Use this option to activate the environment with fewer than half of the standard required IAM permissions on your AWS cross-account IAM role.

computeInstanceTypes -> (array)

AWS compute instance types that the environment is restricted to use. This affects the creation of virtual warehouses where this restriction will apply. Select an instance type that meets your computing, memory, networking, or storage needs. As of now, only a single instance type can be listed. Use describe-allowed-instance-types to see currently possible values.

item -> (string)

additionalInstanceTypes -> (array)

Additional (fallback) instance types listed in their priority order. They will be used instead of the primary compute instance type in case it is unavailable. You cannot include any instance type that was already indicated in computeInstanceTypes. Use describe-allowed-instance-types to see currently supported values and also the default value when nothing is provided for the computeInstanceTypes.

item -> (string)

Shorthand Syntax:

enablePrivateEKS=boolean,workerSubnetIds=string,string,lbSubnetIds=string,string,customAmiId=string,nodeRoleCDWManagedPolicyArn=string,enableSpotInstances=boolean,reducedPermissionMode=boolean,computeInstanceTypes=string,string,additionalInstanceTypes=string,string

JSON Syntax:

{
  "enablePrivateEKS": true|false,
  "workerSubnetIds": ["string", ...],
  "lbSubnetIds": ["string", ...],
  "customAmiId": "string",
  "nodeRoleCDWManagedPolicyArn": "string",
  "enableSpotInstances": true|false,
  "reducedPermissionMode": true|false,
  "computeInstanceTypes": ["string", ...],
  "additionalInstanceTypes": ["string", ...]
}

--azure-options (object)

Options for activating an Azure environment.

userAssignedManagedIdentity -> (string)

Resource ID of the managed identity used by AKS. It is a mandatory parameter for Azure cluster creation.

subnetId -> (string)

ID of Azure subnet where the cluster should be deployed. It is a mandatory parameter for Azure cluster creation.

enableAZ -> (boolean)

Enables Azure Availability Zones for the cluster deployment.

enableSpotInstances -> (boolean)

Whether to enable spot instances for Virtual warehouses. It cannot be updated later. If the AzureActivationOptions is not provided it defaults to false.

computeInstanceTypes -> (array)

Azure compute instance types that the environment is restricted to use. This affects the creation of virtual warehouses where this restriction will apply. Select an instance type that meets your computing, memory, networking, or storage needs. As of now, only a single instance type can be listed. Use describe-allowed-instance-types to see currently possible values and the default value used for the case it is not provided.

item -> (string)

logAnalyticsWorkspaceId -> (string)

Enable monitoring of Azure Kubernetes Service (AKS) cluster. Workspace ID for Azure log analytics.

outboundType -> (string)

Network outbound type. This setting controls the egress traffic for cluster nodes in Azure Kubernetes Service. Please refer to the following AKS documentation on the Azure portal. https://learn.microsoft.com/en-us/azure/aks/egress-outboundtype, https://learn.microsoft.com/en-us/azure/aks/nat-gateway

enablePrivateSQL -> (boolean)

Enables private SQL for the cluster deployment.

privateDNSZoneAKS -> (string)

Private DNS zone AKS resource ID.

enablePrivateAks -> (boolean)

Enable Azure Private AKS mode.

aksVNetIntegrationSubnetName -> (string)

Enable AKS VNet Azure Virtual Network (VNet) integration by specifying the delegated subnet name. An Azure Kubernetes Service (AKS) cluster configured with API Server VNet Integration projects the API server endpoint directly into a delegated subnet in the VNet where AKS is deployed. API Server VNet Integration enables network communication between the API server and the cluster nodes without requiring a private link or tunnel.

Shorthand Syntax:

userAssignedManagedIdentity=string,subnetId=string,enableAZ=boolean,enableSpotInstances=boolean,computeInstanceTypes=string,string,logAnalyticsWorkspaceId=string,outboundType=string,enablePrivateSQL=boolean,privateDNSZoneAKS=string,enablePrivateAks=boolean,aksVNetIntegrationSubnetName=string

JSON Syntax:

{
  "userAssignedManagedIdentity": "string",
  "subnetId": "string",
  "enableAZ": true|false,
  "enableSpotInstances": true|false,
  "computeInstanceTypes": ["string", ...],
  "logAnalyticsWorkspaceId": "string",
  "outboundType": "LoadBalancer"|"UserAssignedNATGateway"|"UserDefinedRouting",
  "enablePrivateSQL": true|false,
  "privateDNSZoneAKS": "string",
  "enablePrivateAks": true|false,
  "aksVNetIntegrationSubnetName": "string"
}

--private-cloud-options (object)

Options for activating a Private Cloud environment.

delegationUsername -> (string)

Name of delegation user. This user is used between Hue - Impala to create a session, as Hue should not pass the user credentials, instead Hue authenticates with the delegation user, then this user will impersonate the logged in user. This means that the Delegation User and Password should be able to authenticate through LDAP.

delegationPassword -> (string)

Password of delegation user.

securityContextConstraintName -> (string)

The name of the Hive Security Context Constraint.

storageClass -> (string)

The storage class for the Local Storage Operator.

dbDas -> (string)

The name of the DAS database. Not required for embedded databases

dbHue -> (string)

The name of the HUE database. Not required for embedded databases.

dedicatedExecutorNodes -> (boolean)

Enable to use dedicated nodes exclusively for executors and coordinators, and improve performance. You can enable this only if you reserved nodes while adding a CDP Private Cloud containerized ECS cluster. When disabled, non-compute pods such as MetaStore and Data Visualization can also use the reserved nodes.

Shorthand Syntax:

delegationUsername=string,delegationPassword=string,securityContextConstraintName=string,storageClass=string,dbDas=string,dbHue=string,dedicatedExecutorNodes=boolean

JSON Syntax:

{
  "delegationUsername": "string",
  "delegationPassword": "string",
  "securityContextConstraintName": "string",
  "storageClass": "string",
  "dbDas": "string",
  "dbHue": "string",
  "dedicatedExecutorNodes": true|false
}

Form Factors: private

--custom-subdomain (string)

Custom environment subdomain. Overrides the environment subdomain using a customized domain either in the old subdomain format like ENV_ID.dw or the new format like dw-ENV_NAME.

--resource-pool (string)

The Resource Pool of the cluster.

Form Factors: private

--cli-input-json (string)

Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values.

--generate-cli-skeleton (boolean)

Prints a sample input JSON to standard output. Note the specified operation is not run if this argument is specified. The sample input can be used as an argument for --cli-input-json.

Output

clusterId -> (string)

ID of new cluster.

Form Factors

public, private