High availability is a key feature of Vultr Kubernetes Engine (VKE) cluster that ensures your cluster remains resilient and operational, even in the event of unexpected failures. By enabling high availability, your VKE cluster is distributed across multiple nodes and regions, reducing the risk of downtime and ensuring continuous availability of your applications. This feature integrates seamlessly with Vultr’s global cloud infrastructure, providing reliable performance and redundancy.
Follow this guide to enable High Availability for your Vultr Kubernetes Engine cluster using the Vultr Customer Portal, API, or CLI.
Send a GET
request to the List Regions endpoint and note your target Vultr region ID.
$ curl "https://api.vultr.com/v2/regions" \
-X GET \
-H "Authorization: Bearer ${VULTR_API_KEY}"
Send a GET
request to the List available plans in region endpoint to view all available instance plans in your chosen region and note the target node pool plan.
$ curl "https://api.vultr.com/v2/regions/{region-id}/availability" \
-X GET \
-H "Authorization: Bearer ${VULTR_API_KEY}"
Send a GET
request to the Get Kubernetes Versions endpoint and note your target Kubernetes version to use.
$ curl "https://api.vultr.com/v2/kubernetes/versions" \
-X GET \
-H "Authorization: Bearer ${VULTR_API_KEY}"
Send a POST
request to the Create Kubernetes Cluster endpoint to create a VKE cluster with high availability. Post-creation, note the cluster's ID.
$ curl "https://api.vultr.com/v2/kubernetes/clusters" \
-X POST \
-H "Authorization: Bearer ${VULTR_API_KEY}" \
-H "Content-Type: application/json" \
--data '{
"label": "{cluster-name}",
"region": "{region-id}",
"version": "{kubernetes-version}",
"ha_controlplanes": true,
"node_pools": [
{
"node_quantity": {number-of-nodes},
"label": "{node-label}",
"plan": "{node-plan}"
}
]
}'
Send a GET
request to the Get Kubernetes Cluster endpoint to get the details of the target VKE cluster.
$ curl "https://api.vultr.com/v2/kubernetes/clusters/{cluster-id}" \
-X GET \
-H "Authorization: Bearer ${VULTR_API_KEY}"
List all Vultr regions and note your target region ID.
$ vultr-cli regions list
List all available instance plans in your target region and note the target node pool plan.
$ vultr-cli regions availability <region-id>
List all available Kubernetes versions and note your target version to use.
$ vultr-cli kubernetes versions
Create a VKE cluster with --high-avail
flag and note the target cluster's ID.
$ vultr-cli kubernetes create --label "<cluster-name>" --region "<region-id>" --version "<kubernetes-version>" --high-avail true --node-pools "quantity:<number-of-nodes>,plan:<node-plan>,label:<node-label>"
Get the deatils of the target VKE cluster.
$ vultr-cli kubernetes get <cluster-id>
No comments yet.