Skip to content

masezou/k8s-study-vanilla

Repository files navigation

k8s-study-vanilla

Kubernetes single node automation

Features

This script will create only 1 node which the server is control-plane and worker node.

This single k8s node includes local repository, minio, nfs server for nfs driver

Storage class: Longhorn/nfs-sub/vSphere CSI.

Slide3

Slide4

Requirement

-Ubuntu Linux Server 20.04.5/22.04.2 amd64 4vCPU minimum 8GB RAM Recommend 16GB RAM 200GB HDD at least.. (ARM is experimental)

-If you want to use Kubvevirt (Virtualization), You need to set Virtualization passthrough setting in vCPU setting.

image

-If you want to use vSphre CSI Driver, You need to have vCenter 7.0U3 above and any VM need to be set "disk.EnableUUID" and "ctkEnabled" in option. At least 1 vCenter and 1 ESX. vCenter cluster is option.

Untitled

image

-Network segment 24bit is required

Installation

Configure your clone. Before execute script, please change following.

  • 3-configk8s.sh: IPRANGE: loadbalancer will be assigned this subnet, thus you need to set unused IP subnet.

  • 5-csi-vsphere.sh: vCenter configuration in vSphere CSI driver and Kasten Storage setting.

Please read 00-Detailed_Instruction-En.txt (English) / 00-Detailed_Instruction-Ja.txt (Japanese) also.

Usage (deploy kubernetes)

sudo -i
git clone https://github.com/masezou/k8s-study-vanilla
cd k8s-study-vanilla

Execute each step.

./0-minio.sh ;./1-tools.sh ; ./2-buildk8s-lnx.sh ; ./3-configk8s.sh ; ./4-csi-storage.sh

Then if your Ubuntu VM is on vSphere with vCenter 7.0U3 above.

./5-csi-vsphere.sh

After Installation, you can review installation result.

./result.sh

Note

  • If you want to add separate storage volume, you can mount extra volume to /disk.

  • Windows environment is not supported