Kubermatic KubeOne automates cluster operations on all your cloud, on-prem, edge, and IoT environments. KubeOne can install high-available (HA) master clusters as well single master clusters.
All user documentation for the latest stable version is available at the KubeOne docs website.
Information about the support policy (natively-supported providers, supported Kubernetes versions, and supported operating systems) can be found in the Compatibility document.
For a quick start, you should check the following documents:
- Architecture to get familiar with the concepts of KubeOne.
- Getting KubeOne to download and install KubeOne locally.
- Provisioning to provision the Kubernetes cluster.
The fastest way to install KubeOne is to use the installation script:
curl -sfL get.kubeone.io | sh
The installation script downloads the release archive from GitHub, installs the
KubeOne binary in your /usr/local/bin
directory, and unpacks the example
Terraform configs, addons, and helper scripts in your current working
directory.
For other installation methods, check the Getting KubeOne guide on our documentation website.
KubeOne works on any infrastructure out of the box. All you need to do is to provision the infrastructure and let KubeOne know about it. KubeOne will take care of setting up a production ready Highly Available cluster!
KubeOne natively supports the most popular providers, including AWS, Azure, DigitalOcean, GCP, Hetzner Cloud, Nutanix, OpenStack, VMware Cloud Director, and VMware vSphere. The natively supported providers enjoy additional features such as integration with Terraform and Kubermatic machine-controller.
KubeOne is a Kubernetes Conformance Certified installer with support for all upstream-supported Kubernetes versions.
Define all your clusters declaratively, in a form of a YAML manifest. You describe what features you want and KubeOne takes care of setting them up.
The built-in integration with Terraform, allows you to easily provision your infrastructure using Terraform and let KubeOne take all the needed information from the Terraform state.
Manage your worker nodes declaratively by utilizing the Cluster-API and Kubermatic machine-controller. Create, remove, upgrade, or scale your worker nodes using kubectl. Kubermatic operating-system-manager is responsibile for managing user-data for worker machines in the cluster.
We very appreciate contributions! If you want to contribute or have an idea for a new feature or improvement, please check out our contributing guide.
If you want to get in touch with us and discuss about improvements and new features, please create a new issue on GitHub or connect with us over Slack:
If you encounter issues, please create a new issue on GitHub or
talk to us on the #kubeone
Slack channel. When reporting
a bug please include the following information:
- KubeOne version or Git commit that you're running (
kubeone version
), - description of the bug and logs from the relevant
kubeone
command (if applicable), - steps to reproduce the issue,
- expected behavior
If you're reporting a security vulnerability, please follow the process for reporting security issues.
See the list of releases to find out about feature changes.