Installazione KuberAltro: differenze tra le versioni
Vai alla navigazione
Vai alla ricerca
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 38: | Riga 38: | ||
abilitare: | abilitare: | ||
sudo sed -i 's/^disabled_plugins$/enabled_plugins/' /etc/containerd/config.toml | sudo sed -i 's/^disabled_plugins = \["cri"\]$/enabled_plugins = \["cri"\]/' /etc/containerd/config.toml | ||
Versione delle 17:34, 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
FATE SNAP!!
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/