This project has ended, and further Lokomotive development has halted.
As it is free software, people are free and welcome to fork and develop the codebase on their own. However, to avoid any confusion, the original repository is archived and we recommend any further fork/development to proceed with an explicit rename and rebranding first.
We encourage all interested parties to mirror any relevant bits as we can't actively guarantee their existence in the future.
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.
- Kubernetes 1.19 (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
Lokomotive provides the lokoctl CLI tool to manage clusters. Check the installation guide to install it.
Follow one of the quickstart guides for the supported platforms:
- Backup Rook Ceph volume on S3 using Velero
- Kubernetes storage with Rook Ceph on Equinix Metal
- Set up monitoring on Lokomotive
- Setting up an HTTP ingress controller on Lokomotive with MetalLB and Contour on Equinix Metal
- Setting up cluster authentication on Lokomotive with GitHub, Dex and Gangway
- Setting up third party OAuth for Grafana
- Upgrading bootstrap kubelet
- Upgrading etcd
- Using Cloudflare as a DNS provider for Lokomotive
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.
Check out our contributing guidelines.
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.