Kubernetes Clusters on Hyperstack - How-to Guide
Hyperstack supports API-based, on-demand provisioning of managed Kubernetes clusters, providing a fast and efficient way to deploy and manage containerized applications. Whether you're developing complex AI models, running large-scale data pipelines, or managing cloud-native workloads, Hyperstack On-Demand Kubernetes is designed to simplify your infrastructure needs.
Similar to other major cloud providers, you only need to specify the Kubernetes version, node type, and a few basic parameters via API—Hyperstack handles the rest. NVIDIA GPU optimization, high-speed networking, and persistent storage options are built-in, ensuring clusters are ready for data-intensive AI tasks from the moment they are launched.
This document provides step-by-step instructions on using the Hyperstack API to create, connect to, and scale a Kubernetes cluster. By following these guidelines, you can leverage Kubernetes for orchestration, scalability, and application management with minimal effort.
Hyperstack's on-demand Kubernetes is currently in Beta. Please be aware of the following limitations:
- Cluster creation delays or failures may occur depending on the number of clusters being provisioned.
- Cluster details are currently accessible only via API—a UI for cluster management is in development.
- Autoscaling is not available in this version, meaning clusters will not automatically scale up or down based on workload demands. However, manual scaling is possible by adjusting the node configuration as needed.
In this article
Features of Hyperstack Kubernetes
-
Single API Request: Deploy a complete Kubernetes cluster with a single API call, provisioning key components like the master node, load balancer, bastion VM, and worker nodes.
-
AI-Optimized Kubernetes: Built for Hyperstack’s infrastructure with custom NVIDIA-optimized drivers, enhancing performance for AI applications.
-
NVIDIA GPU Optimization: Each Kubernetes cluster comes pre-configured with NVIDIA-optimized drivers, accelerating AI/ML workloads and enabling seamless processing of large datasets and complex computations.
-
Streamlined Workflows: Hyperstack’s intuitive APIs simplify deployment and automation, allowing users to efficiently manage and scale Kubernetes clusters.
-
Effortless Deployment: Launch fully configured Kubernetes clusters with minimal setup. Hyperstack’s backend automates complex provisioning, ensuring clusters are operational within minutes.
-
High-Speed Networking: Hyperstack Kubernetes clusters leverage low-latency, high-speed networking, ideal for distributed AI applications requiring fast data throughput.
-
Role-Based Access Control (RBAC): Secure and manage access with RBAC, ensuring team members have the appropriate permissions for collaborative AI projects.
- Intuitive Management Interface: Soon, you will be able to manage clusters through Hyperstack’s user-friendly UI or API, enabling easy monitoring and adjustment of configurations, node counts, and more.
Hyperstack Kubernetes Architecture
Hyperstack Kubernetes clusters are designed with a robust architecture to ensure scalability, security, and high availability. Each cluster consists of multiple node types, each serving a specific role in managing workloads and maintaining cluster operations.
Bastion Node
The bastion node acts as a secure gateway for administrative access to the cluster. It provides a controlled entry point for SSH access, reducing direct exposure of critical components to external threats.
Master Node
The master node runs the control plane, which manages the cluster’s state and orchestrates workloads. It is responsible for scheduling, maintaining application lifecycle states, and ensuring overall cluster stability.
Worker Nodes
Worker nodes handle the actual execution of workloads by running containerized applications. Each worker node is equipped with Kubernetes components such as Kubelet and a container runtime, allowing it to process scheduled tasks efficiently.
Load Balancer Nodes
Load balancer nodes distribute incoming traffic across worker nodes to ensure efficient resource utilization and high availability. They play a crucial role in managing network traffic and optimizing cluster performance.
This architecture enables Hyperstack Kubernetes to support AI, machine learning, and high-performance computing workloads efficiently, providing a seamless and scalable container orchestration environment.
How to create a Kubernetes cluster
1. Create a Kubernetes cluster
POST https://infrahub-api.nexgencloud.com/v1/core/clusters
To create a Kubernetes cluster, specify its configuration details by filling in the required fields in the request payload. These fields include the cluster name, node type, Kubernetes version, hardware configuration, and other relevant parameters. Once the payload is complete, send the request to the /core/clusters
API using the POST method to deploy the cluster with the specified configuration.
Cluster creation can take between 5-20 minutes, depending on the cluster size and the number of clusters being created. You can check the status of the cluster by calling the 'Retrieve Cluster Details' API. If your cluster is not in the ACTIVE
state after 30 minutes, please delete the cluster using the Delete Cluster API and try again.