create-cluster

subtitle

Create a Cloudera Data Warehouse cluster.

version

0.9.125

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]
[--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.

--custom-registry-options (object)

Options for custom ACR, ECR registry.

registryType -> (string)

Custom registry type.

repositoryUrl -> (string)

URL of the custom image repository.

Shorthand Syntax:

registryType=string,repositoryUrl=string

JSON Syntax:

{
  "registryType": "ACR"|"ECR",
  "repositoryUrl": "string"
}

--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)

NOTE: The cluster level instance type selection will be replaced by virtual warehouse level selection. 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)

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)

NOTE: The cluster level instance type selection will be replaced by virtual warehouse level selection. 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

aksPodCIDR -> (string)

Pod CIDR required for Azure CNI networking. Please refer to the following Azure documentation, https://docs.microsoft.com/en-us/azure/aks/azure-cni-overlay.

enablePrivateSQL -> (boolean)

Enables private SQL for the cluster deployment.

privateSQLSubnetName -> (string)

Name of the delegated subnet where the private SQL should be deployed.

privateDNSZoneSQL -> (string)

Private DNS zone ID for the PostgreSQL server.

privateDNSZoneAKS -> (string)

Private DNS zone AKS resource ID.

enablePrivateAks -> (boolean)

Enable Azure Private AKS mode.

Shorthand Syntax:

userAssignedManagedIdentity=string,subnetId=string,enableAZ=boolean,enableSpotInstances=boolean,computeInstanceTypes=string,string,logAnalyticsWorkspaceId=string,outboundType=string,aksPodCIDR=string,enablePrivateSQL=boolean,privateSQLSubnetName=string,privateDNSZoneSQL=string,privateDNSZoneAKS=string,enablePrivateAks=boolean

JSON Syntax:

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

--private-cloud-options (object)

Options for activating a Private Cloud environment.

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.

dbClientCredentials -> (object)

Certificate and private key pair credentials, that could be used ie mutual TLS connections therefore these must belong together.

Form Factors: private

certificate -> (string)

The content of certificate PEM file.

privateKey -> (string)

The content of private key PEM file.

Shorthand Syntax:

delegationUsername=string,delegationPassword=string,securityContextConstraintName=string,storageClass=string,dbDas=string,dbHue=string,dedicatedExecutorNodes=boolean,dbClientCredentials={certificate=string,privateKey=string}

JSON Syntax:

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

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