Kubernetes no puede acceder a la URL del balanceador de carga mediante minikube – nopcommerce.
Para obtener más experiencia en la creación de clústeres de Kubernetes he creado una implementación de nopcommerce. Para el servicio, uso el tipo loadbalancer.
Al ejecutar el comando minikube service nopcommerce --url
obtengo la url http://192.168.76.2:30409. No puedo conectarme a esta url. El registro detallado utilizando curl muestra:
curl -L http://192.168.76.2:30409 –verbose
* Intentando 192.168.76.2:30409…
* Conectado a 192.168.76.2 (192.168.76.2) en el puerto 30409 (#0)
GET / HTTP/1.1
Host: 192.168.76.2:30409
User-Agent: curl/7.79.1
Accept: /
- Error en la recepción: Conexión restablecida por el otro extremo
- Se cierra la conexión 0
curl: (56) Error en la recepción: Conexión restablecida por el otro extremo
Mi kustomization.yaml
:
secretGenerator:
– name: mysql-pass
literals:
– password='VerySecretPassword'
resources:
– mysql.yaml
– nopcommerce.yaml
Y el nopcommerce.yaml
:
apiVersion: v1
kind: Service
metadata:
name: nopcommerce
labels:
app: nopcommerce
spec:
selector:
app: nopcommerce
tier: app
ports:
– port: 80
type: LoadBalancer
apiVersion: apps/v1
kind: Deployment
metadata:
name: nopcommerce
spec:
selector:
matchLabels:
app: nopcommerce
tier: app
template:
metadata:
labels:
app: nopcommerce
tier: app
spec:
containers:
– name: nopcommerce
image: nopcommerceteam/nopcommerce:latest
resources:
limits:
memory: "128Mi"
cpu: "500m"
ports:
– containerPort: 80
name: web
davy.ai
Solución
El problema aquí puede ser que la dirección IP y el puerto enumerados en el comando
minikube service
no coincidan con la dirección IP y el puerto reales en los que el balanceador de carga está escuchando.Intente ejecutar el comando
kubectl describe service nopcommerce
para ver la dirección IP y el puerto reales que el balanceador de carga está utilizando. Esto le dará más información sobre la configuración del balanceador de carga y lo ayudará a resolver el problema de conexión.Además, asegúrese de que su firewall no esté bloqueando las conexiones a la dirección IP y el puerto del balanceador de carga. Es posible que deba abrir el puerto correspondiente en la configuración del firewall antes de poder conectarse al balanceador de carga correctamente.
Finalmente, verifique los registros de la aplicación que se ejecuta en el clúster Kubernetes para ver si hay algún error o problema que pueda estar causando el problema de conexión. Use
kubectl logs <nombre-del-pod>
para ver los registros de los pods relevantes.