Installazione KuberAltro: differenze tra le versioni

Da GazziNet.
Vai alla navigazione Vai alla ricerca
Nessun oggetto della modifica
Nessun oggetto della modifica
Riga 39: Riga 39:


  sudo sed -i 's/^disabled_plugins = \["cri"\]$/enabled_plugins = \["cri"\]/' /etc/containerd/config.toml
  sudo sed -i 's/^disabled_plugins = \["cri"\]$/enabled_plugins = \["cri"\]/' /etc/containerd/config.toml
FATE SNAP!!
  reboot
  reboot
# This overwrites any existing configuration in /etc/yum.repos.d/kubernetes.repo
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/repodata/repomd.xml.key
exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni
EOF
sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
sudo systemctl enable --now kubelet
sudo modprobe overlay
sudo modprobe br_netfilter
sudo sysctl --system
sudo reboot
ATTENZIONE SOLO SUL NODO PRINCIPALE:
kubeadm init (attenzione mettete l'opzione dell'ip)
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
--ngix--provate--
kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.14.5/config/manifests/metallb-native.yaml 
kubectl create secret generic -n metallb-system memberlist --from-literal=secretkey="$(openssl rand -base64 128)"
Crea un file metallb-config.yaml
  apiVersion: metallb.io/v1beta1
  kind: IPAddressPool
  metadata:
    name: first-pool
    namespace: metallb-system
  spec:
    addresses:
    - 172.16.1.150-172.16.1.160
kubectl apply -f metallb-config.yaml
Crea un file YAML per il deployment di Nginx, chiamato nginx-deployment.yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:latest
        ports:
        - containerPort: 80
kubectl apply -f nginx-deployment.yaml
Crea un file YAML per il servizio, chiamato nginx-service.yaml:
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  type: LoadBalancer
  loadBalancerIP: 172.16.1.150  # IP statico desiderato
  selector:
    app: nginx
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
kubectl apply -f nginx-service.yaml
--- aGGIUNGERE ALTRO NODO:
da /root/.kube
scp config root@172.16.1.201:$PWD
guardare: https://www.youtube.com/watch?v=zNbqxPRTjFg
https://goteleport.com/blog/troubleshooting-kubernetes-networking/
https://kube-vip.io/docs/troubleshooting/arp/

Versione delle 17:35, 19 mag 2024

Prereq: Iso Oracle linux 8.9 - 4VCPU 8Gbyte di RAM - 32Gbyte disco

Tutto in inglese solo tastiera e Timezone

Software selection: Minimal Install

Partizione: ol-root 30GiB - /boot 1024Mbyte

Settare in installazione IP e Hostname.

Settare Root Password

dnf update -y;
systemctl disable firewalld;
systemctl stop firewalld;
sudo setenforce 0;
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config;
dnf install net-tools -y;
dnf install curl -y;
dnf install wget -y;
dnf install -y iproute-tc;
dnf install dnsutils -y
sudo yum install -y yum-utils;
reboot


sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo;
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin;
sudo systemctl start docker;
sudo systemctl enable docker;
sudo docker run hello-world;

Mettere a posto il file hosts con la risoluzione dei nodi es.:

172.16.1.200 kuber01 kuber01.gazzi.net
172.16.1.201 kuber02 kuber02.gazzi.net

abilitare:

sudo sed -i 's/^disabled_plugins = \["cri"\]$/enabled_plugins = \["cri"\]/' /etc/containerd/config.toml
reboot