Skip to content

hamidgholami/k8s-lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lightweight Kubernetes Labratory

Twitter Follow GitHub Follow Linkedin Badge

This is a 3-node-cluster Kubernetes that uses k3s. It can be very usefull for learning Kubernetes concepts easy and fast without struggling with installing kubernetes by kubeadm or minikube. Although learning methods of Kubernetes installation is definitely crucial, for first step and for learning vital and basic concepts of Kubernetes we need a lightweight and repeatable infrastructure.

Requirement

Make sure that following tools are installed on your host.

  1. Ansible
  2. Vagrant
  3. libvirt/KVM or virtualbox

SSH configuration

Add the following configuration in ~/.ssh/config

Host 10.0.0.*
        Hostname %h

Match Host 10.0.0.*
        User vagrant
        Port 22
        UserKnownHostsFile /dev/null
        StrictHostKeyChecking no
        PasswordAuthentication no
        IdentityFile $HOME/.vagrant.d/insecure_private_key
        IdentitiesOnly yes
        LogLevel FATAL

How does it work?

Run below commands:

vagrant up --provider libvirt
# OR
vagrant up --provider virtualbox

Kubeconfig

For executing kubectl from your machine rather than in master node (node-1), copy the kubectl configuration in your machine:

scp [email protected]:~/.kube/config ~/.kube/config

Changing default storage pool directory

URL
For changing storage pool default path, the following commands can be used:

virsh pool-list
virsh pool-destroy default
virsh pool-undefine default
virsh pool-define-as --name default --type dir --target /hdd/pool_ssd_nvm
virsh pool-autostart default
virsh pool-start default