UBE - Ressources

Installation Kubectl

curl -LO https://dl.k8s.io/release/$(curl -Ls https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
kubectl version --client

Installation Minikube

sudo apt install qemu-utils qemu-system-x86 qemu-system-gui

curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
&& chmod +x minikube

sudo mkdir -p /usr/local/bin/
sudo install minikube /usr/local/bin/

minikube start
minikube dashboard
minikube config view

Installation Docker

curl -fsSL https://get.docker.com -o install-docker.sh
sudo sh install-docker.sh

Installation Vagrant

wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install vagrant

Installation VirtualBox

wget -O- -q https://www.virtualbox.org/download/oracle_vbox_2016.asc | sudo gpg --dearmour -o /usr/share/keyrings/oracle_vbox_2016.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/oracle_vbox_2016.gpg] http://download.virtualbox.org/virtualbox/debian bookworm contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list
sudo apt update
sudo apt install virtualbox-7.0

## Fix kernel module Debian 12
sudo apt install linux-headers-6.1.0-23-amd64
sudo /sbin/vboxconfig
sudo reboot

## Fix VirtualBox version + Vagrant
sudo apt install virtualbox-7.0

## Run first box (executer la première machine)
vagrant init debian/bookworm64
vagrant up

## Connect to machine
vagrant ssh

## Configure network (configurer le réseau)
vagrant destroy
nano ./Vagrantfile
# ajouter la ligne dans les configurations 
=> config.vm.network "private_network", ip: "192.168.56.10"
vagrant up

Installation RKE2

# Master
curl -sfL https://get.rke2.io | sh -
systemctl enable rke2-server.service
systemctl start rke2-server.service
cat /var/lib/rancher/rke2/server/node-token

# Agent
curl -sfL https://get.rke2.io | INSTALL_RKE2_TYPE="agent" sh -
systemctl enable rke2-agent.service
mkdir -p /etc/rancher/rke2/
nano /etc/rancher/rke2/config.yaml
systemctl start rke2-agent.service

# Rke2 Config (agent)
server: https://192.168.1.100:9345
token: K1075c7443e60bc5703ac993efaaece5ed35e94e01fa9525d9030feb9b76062a8cc::server:d414f939d74d6129f8a69bd91aa391bd


# Configure Kubectl
sudo cp /etc/rancher/rke2/rke2.yaml ~/.kube/config

Deployment YAML

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
spec:
  replicas: 1
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
      - name: my-app-container
        image: nginx