Giter Club home page Giter Club logo

kontainerd's Introduction

Kontainerd

Kubeadm Vagrant Ansible Ubuntu

Creating a kubernetes cluster using Vagrant machines as nodes and Containerd as a container runtime

  • This role is just an automation for the steps of aCloudGuru CKS Lesson Building a Kubernetes Cluster

  • Parts of the roles are also borrowed from my previous projects for creating K8s cluster

  • Vagrant ansible local provisioner is used to execute the roles on the target hosts

  • Kubernetes version to be used can be modified by changing the fact inside kontainerd role

- set_fact:
    k8s_version: 1.20.1-00 # Change to whatever desired version

Vagrant Machines details:

Machine Address FQDN
master 192.168.100.11 master master.com
worker 192.168.100.10 worker worker.com

How to use:

# Clone the repo
git clone https://github.com/theJaxon/Kontainerd.git

cd Kontainerd

# Start the machines 
vagrant up 

# SSH into any of the machines 
vagrant ssh < master | worker >

Optional - Install Podman:

  • Since docker isn't available an alternative is to use podman as a container engine, to do this just include podman.yml in kontainerd role.
- name: Install Podman
  include_tasks: podman.yml

  • One of the quirks i've faced was with installing kubernetes packages (kubeadm, kubectl and kubelet), the problem has to do with the order so i started first by installing kubelet which in turn installed kubectl (and this was breaking the installation since it was installing latest kubectl version not the version i'm specifying) so upon continuing the task another attempt to install kubectl is made with a downgraded version thus ansible errors.
  • The workaround was to change the sequence and start by installing the desired kubectl version

kontainerd's People

Contributors

thejaxon avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.