1
resposta

Subredes divergentes.

Acredito que o nodePort não está funcionando por que ha uma divergência nas subredes:

Porque minikube version: v1.18.1 no Ubuntu 20.04 está gerando essa divergência nas subredes e como resolver?

pod-1.yalm
apiVersion: v1
kind: Pod
metadata:
  name: pod-1
spec:
  containers:
    - name: cotaniner-pod-1
      image: nginx:latest
      ports:
        - containerPort: 80
svc-pod-1.yaml
apiVersion: v1
kind: Service
metadata:
  name: svc-pod-1
spec:
  type: NodePort
  selector:
    app: segundo-pod
  ports:
    - port: 80
      #targetPort: 80      targetPort: 80
      nodePort: 30000
  selector:
    app: primeiro-pod
kubectl describe pods pod-1 
Name:         pod-1
Namespace:    default
Priority:     0
Node:         minikube/192.168.99.101
Labels:       <none>
Annotations:  <none>
Status:       Running
IP:           172.17.0.4
IPs:
  IP:  172.17.0.4
Containers:
  cotaniner-pod-1:
    Image:          nginx:latest
    Port:           80/TCP
    Host Port:      0/TCP
    State:          Running
kubectl describe services svc-pod-1 
Name:                     svc-pod-1
Namespace:                default
Labels:                   <none>
Annotations:              <none>
Selector:                 app=primeiro-pod
Type:                     NodePort
IP Families:              <none>
IP:                       10.106.208.36
IPs:                      10.106.208.36
Port:                     <unset>  80/TCP
TargetPort:               80/TCP
NodePort:                 <unset>  30000/TCP
Endpoints:                <none>
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>
kubectl get nodes -o wide
NAME       STATUS   ROLES                  AGE   VERSION   INTERNAL-IP      EXTERNAL-IP   OS-IMAGE               KERNEL-VERSION   CONTAINER-RUNTIME
minikube   Ready    control-plane,master   45h   v1.20.2   192.168.99.101   <none>        Buildroot 2020.02.10   4.19.171         docker://20.10.3

Erro do curl:

curl 192.168.99.101:30000
curl: (7) Failed to connect to 192.168.99.101 port 30000: Connection refused

A porta 30000 do service svc-pod1 está fechada e a porta 8443 do service kubernetes/default está aberta

nmap -p- 192.168.99.101
Nmap scan report for 192.168.99.101
Not shown: 65519 closed ports
PORT      STATE SERVICE
22/tcp    open  ssh
111/tcp   open  rpcbind
2049/tcp  open  nfs
2376/tcp  open  docker
2379/tcp  open  etcd-client
2380/tcp  open  etcd-server
5355/tcp  open  llmnr
8443/tcp  open  https-alt
10249/tcp open  unknown
10250/tcp open  unknown
10256/tcp open  unknown
41525/tcp open  unknown
41669/tcp open  unknown
44597/tcp open  unknown
47731/tcp open  unknown
56473/tcp open  unknown

O service do kubernetes/default funciona:

curl -k https://192.168.99.101:8443
{
  "kind": "Status",
  "apiVersion": "v1",
  "metadata": {

  },
  "status": "Failure",
  "message": "forbidden: User \"system:anonymous\" cannot get path \"/\"",
  "reason": "Forbidden",
  "details": {

  },
  "code": 403
}
1 resposta

Oi Aroldo, tudo bem?

Talvez seja uma questão da versão do minikube. Você pode testar com a mesma versão utilizada no curso? A 1.12.1.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software