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
}