Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes(Minikube)外部ip不工作_Kubernetes - Fatal编程技术网

Kubernetes(Minikube)外部ip不工作

Kubernetes(Minikube)外部ip不工作,kubernetes,Kubernetes,我是Kubernetes的新手,我一直在浏览和阅读为什么我的外部ip无法解析 我在ubuntu 16.04发行版上运行minikube 在仪表板的服务概述中,我有以下内容 my-nginx | run: my-nginx | 10.0.0.11 | my-nginx:80 TCP my-nginx:32431 | TCP 192.168.42.71:80 当我执行http get时,我得到了nginx页面 服务的配置如下所示 # Please edit the object

我是Kubernetes的新手,我一直在浏览和阅读为什么我的外部ip无法解析

我在ubuntu 16.04发行版上运行minikube

在仪表板的服务概述中,我有以下内容

    my-nginx | run: my-nginx | 10.0.0.11 | my-nginx:80 TCP my-nginx:32431 | TCP 192.168.42.71:80 
当我执行http get时,我得到了nginx页面

服务的配置如下所示

    # Please edit the object below. Lines beginning with a '#' will be ignored,
    # and an empty file will abort the edit. If an error occurs         while saving this file will be
    # reopened with the relevant failures.
    #
    apiVersion: v1
    kind: Service
    metadata:
      creationTimestamp: 2016-09-23T12:11:13Z
      labels:
        run: my-nginx
      name: my-nginx
      namespace: default
      resourceVersion: "4220"
      selfLink: /api/v1/namespaces/default/services/my-nginx
      uid: d24b617b-8186-11e6-a25b-9ed0bca2797a
    spec:
      clusterIP: 10.0.0.11
      deprecatedPublicIPs:
      - 192.168.42.71
      externalIPs:
      - 192.168.42.71
      ports:
      - nodePort: 32431
        port: 80
        protocol: TCP
        targetPort: 80
      selector:
        run: my-nginx
      sessionAffinity: None
      type: LoadBalancer
    status:
      loadBalancer: {}
这些是我的IFCOMFG的一部分

    virbr0    Link encap:Ethernet  HWaddr fe:54:00:37:8f:41  
              inet addr:192.168.122.1  Bcast:192.168.122.255          Mask:255.255.255.0
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:4895 errors:0 dropped:0 overruns:0 frame:0
              TX packets:8804 errors:0 dropped:0 overruns:0         carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:303527 (303.5 KB)  TX bytes:12601315 (12.6         MB)

    virbr1    Link encap:Ethernet  HWaddr fe:54:00:9a:39:74  
              inet addr:192.168.42.1  Bcast:192.168.42.255          Mask:255.255.255.0
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:7462 errors:0 dropped:0 overruns:0 frame:0
              TX packets:12176 errors:0 dropped:0 overruns:0         carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:3357881 (3.3 MB)  TX bytes:88555007 (88.5 MB)


    vnet0     Link encap:Ethernet  HWaddr fe:54:00:37:8f:41  
              inet6 addr: fe80::fc54:ff:fe37:8f41/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:4895 errors:0 dropped:0 overruns:0 frame:0
              TX packets:21173 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:372057 (372.0 KB)  TX bytes:13248977 (13.2 MB)

    vnet1     Link encap:Ethernet  HWaddr fe:54:00:9a:39:74  
              inet addr:192.168.23.1  Bcast:0.0.0.0          Mask:255.255.255.255
              inet6 addr: fe80::fc54:ff:fe9a:3974/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:7462 errors:0 dropped:0 overruns:0 frame:0
              TX packets:81072 errors:0 dropped:0 overruns:0         carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:3462349 (3.4 MB)  TX bytes:92936270 (92.9 MB)

因为我迷路了,有人有什么建议吗?

我想你正在virtualbox中使用minikube(没有关于如何启动它以及你的主机操作系统是什么的信息)


当您使用type=LoadBalancer创建服务时,还应该运行
minikube tunnel
,以从集群中公开LoadBalancer。然后,当您运行
kubectl get svc
时,您将获得LoadBalancer的外部IP。它仍然是minikube的IP,因此如果您想从您的机器外部公开它,您应该在您的机器上安装一些reverseproxy或tunnel。

minikube不支持负载平衡器服务,因此该服务永远不会获得外部IP

但是您可以通过外部端口访问服务

您可以通过运行以下命令来获取IP和端口:

minikube service <service_name>
minikube服务
TL;minikube博士有“插件”,可以用来处理入口和负载平衡。只需启用并配置其中一个


如果您在windows上运行Minikube只需简单运行:

minikube tunnel
上述命令将将容器隧道到本地主机。然后,您可以通过以下方式获取服务URL:

kubectl get services [service name]

用您的服务名称替换[服务名称]。别忘了在外部IP端点上添加映射端口。

您是说您有一个运行在minikube上的nginx pod,并且希望从外部访问它吗?还是我误解了这个问题?你想通过你系统的公共IP向网络上的其他系统公开Nginx服务吗?这只在集群内有效,而不是我们自己。你说的是100000%正确,这与minikube非常混淆。我刚刚创建了NodePort svc,并在安装minikube的linux机器上安装了nginx。在那之后它就开始工作了。