dtctl kubernetes create
Usage
dtctl kubernetes create [flags]
Aliases
c
Description
Create a managed Kubernetes cluster on one of your networks, with a master and an initial worker node group. Choose a version (dtctl kubernetes versions) and flavors (dtctl flavor list).
Example
dtctl kubernetes create --name my-cluster --kubernetes-version v1.31.2 --ssh-key my-key \
--network-id <network-id> --external-network-id <external-network-id> \
--master-flavor c.medium --worker-flavor c.medium --storage-policy default \
--disk-size 20 --number-worker 2 --high-availability=false --floating-ip-enabled=true
Response
In text output (the default), this command returns the following columns: UUID.
Pass --output json to get the full response object instead.
Flags
| Option | Description |
|---|---|
--auto-scaling | Enable autoscaling for the default worker node group Default: false |
--disk-size | Node disk size in GB (required) |
--external-network-id | External network ID for outbound access (required) |
--extra-labels | Extra cluster labels as key=value pairs |
--floating-ip-enabled, -f | Assign a floating IP to the API server (required) |
--high-availability | Create a highly-available control plane (required) |
--kubernetes-version, -v | Kubernetes version (see 'dtctl kubernetes versions') (required) |
--master-flavor | Flavor name for master nodes, e.g. c.medium (see 'dtctl flavor list'). The name, not the id (required) |
--master-lb-floating-ip-enabled | Assign a floating IP to the master load balancer Default: false |
--max-node-count | Maximum node count for autoscaling. Required with --auto-scaling |
--minion-floating-ip-disabled, -m | Do not assign floating IPs to worker nodes Default: false |
--monitoring | Enable cluster monitoring Default: false |
--name, -n | Name of the cluster (required) |
--network-id | Virtual network ID to create the cluster on (required) |
--number-worker | Number of worker nodes to create (required) |
--ssh-key, -s | SSH key name to inject into nodes (see 'dtctl ssh list') (required) |
--storage-policy | Storage policy name for node volumes, e.g. HI-IOPS (see 'dtctl volume storage-policies') (required) |
--subnet-id | Subnet ID within the network. Defaults to the network's own subnet |
--worker-flavor | Flavor name for worker nodes, e.g. c.medium (see 'dtctl flavor list'). The name, not the id (required) |
Related Commands
| Command | Description |
|---|---|
| dtctl kubernetes list | List Kubernetes clusters |
| dtctl kubernetes show | Show a cluster |
| dtctl kubernetes update-node-group | Update a node group |
| dtctl kubernetes delete | Delete a cluster |
| dtctl kubernetes delete-node-from-node-group | Delete a node from a group |
| dtctl kubernetes delete-node-group | Delete a node group |
| dtctl kubernetes add-node-group | Add a node group |
| dtctl kubernetes generate-kubeconfig | Download a cluster's kubeconfig |
| dtctl kubernetes node-groups | List a cluster's node groups |
| dtctl kubernetes resize | Resize a node group |
| dtctl kubernetes upgrade | Upgrade a cluster |
| dtctl kubernetes versions | List Kubernetes versions |
Global Flags
| Option | Description |
|---|---|
--api-url | Send this command to a different API endpoint, e.g. a test environment (default "https://console.dt.net.tr/api/v1") |
--config, -c | Specify a custom config file Default: ~/.config/dtctl/config.yaml |
--no-headers | Omit the column headers, for scripting Default: false |
--output, -o | Output format: text, wide, vertical, json. text fits the terminal, wide never truncates, vertical prints one field per line Default: text |