Table of Contents

OCI

Documento aquí los distintos elementos que cree bajo el programa “Always free”

Instances

Se pueden repartir, siempre que sean instancias AMD:

* Máximo de 4 VMs * Máximo de 4 cores de CPU * Máximo de 24 GB de RAM

1. Login en OCI

https://idcs-5f67c625dc9a434bbf9fa6c5f9264ad8.identity.oraclecloud.com/ui/v1/signin

2. Teclear “instances” en la barra de búsqueda y hacer click en el resultado ofrecido

https://cloud.oracle.com/compute/instances?region=eu-frankfurt-1

3. Click botón “CREATE INSTANCE”

Name: k8s1

TODO: completar

Las IPs públicas se han cambiado

Name State Public IP Private IP Shape OCPU count Memory (GB) Availability domain Fault domain Created
k8s1 Running 1.2.3.4 10.0.0.2 VM.Standard.A1.Flex 2 8 AD-1 FD-3 Fri, Jun 24, 2022, 19:00:03 UTC
k8s2 Running 1.2.3.5 10.0.0.3 VM.Standard.A1.Flex 1 8 AD-1 FD-3 Fri, Jun 24, 2022, 19:00:03 UTC
k8s3 Running 1.2.3.6 10.0.0.4 VM.Standard.A1.Flex 1 8 AD-1 FD-3 Fri, Jun 24, 2022, 19:00:03 UTC

Cada una tiene un boot volume de 65 GB (sin disco adicional de datos), para estar lo más cerca posible del límite de 200 GB.

A diferencia del load balancer, una vez terminado el período de pruebas, se pueden destruir y crear VMs, lo cual mola.

VNC

Se creó una VNC siguiendo el asistente.

Name State IPv4 CIDR Block IPv6 Prefix Default Route Table DNS domain name Created
vnc Available 10.0.0.0/16 - Default Route Table for vnc vnc.oraclevcn.com Sun, Jun 12, 2022, 17:19:04 UTC

Route Rules

Entiendo que creada por defecto, pero la documento por si Ascaso

Destination Target Type Target Route Type Description
0.0.0.0 Internet Gateway Internet Gateway-vnc Static

Load balancer

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/eliminar backends al backend set

Oracle cloud ofrece por la patilla y para siempre un balanceador de capa 4 con IP pública y estática.

Resumen de máquinas, nombres, IPs, etc. (las IPs públicas están cambiadas)

DNS IP pública IP privada Comentario
k8s.example.com 1.2.3.4 10.0.0.194 Balanceador de carga. Escucha (listener) puerto 6443
k8s1 1.2.3.5 10.0.0.2 Primer control plane
k8s2 1.2.3.6 10.0.0.3 Segundo control plane
k8s3 1.2.3.7 10.0.0.4 Tercer control plane

A continuación documento los distintos listeners que configuré para kubernetes

La IP pública se ha cambiado

Name Type State IP Address Shape Overall Health Created
load-balancer Network Load Balancer Active 1.1.1.1 (Public) 10.0.0.194 (Private) - OK Fri, Jun 17, 2022, 08:28:57 UTC

listener-kube-apiserver

Listener

Name IP Protocol Version Protocol Port Backend Set
listener-kube-apiserver IPv4 TCP Specify the port, 6443 backend-set-kube-apiserver

Backend set

Name IP Protocol Version Load Balancing Policy Number of Backends Health
backend-set-kube-apiserver IPv4 5-Tuple Hash 3 OK

Backends

Name IP address Availability Domain Port Weight Drain Offline Health
k8s1 10.0.0.2 6443 100 False False OK
k8s2 10.0.0.3 6443 99 False False OK
k8s3 10.0.0.4 6443 99 False False OK

listener-ingress-nginx-controller-http

Listener

Name IP Protocol Version Protocol Port Backend Set
listener-ingress-nginx-controller-http IPv4 TCP Specify the port, 80 backend-set-ingress-nginx-controller-http

Backend set

Name IP Protocol Version Load Balancing Policy Number of Backends Health
backend-set-ingress-nginx-controller-http IPv4 5-Tuple Hash 3 OK

Backends

Name IP address Availability Domain Port Weight Drain Offline Health
k8s1 10.0.0.3 32386 100 False False OK
k8s2 10.0.0.4 32386 99 False False OK
k8s3 10.0.0.5 32386 99 False False OK

listener-ingress-nginx-controller-https

Listener

Name IP Protocol Version Protocol Port Backend Set
listener-ingress-nginx-controller-https IPv4 TCP Specify the port, 443 backend-set-ingress-nginx-controller-https

Backend set

Name IP Protocol Version Load Balancing Policy Number of Backends Health
backend-set-ingress-nginx-controller-https IPv4 5-Tuple Hash 3 OK

Backends

Name IP address Availability Domain Port Weight Drain Offline Health
k8s1 10.0.0.3 31342 100 False False OK
k8s2 10.0.0.4 31342 99 False False OK
k8s3 10.0.0.5 31342 99 False False OK

Security list

Se creó una VNC siguiendo el asistente.

El load balancer usa la subnet pública, “Public Subnet-vnc”.

Esta tiene una security list, que hay que retocar para que:

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).