Skip to content
forked from replicatedhq/kURL

Production-grade, airgapped Kubernetes installer combining upstream k8s with overlays and popular components

License

Notifications You must be signed in to change notification settings

halcyondude/kURL

 
 

Repository files navigation

Kurl-logo

kURL

kURL is a Kubernetes installer for airgapped and online clusters.

kURL relies on kubeadm to bring up the Kubernetes control plane, but there are a variety of tasks a system administrator must perform both before and after running kubeadm init in order to have a production-ready Kubernetes cluster, such as installing Docker, configuring Pod networking, or installing kubeadm itself. The purpose of this installer is to automate those tasks so that any user can deploy a Kubernetes cluster with a single script.

Getting Started

For more information please see kurl.sh/docs/

Community

For questions about using kURL, there's a Replicated Community forum, and a #kurl channel in Kubernetes Slack.

Notifications

kURL offers several optional add-ons for Kubernetes cluster creation. These open-source technology add-ons are distributed under various open-source licenses.

One optional add-on available for object storage is MinIO. Use of MinIO is governed by the GNU AGPLv3 license that can be found in their License file.

One optional add-on available for Metrics & Monitoring is Prometheus via the Prometheus Operator, which includes Grafana. Use of Grafana is currently governed by the GNU AGPL v3 license that can be found in their License file.

Releases

For details on each release, see kurl.sh/release-notes.

Release assets and changelog are available on the GitHub Releases page.

Releases are created by a GitHub Workflow when a tag is pushed. The tag should follow the date format vYYYY.MM.DD-#.

See the following example:

git tag -a v2021.06.22-0 -m "Release v2021.06.22-0" && git push origin v2021.06.22-0

Software Bill of Materials

Signed SBOMs for kURL Go and Javascript dependencies are combined into a tar file and are included with each release.

  • kots-sbom.tgz contains SBOMs for Go and Javascript dependencies
  • kots-sbom.tgz.sig is the digital signature for kots-sbom.tgz
  • key.pub is the public key from the key pair used to sign kots-sbom.tgz

The following example illustrates using cosign to verify that kots-sbom.tgz has not been tampered with.

$ cosign verify-blob -key key.pub -signature kots-sbom.tgz.sig kots-sbom.tgz
Verified OK

About

Production-grade, airgapped Kubernetes installer combining upstream k8s with overlays and popular components

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 82.7%
  • Go 7.9%
  • TypeScript 4.9%
  • JavaScript 1.8%
  • Makefile 1.1%
  • SCSS 0.6%
  • Other 1.0%