Score:-2

Deploying Kubernetes from scratch

nf flag

Could someone share some good tutorials how to deploy kubernetes cluster on my own server?

I do not want to use Amazon, Digital Ocean or Linode.

I have my proxmox server.

So the ideal scenario will be 1 master and 3 slave nodes; 4-th if its necessary.

I've watch some tutorials but still I would like to find out more and from people who can point me in right direction.

My nodes currently have installed only operating system, which is Ubuntu 20.04

Score:1
cn flag

The best option is to start with the Kubernetes Getting started section.

For a cluster you're managing yourself, the officially supported tool for deploying Kubernetes is kubeadm.

Check this link - Bootstrapping clusters with kubeadm. This guide describes all the necessary steps:

  • Installing kubeadm
  • Troubleshooting kubeadm
  • Creating a cluster with kubeadm
  • Customizing components with the kubeadm API
  • Options for Highly Available Topology
  • Creating Highly Available Clusters with kubeadm
  • Set up a High Availability etcd Cluster with kubeadm
  • Configuring each kubelet in your cluster using kubeadm
  • Dual-stack support with kubeadm

Also, check this link - Production environment:

A production-quality Kubernetes cluster requires planning and preparation. If your Kubernetes cluster is to run critical workloads, it must be configured to be resilient. This page explains steps you can take to set up a production-ready cluster, or to promote an existing cluster for production use.

There is also Kubespray:

Kubespray is a composition of Ansible playbooks, inventory, provisioning tools, and domain knowledge for generic OS/Kubernetes clusters configuration management tasks.

Kubespray vs Kubeadm

Kubeadm provides domain Knowledge of Kubernetes clusters' life cycle management, including self-hosted layouts, dynamic discovery services and so on. Had it belonged to the new operators world, it may have been named a "Kubernetes cluster operator". Kubespray however, does generic configuration management tasks from the "OS operators" ansible world, plus some initial K8s clustering (with networking plugins included) and control plane bootstrapping.
Kubespray has started using kubeadm internally for cluster creation since v2.3 in order to consume life cycle management domain knowledge from it and offload generic OS configuration things from it, which hopefully benefits both sides.

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.