curl 172.21.65.226:30207/auth/code
Service负载均衡之NodePort
cluster-ip为虚拟地址,只能在k8s集群内部进行访问,集群外部如果访问内部服务,实现方式之一为使用NodePort方式。NodePort会默认在 30000-32767 ,不指定的会随机使用其中一个。
$ cat service-eladmin-api-nodeport.yaml
apiVersion: v1
kind: Service
metadata:
name: eladmin-api-nodeport
namespace: luffy
spec:
ports:
- port: 8000
protocol: TCP
targetPort: 8000
selector:
app: eladmin-api
type: NodePort
查看并访问服务:
$ kubectl create -f service-eladmin-api-nodeport.yaml
service/eladmin-api-nodeport created
$ kubectl -n luffy get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
eladmin-api ClusterIP 10.99.182.32 <none> 8000/TCP 5h22m
eladmin-api-nodeport NodePort 10.103.117.186 <none> 8000:30207/TCP 5s
# curl 172.21.65.226:30207/auth/code
#集群内每个节点的NodePort端口都会进行监听
思考:推荐的集群外访问服务的方式是什么