informatica:linux:kubernetes
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
informatica:linux:kubernetes [2022/09/24 08:14] – [Balanceador capa 4 kube-apiserver] javi | informatica:linux:kubernetes [2023/09/25 07:05] (current) – [Nodo (común para control plane y worker)] javi | ||
---|---|---|---|
Line 23: | Line 23: | ||
**IMPORTANTE**: | **IMPORTANTE**: | ||
- | * Kubernetes | + | * Kubernetes |
+ | |||
+ | * Docker Engine | ||
* Para instalar containerd usaremos los paquetes, que los distribuye Docker Inc. | * Para instalar containerd usaremos los paquetes, que los distribuye Docker Inc. | ||
Line 524: | Line 526: | ||
===== Oracle cloud ===== | ===== Oracle cloud ===== | ||
+ | |||
+ | **OJO**: una vez pasa el período de prueba gratix NO se pueden modificar, por lo que es MUY arriesgado confiar en este servicio. Por ejemplo si el puerto del ingress controller cambia del 32386 no se pueden añadir/ | ||
Oracle cloud ofrece por la patilla y para siempre un balanceador de capa 4 con IP pública y estática. | Oracle cloud ofrece por la patilla y para siempre un balanceador de capa 4 con IP pública y estática. | ||
Line 535: | Line 539: | ||
| k8s3 | 1.2.3.7 | 10.0.0.4 | Tercer control plane | | | k8s3 | 1.2.3.7 | 10.0.0.4 | Tercer control plane | | ||
- | ==== Load balancer ==== | + | Creamos: |
- | + | ||
- | Listener | + | |
- | + | ||
- | ^ Protocol ^ Ingress Traffic Port ^ Backend Set ^ | + | |
- | | TCP | Specify the port, 6443 | listener-kube-apiserver | | + | |
- | + | ||
- | Backend set | + | |
- | + | ||
- | ^ Load Balancing Policy ^ Preserve Source IP ^ Backend Set ^ | + | |
- | | 5-tuple hash | Checked | listener-kube-apiserver | | + | |
- | + | ||
- | Backends | + | |
- | + | ||
- | ^ Name ^ IP address ^ Port ^ Weight ^ | + | |
- | | k8s1 | 10.0.0.3 | 6443 | 100 | | + | |
- | | k8s2 | 10.0.0.4 | 6443 | 99 | | + | |
- | | k8s3 | 10.0.0.5 | 6443 | 99 | | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ==== Security list ==== | + | |
- | + | ||
- | Se creó una VNC siguiendo el asistente. | + | |
- | + | ||
- | El load balancer usa la subnet pública, " | + | |
- | + | ||
- | Esta tiene una security list, que hay que retocar para que: | + | |
- | + | ||
- | * No permita conexiones desde la DMZ al listener kube-apiserver | + | |
- | * Permita que lleguen los health check del load balancer a los nodos | + | |
- | + | ||
- | Las IPs púbicas son inventadas | + | |
- | + | ||
- | ^ Stateless ^ Source ^ IP Protocol ^ Source Port Range ^ Destination Port Range ^ Description ^ | + | |
- | | No | 0.0.0.0/0 | TCP | All | 31342 | nginx-ingress-controller-https | | + | |
- | | No | 0.0.0.0/0 | TCP | All | 32386 | nginx-ingress-controller-http | | + | |
- | | No | 0.0.0.0/0 | TCP | All | 443 | listener-https | | + | |
- | | No | 0.0.0.0/0 | TCP | All | 80 | listener-http | | + | |
- | | No | 1.2.3.5/32 | All | All | All | k8s1 | | + | |
- | | No | 1.2.3.6/32 | All | All | All | k8s2 | | + | |
- | | No | 1.2.3.7/32 | All | All | All | k8s3 | | + | |
- | + | ||
- | Seguramente se puede restringir una miaja, pero así funciona. | + | |
- | + | ||
- | Como se juega también con los listeners no es tab abierta como parece. Por ejemplo desde la DMZ NO se llega al puerto 31342 (porque no hay listener publicado). | + | |
- | + | ||
- | + | ||
- | + | ||
+ | - Un [[http:// | ||
+ | - Un [[http:// | ||
===== Haproxy y keepalived como servicios ===== | ===== Haproxy y keepalived como servicios ===== | ||
Line 1271: | Line 1224: | ||
* Puertos en los que escuchan los Nodeport tanto HTTP como HTTPS. Ver paso 8 de [[informatica: | * Puertos en los que escuchan los Nodeport tanto HTTP como HTTPS. Ver paso 8 de [[informatica: | ||
* [[https:// | * [[https:// | ||
+ | |||
+ | ==== Bare metal ==== | ||
+ | |||
+ | Estas instrucciones sob para montar completamente por fuera de kubernetes un balanceador de carga capa 7. | ||
+ | |||
+ | TODO: refinar, porque cuando jugué con OCI me di cuenta que capa 4 funciona perfectamente, | ||
1. Acceder al servidor | 1. Acceder al servidor | ||
Line 1438: | Line 1397: | ||
Donde ' | Donde ' | ||
+ | ==== Oracle ==== | ||
+ | |||
+ | Requisitos: | ||
+ | |||
+ | * Un [[http:// | ||
+ | |||
+ | |||
+ | Creamos dos listeners, todo ello capa 4: | ||
+ | |||
+ | * Uno que escuche en el [[http:// | ||
+ | * Otro que escuche en el [[http:// | ||
===== LoadBalancer ===== | ===== LoadBalancer ===== | ||
informatica/linux/kubernetes.1664007284.txt.gz · Last modified: 2022/09/24 08:14 by javi