Lokomotive is an open source Kubernetes distribution that ships pure upstream Kubernetes. It focuses on being minimal, easy to use, and secure by default.
Lokomotive is fully self-hosted and includes Lokomotive Components adding essential functionality for production not shipped with upstream Kubernetes.
Features
- Kubernetes 1.18 (upstream, via kubernetes-incubator/bootkube)
- Fully self-hosted, including the kubelet
- Single or multi-master
- Calico networking
- On-cluster etcd with TLS, RBAC-enabled, network policies
Installation
Lokomotive provides the lokoctl CLI tool to manage clusters. Check the installation guide to install it.
Getting started
Follow one of the quickstart guides for the supported platforms:
Documentation
Reference guides
How to guides
- Setting up cluster authentication on Lokomotive with GitHub, Dex and Gangway
- Setting up an HTTP ingress controller on Lokomotive with MetalLB and Contour on Packet)
Issues
Please file issues on this repository.
Before filing an issue, please ensure you have searched through / reviewed existing issues.
If an issue or PR you’d like to contribute to is already assigned to someone, please reach out to them to coordinate your work.
If you would like to start contributing to an issue or PR, please request to have it assigned to yourself.
Contributing
Check out our contributing guidelines.
License
Unless otherwise noted, all code in the Lokomotive repository is licensed under the Apache 2.0 license. Some portions of the codebase are derived from other projects under different licenses; the appropriate information can be found in the header of those source files, as applicable.