ficheros separados

This commit is contained in:
trigkeyb
2025-01-09 19:47:14 +01:00
parent d95892f269
commit abc2e585b0
3 changed files with 78 additions and 2 deletions

View File

@@ -17,13 +17,13 @@ VMNET="vmbr0"
qm stop $VMID qm stop $VMID
qm destroy $VMID qm destroy $VMID
qm create $VMID --name ubuntu-cloud --memory 2048 --cores 2 --net0 virtio,bridge=$VMNET --cpu host --agent enabled=1 --tags k8s qm create $VMID --name ubuntu-cloud --memory 8192 --cores 4 --net0 virtio,bridge=$VMNET --cpu host --agent enabled=1 --tags k8s
qm set $VMID --ide2 VMs_storage-E:cloudinit --boot c --bootdisk scsi0 --serial0 socket --vga serial0 qm set $VMID --ide2 VMs_storage-E:cloudinit --boot c --bootdisk scsi0 --serial0 socket --vga serial0
# qm importdisk $VMID /mnt/pve/ISOs_storage/template/iso/ubuntu-24.04-server-cloudimg-amd64.img VMs_storage-E --format qcow2 # qm importdisk $VMID /mnt/pve/ISOs_storage/template/iso/ubuntu-24.04-server-cloudimg-amd64.img VMs_storage-E --format qcow2
qm importdisk $VMID /mnt/pve/ISOs_storage/template/iso/ubuntu-24.04-server-cloudimg-amd64.img local --format qcow2 qm importdisk $VMID /mnt/pve/ISOs_storage/template/iso/ubuntu-24.04-server-cloudimg-amd64.img local --format qcow2
qm set $VMID --scsihw virtio-scsi-pci --scsi0 $VMSTORAGE:$VMID/vm-$VMID-disk-0.qcow2 qm set $VMID --scsihw virtio-scsi-pci --scsi0 $VMSTORAGE:$VMID/vm-$VMID-disk-0.qcow2
qm disk resize $VMID scsi0 10G qm disk resize $VMID scsi0 40G
qm set $VMID --ipconfig0 ip=dhcp --cicustom "user=VMs_storage-E:snippets/user_data.yaml" qm set $VMID --ipconfig0 ip=dhcp --cicustom "user=VMs_storage-E:snippets/user_data.yaml"
qm start $VMID qm start $VMID

50
instala_kubernetes.sh Executable file
View File

@@ -0,0 +1,50 @@
#!/bin/bash
# Variables
KUBERNETES_VERSION="1.28.2-00" # Cambia por la versión que necesites
USER="curso" # Usuario con acceso sudo
# Actualizar sistema
echo "Actualizando el sistema..."
sudo apt-get update && sudo apt-get upgrade -y
# Desactivar swap (requisito de Kubernetes)
echo "Desactivando swap..."
sudo swapoff -a
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
# Configurar el repositorio de Kubernetes
echo "Agregando el repositorio de Kubernetes..."
sudo apt-get install -y apt-transport-https ca-certificates curl
curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/kubernetes-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
# Instalar Kubernetes
echo "Instalando Kubernetes (kubeadm, kubelet, kubectl)..."
sudo apt-get update
sudo apt-get install -y kubelet=$KUBERNETES_VERSION kubeadm=$KUBERNETES_VERSION kubectl=$KUBERNETES_VERSION
sudo apt-mark hold kubelet kubeadm kubectl
# Habilitar módulos necesarios para Kubernetes
echo "Habilitando módulos del kernel..."
sudo modprobe overlay
sudo modprobe br_netfilter
cat <<EOF | sudo tee /etc/sysctl.d/kubernetes.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF
sudo sysctl --system
# Instalar containerd
echo "Instalando containerd..."
sudo apt-get install -y containerd
sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml
# Configurar containerd para usar systemd como driver de cgroup
sudo sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml
sudo systemctl restart containerd
sudo systemctl enable containerd

26
levanta_cluster.sh Executable file
View File

@@ -0,0 +1,26 @@
#!/bin/bash
# Variables
KUBERNETES_VERSION="1.28.2-00" # Cambia por la versión que necesites
USER="curso" # Usuario con acceso sudo
# Inicializar el nodo maestro (opcional)
read -p "¿Quieres inicializar el nodo maestro ahora? (y/n): " INIT_MASTER
if [ "$INIT_MASTER" == "y" ]; then
echo "Inicializando el nodo maestro..."
sudo kubeadm init --pod-network-cidr=192.168.0.0/16
# Configurar kubectl para el usuario
echo "Configurando kubectl para el usuario $USER..."
mkdir -p /home/$USER/.kube
sudo cp -i /etc/kubernetes/admin.conf /home/$USER/.kube/config
sudo chown $(id -u $USER):$(id -g $USER) /home/$USER/.kube/config
# Instalar red de pods (Calico)
echo "Instalando la red de pods (Calico)..."
kubectl apply -f https://docs.projectcalico.org/v3.25/manifests/calico.yaml
else
echo "Nodo maestro no inicializado. Ejecuta 'kubeadm init' manualmente si deseas configurarlo más tarde."
fi
echo "Instalación de Kubernetes completada."