On-Premise Production Kubernetes Cluster Installers
- Introduction
- Comparative Analysis of Kubernetes Deployment Tools
- Deploying Kubernetes Cluster with Kops
- Deploying Kubernetes Cluster with Kubeadm
- Deploying Kubernetes Cluster with Ansible
- kube-aws Kubernetes on AWS
- Kubespray
- Conjure up
- WKSctl
- Terraform (kubernetes the hard way)
- Caravan
- ClusterAPI
- Microk8s
- k8s-tew
- Project Neco
- Zarf. DevSecOps for Air Gap Systems
- Kubernetes Operating Systems
- Kubernetes Distributions
Introduction
- containerjournal.com: Deploying Kubernetes on Bare Metal
- thenewstack.io: Kubernetes on Bare Metal vs. VMs: Itβs Not Just Performance
- containerjournal.com: When Kubernetes-as-a-Service Doesnβt Cut It
Comparative Analysis of Kubernetes Deployment Tools
- A Comparative Analysis of Kubernetes Deployment Tools: Kubespray, kops, and conjure-up
- wecloudpro.com: Deploy HA kubernetes cluster in AWS in less than 5 minutes
Deploying Kubernetes Cluster with Kops
- GitHub: Kubernetes Cluster with Kops
- Kubernetes.io: Installing Kubernetes with kops
- Minikube and docker client are great for local setups, but not for real clusters. Kops and kubeadm are tools to spin up a production cluster. You don’t need both tools, just one of them.
- On AWS, the best tool is kops. Since AWS EKS (hosted kubernetes) is currently available, this is the preferred option (you don’t need to maintain the masters).
- For other installs, or if you can’t get kops to work, you can use kubeadm.
- Setup kops in your windows with virtualbox.org and vagrantup.com . Once downloaded, to type a new linux VM, just spin up ubuntu via vagrant in cmd/powershell and run kops installer:
- blog.ivnilv.com: Rotating Kops Etcd Certificates
- blog.kubecost.com: Kubernetes kOps: Step-By-Step Example & Alternatives
C:\ubuntu> vagrant init ubuntu/xenial64
C:\ubuntu> vagrant up
C:\ubuntu> vagrant ssh-config
C:\ubuntu> vagrant ssh
$ curl -LO https://github.com/kubernetes/kops/releases/download/$(curl -s https://api.github.com/repos/kubernetes/kops/releases/latest | grep tag_name | cut -d '"' -f 4)/kops-linux-amd64
$ chmod +x kops-linux-amd64
$ sudo mv kops-linux-amd64 /usr/local/bin/kops
Deploying Kubernetes Cluster with Kubeadm
- Kubernetes Cluster with Kubeadm It works on any deb / rpm compatible Linux OS, for example Ubuntu, Debian, RedHat or CentOS. This is the main advantage of kubeadm. The tool itself is still in beta (Q1 2018), but is expected to become stable somewhere this year. It’s very easy to use and lets you spin kubernetes cluster in just a couple of minutes.
- medium.com: Demystifying High Availability in Kubernetes Using Kubeadm
- Setting Up a Kubernetes Cluster on Ubuntu 18.04
- itnext.io: Up and running out of the cloud β How to setup the Masters using kubeadm bootstrap In this article, youβll see how to make use of kubeadm bootstrap to set up and join 3 master instances as members of our cluster.
- Set up a Bare Metal Kubernetes cluster with
- blog.tobias-huebner.org: Low-budget self-hosted Kubernetes π
- mirantis.com: How to install Kubernetes with Kubeadm: A quick and dirty guide
- kosyfrances.com: Using kubeadm to create a Kubernetes 1.20 cluster on VirtualBox with Ubuntu
- blog.radwell.codes: Provisioning Single-node Kubernetes Cluster using kubeadm on Ubuntu 20.04
- medium.com/@ZiXianZeroX: Setting Up an On-premise Kubernetes Cluster from Scratch
- thenewstack.io: How to Deploy Kubernetes with Kubeadm and containerd
- faun.pub: Configuring HA Kubernetes cluster on bare metal servers with kubeadm. ⅓ In this article, you’ll create a HA Kubernetes cluster with multi masters topology, with an external Etcd cluster as a base layer and a MetalLB load balancer. On all worker nodes, you’ll deploy a GlusterFS for storage.
- blog.learncodeonline.in: Kubernetes Cluster Deployment on CentOS Linux
- github.com/kubernetes/kubeadm: High Availability Considerations
- medium.com/@brunosquassoni: Creating a Kubernetes Cluster [STEP BY STEP]
- medium.com/@benjaminacar.private: A Comprehensive Guide to Setup a New K8s Cluster
Deploying Kubernetes Cluster with Ansible
- Ansible Role - Kubernetes (Jeff Geerling)
- krd offers a reference for deploying a Kubernetes cluster. Its ansible playbooks allow to provision a deployment on Bare-metal or Virtual Machines
- Kubeinit π KubeInit provides Ansible playbooks and roles for the deployment and configuration of multiple Kubernetes distributions. KubeInit’s mission is to have a fully automated way to deploy in a single command a curated list of prescribed architectures.
- itwonderlab.com: Kubernetes Cluster using Vagrant and Ansible with Containerd (in 3 minutes) π
kube-aws Kubernetes on AWS
- Kubernetes on AWS (kube-aws) A command-line tool to declaratively manage Kubernetes clusters on AWS
Kubespray
- Kubespray
- redhat.com: An introduction to Kubespray By combining Ansible and Kubernetes, Kubespray can deploy Kubernetes clusters on multiple machines.
- adamtheautomator.com/kubespray: Conquer Kubernetes Clusters with Ansible Kubespray
- Manually deploying Kubernetes can be challenging for administrators, especially on bare-metal infrastructure deployment. Luckily, there is an automation tool for deploying production-ready Kubernetes called Kubespray.
- Kubespray is an Ansible Playbook for deploying Kubernetes Cluster and provides a High Availability cluster, composable attributes, components, and supports multiple Linux distributions. Kubespray also supports cloud services like AWS, GCE, and Azure.
- github.com/bluxmit: Kubespray Workspace Containerized development, execution and admin environment for Kubernetes, Ansible and Terraform.
Conjure up
WKSctl
- Weave Kubernetes System Control - wksctl Open Source Weaveworks Kubernetes System
- WKSctl - A New OSS Kubernetes Manager using GitOps
- WKSctl: a Tool for Kubernetes Cluster Management Using GitOps
Terraform (kubernetes the hard way)
- Kelsey Hightower: kubernetes the hard way
- napo.io: Kubernetes The (real) Hard Way on AWS
- napo.io: Terraform Kubernetes Multi-Cloud (ACK, AKS, DOK, EKS, GKE, OKE)
- medium: Upgrading Kubernetes The Hard Way
- Monzo: we learned a lot from self-hosting Kubernetes, but we wouldn’t do it again Don’t need to do it the hard way anymore
- medium: Kubernetes the hard way on Docker
- Autoscalable Kubernetes cluster at Exoscale, using Packer and Terraform
- Kubernetes the Hard Way: Azure Edition teaches you how to deploy Kubernetes from scratch on Azure based on the legendary Kubernetes the Hard Way.
- Kubernetes The Hard Way: AWS Edition AWS version of Kelsey’s kubernetes-the-hard-way
- medium.com/@norlin.t: Kubernetes the hard (illumos) way
- medium.com/@norlin.t: Kubernetes the hard (illumos) way, last part
Caravan
ClusterAPI
- ClusterAPI Cluster API is a Kubernetes sub-project focused on providing declarative APIs and tooling to simplify provisioning, upgrading, and operating multiple Kubernetes clusters.
- itnext.io: Multi-Cloud and Multi-Cluster Declarative Kubernetes Cluster Creation and Management with Cluster API (CAPI β v1alpha3)
- medium: ClusterOps: 1-Line Commit to Upgrade Your Kubernetes Clusters π
- cncf.io webinar: Deploying Kubernetes to bare metal using cluster API
- itnext.io: Multi-Cloud and Multi-Cluster Declarative Kubernetes Cluster Creation and Management with Cluster API (CAPI β v1alpha3)
- github.com: Cluster API Helm Chart - youtube: Cluster API & FluxCD - the power of GitOps A Helm chart to install Cluster API manifests
- weave.works: Manage Thousands of Clusters with GitOps and the Cluster API
- thenewstack.io: Cluster API Offers a Way to Manage Multiple Kubernetes Deployments
- thenewstack.io: Provision Bare-Metal Kubernetes with the Cluster API
- cncf.io: Kubernetes Cluster API reaches production readiness with version 1.0
- weaveworks/cluster-api-provider-existinginfra Manage existing infrastructure with Cluster API using this provider. A Cluster API v1alpha3 Infrastructure Provider for already-provisioned hosts running Linux. This controller is split out from and used by weaveworks/wksctl.
- piotrminkowski.com: Create and Manage Kubernetes Clusters with Cluster API and ArgoCD
Microk8s
- Microk8s
- Kata Containers on MicroK8s This repository encompasses a fully scripted Github workflow to test the transparent use of the runtime for Kata Containers (Katas) on MicroK8s
- MicroK8s & Kubernetes security benchmark from CIS
- cloudsavvyit.com: How to run your own kubernetes cluster with Microk8s
- thenewstack.io: Deploy Microk8s and the Kubernetes Dashboard for K8s Development
- thenewstack.io: Deploy a Kubernetes Cluster on Ubuntu Server with Microk8s
k8s-tew
- k8s-tew Kubernetes is a fairly complex project. For a newbie it is hard to understand and also to use. While Kelsey Hightowerβs Kubernetes The Hard Way, on which this project is based, helps a lot to understand Kubernetes, it is optimized for the use with Google Cloud Platform.
Project Neco
- cybozu-go/neco Neco is a project to build and maintain highly automated on-premise data centers using Kubernetes. A Neco data center consists of a few (from 3 to 5) management servers called boot servers and thousands of servers for Kubernetes clusters.
Zarf. DevSecOps for Air Gap Systems
- defenseunicorns/zarf DevSecOps for Air Gap & Limited-Connection Systems. Zarf massively simplifies the setup & administration of kubernetes clusters, cyber systems & workloads that support DevSecOps “across the air gap”.
Kubernetes Operating Systems
Kubernetes Distributions
- acloudguru.com: Which Kubernetes distribution is right for you?
- infoworld.com: 6 Kubernetes distributions leading the container revolution
- OpenShift
- VMware Tanzu Grid
- Rancher Kubernetes Engine
- Mirantis Kubernetes Engine
- Docker
- Canonical Kubernetes
- baeldung.com: Lightweight Kubernetes Distributions
- MiniKube
- MicroK8S
- Kind
- K3s
- K3d
Red Hat OpenShift
- Openshift Container Platform
- OKD The Community Distribution of Kubernetes that powers Red Hat OpenShift
- itprotoday.com: Who’s Winning in the Container Software Market π Thanks to its container customer training, the $1 billion container software market is Red Hatβs to lose. Where do the other players stand?
Rancher
Weave Kubernetes Platform
- weave.works: Weave Kubernetes Platform Automate Enterprise Kubernetes the GitOps way
- github: Weave Net - Weaving Containers into Applications
Ubuntu Charmed Kubernetes
VMware Kubernetes Tanzu and Project Pacific
- blogs.vmware.com: Introducing Project Pacific (vSphere with Kubernetes)
- VMware vSphere 7 with Kubernetes - Project Pacific
- VMware Kubernetes Tanzu
- cormachogan.com: A first look at vSphere with Kubernetes in action
- cormachogan.com: Building a TKG Cluster in vSphere with Kubernetes
- blogs.vmware.com: VMware Tanzu Service Mesh, built on VMware NSX is Now Available!
- tanzu.vmware.com: VMware Tanzu SQL: MySQL at Scale Made Easy for Kubernetes
- VMware hands-on Labs π
- wecloudpro.com: VMware Tanzu Community Edition π
- vmware-tanzu/octant Highly extensible platform for developers to better understand the complexity of Kubernetes clusters. Octant is a tool for developers to understand how applications run on a Kubernetes cluster. It aims to be part of the developer’s toolkit for gaining insight and approaching complexity found in Kubernetes. Octant offers a combination of introspective tooling, cluster navigation, and object management along with a plugin system to further extend its capabilities.
- zdnet.com: VMware brings Tanzu Application Platform into GA to ease Kubernetes adoption The platform, introduced in 2019, is designed to help customers quickly build and deploy software on any public cloud or on-premises Kubernetes cluster.
- cabai.pro: Instalando Tanzu Community Edition (TCE)
- dev.to/saintdle: Deploying Nvidia GPU enabled Tanzu Kubernetes Clusters
KubeAcademy Pro (free training)
- tanzu.vmware.com: Introducing KubeAcademy Pro: In-Depth Kubernetes Training, Totally Free
- kube.academy/pro π
Kontena Pharos
- Pharos π Kubernetes Distribution
- Stateful Kubernetes-In-a-Box with Kontena Pharos
Mirantis Docker Enterprise with Kubernetes and Docker Swarm
- Mirantis Docker Enterprise 3.1+ with Kubernetes
- Docker Enterprise 3.1 announced. Features:
- Istio is now built into Docker Enterprise 3.1!
- Comes with Kubernetes 1.17. Kubernetes on Windows capability.
- Enable Istio Ingress for a Kubernetes cluster with the click of a button
- Intelligent defaults to get started quickly
- Virtual services supported out of the box
- Inbuilt support for GPU Orchestration
- Launchpad CLI for Docker Enterprise deployment & upgrades
Mirantis k0s
- k0s
- infoq.com: Mirantis Announces k0s, a New Kubernetes Distribution
- medium: K0s Supports Kubernetes 1.22
K0s
- K0s - Zero Friction Kubernetes k0s is an all-inclusive Kubernetes distribution with all the required bells and whistles preconfigured to make building a Kubernetes clusters a matter of just copying an executable to every host and running it.
- medium: k0s Ready for Production
- medium: k0s Optimizes Start Time, Adds Cluster Level Backup/Restore and More
K8e
- xiaods/k8e K8e π (said ‘kuber easy’) - Simple Kubernetes Distribution. Builds on upstream project K3s as codebase, remove Edge/IoT features and extend enterprise features with best practices.
Typhoon
- poseidon/typhoon **Typhoon is a minimal and free Kubernetes distribution with Terraform.*- typhoon.psdn.io
kurl
- kurl.sh kURL is a Kubernetes installer for air-gapped and online clusters. kURL relies on kubeadm but automates tasks such as installing the container runtime, configuring pod networking, etc., so any user can deploy a Kubernetes cluster with a single script.