使用nodeport访问kubernetes上的应用程序

使用nodeport访问kubernetes上的应用程序,kubernetes,kubernetes-service,Kubernetes,Kubernetes Service,亲爱的各位,我已经部署了一个示例服务,如下所示: kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.233.0.1 <none> 443/TCP 1d mynodejsapp NodePort 10.233.2.225 <none&g

亲爱的各位,我已经部署了一个示例服务,如下所示:

 kubectl get svc
NAME          TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)          AGE
kubernetes    ClusterIP   10.233.0.1     <none>        443/TCP          1d
mynodejsapp   NodePort    10.233.2.225   <none>        3000:31209/TCP   43s
kubectl获取svc
名称类型CLUSTER-IP外部IP端口年龄
kubernetes ClusterIP 10.233.0.1 443/TCP 1d
MyNodeJSAP节点端口10.233.2.225 3000:31209/TCP 43s
请问如何在群集ip上访问应用程序MyNodeJSAP

当我得到一个节点-o宽,这是我在下面看到的

$ kubectl get nodes -o wide
NAME                    STATUS    ROLES     AGE       VERSION            EXTERNAL-IP   OS-IMAGE                  KERNEL-VERSION                   CONTAINER-RUNTIME
controlplane-node-001   Ready     master    2d        v1.9.1+2.1.8.el7   <none>        Oracle Linux Server 7.2   4.1.12-112.14.13.el7uek.x86_64   docker://17.3.1
controlplane-node-002   Ready     master    2d        v1.9.1+2.1.8.el7   <none>        Oracle Linux Server 7.2   4.1.12-112.14.13.el7uek.x86_64   docker://17.3.1
controlplane-node-003   Ready     master    2d        v1.9.1+2.1.8.el7   <none>        Oracle Linux Server 7.2   4.1.12-112.14.13.el7uek.x86_64   docker://17.3.1
default-node-001        Ready     node      2d        v1.9.1+2.1.8.el7   <none>        Oracle Linux Server 7.2   4.1.12-112.14.13.el7uek.x86_64   docker://17.3.1
default-node-002        Ready     node      2d        v1.9.1+2.1.8.el7   <none>        Oracle Linux Server 7.2   4.1.12-112.14.13.el7uek.x86_64   docker://17.3.1
$kubectl获取节点-o宽
名称状态角色年龄版本外部-IP OS-IMAGE内核-VERSION容器-RUNTIME
controlplane-node-001 Ready master 2d v1.9.1+2.1.8.el7 Oracle Linux Server 7.2 4.1.12-112.14.13.el7uek.x86_64docker://17.3.1
controlplane-node-002 Ready master 2d v1.9.1+2.1.8.el7 Oracle Linux Server 7.2 4.1.12-112.14.13.el7uek.x86_64docker://17.3.1
controlplane-node-003 Ready master 2d v1.9.1+2.1.8.el7 Oracle Linux Server 7.2 4.1.12-112.14.13.el7uek.x86_64docker://17.3.1
default-node-001就绪节点2d v1.9.1+2.1.8.el7 Oracle Linux Server 7.2 4.1.12-112.14.13.el7uek.x86_64docker://17.3.1
default-node-002就绪节点2d v1.9.1+2.1.8.el7 Oracle Linux Server 7.2 4.1.12-112.14.13.el7uek.x86_64docker://17.3.1
任何帮助。谢谢

请问如何在群集ip上访问应用程序MyNodeJSAP

现在,请直接回答有关您的服务概述的问题:

  • 要从集群外部访问
    mynodejsap
    服务,您需要将端口
    31209
    上任何
    节点的IP作为目标(并且
    kube代理将为您路由到
    mynodejsap
    服务)
  • 要从集群内的访问
    MyNodeJSAP
    服务,意味着从同一集群上运行的另一个pod,您需要以集群为目标IP
    10.233.2.225:3000
    (或者运行
    kube dns
    ,您可以直接使用服务名称
    MyNodeJSAP:3000
正如在clusterIP中详细介绍的,它与服务相关联,反过来,它通过kube dns从服务名称解析到clusterIP。简而言之,您只能从运行在所述集群上的pod中使用clusterIP(与服务相同)


至于通过NodePort向外部公开服务,您还可以在

My nodes a all not have public IP的可能副本中找到更多信息。因此,我想我必须在集群内做些什么?会看一下文件吗?甚至不是你的主人?如何访问它们?在您的情况下,
kubectl get nodes-o wide
的输出是什么?你能用它更新问题吗?所有我的节点和mastershm的所有外部IP都是空的。。。您能否使用
kubectl get nodes-o wide
的输出更新问题?