I'm working through chapter 5.3 of Kubernetes In Action by Marko Luska. I'm creating a nodeport service from the following file:
apiVersion: v1
kind: Service
metadata:
name: kubia-nodeport
spec:
type: NodePort
ports:
- port: 80
targetPort: 8080
nodePort: 30123
selector:
app: kubia
It works, and I can hit all the IPs I'm expecting to hit (localhost, cluterIP...) but the external IP is shown as <none>
:
$ kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 17h
kubia-nodeport NodePort 10.96.191.43 <none> 80:30123/TCP 12s
$ kubectl get rc --show-labels
NAME DESIRED CURRENT READY AGE LABELS
kubia 3 3 3 21h app=kubia
$ kubectl get po --show-labels
NAME READY STATUS RESTARTS AGE LABELS
kubia-fb7h8 1/1 Running 0 17h app=kubia
kubia-nnkc4 1/1 Running 0 17h app=kubia
kubia-s88mt 1/1 Running 0 17h app=kubia
Minikube should be showing <nodes>
as it does in this question and this other question. Why is it not?