Caution
This repository has been archived. All content from this repository has been migrated to UpCloud's product documentation and product tutorials.
This repository contains sample configurations for Terraform and Kubernetes manifests to get started with our UpCloud Kubernetes Service (UKS).
Note that this repository is still evolving. Please check back once in a while and also familiarise yourself with the known issues. This repository will continue to exist while we are building better documentation with examples.
The simplest way to create a cluster is to use our Control Panel. You can do so by following these steps:
- Log in to the UpCloud Control Panel.
- Go to
Kubernetes
page using the left-hand side menu. - Click
Create new cluster
. - Select a Private Network for your Worker Nodes. This network should be in the same zone as the cluster you are creating. The network can not be connected to an existing cluster, can not have an attached router, and should have DHCP enabled with default route from DHCP disabled. For IP network of your SDN network, you can use for example
172.24.1.0/24
. - Create a node group or use the default node-group; node group is a group of workers with identical image templates.
- Name your cluster.
- Click
Create
button. - Cluster creation will take a few minutes as worker nodes are being provisioned and a DNS record is prepared.
- When the cluster is running, you can download your cluster's kubeconfig file; it allows you to access your cluster easily via command line with kubectl. See Exposing Services for example on deploying an Hello UKS application to your newly created cluster.
You can also create a cluster using the following ways:
- Terraform - see terraform/README.md for more precise instructions
- Direct API access - see UpCloud API Documentation for UKS API documentation; authentication can be achieved with these instructions
You can get your kubeconfig by going to your cluster details page in Control Panel.
Alternatively, if you use Terraform you can leverage local_file
provider to create kubeconfig file after the cluster is deleted (see terraform example)
See ccm/README.md.
See storage/README.md.
See migration/README.md.
See KNOWN_ISSUES.md