为什么我的环境不适合istio入口网关?

时间:2019-09-10 09:17:50

标签: docker kubernetes istio

我尝试将Istio部署在虚拟机中运行的kubernetes集群中。我正在使用一个主控器两个小兵(所有VB计算机都具有网桥适配器)。

在安装Istio(版本1.2.5)之后,istio-ingress网关外部IP处于 pending 状态。我知道我们可以使用节点端口来解决此问题,但是我想知道为什么我的环境不支持该LB外部IP。

Kubernetes version - kubeadm version: &version.Info
{
  Major:"1", 
  Minor:"15", 
  GitVersion:"v1.15.3", 
  GitCommit:"2d3c76f9091b6bec110a5e63777c332469e0cba2", 
  GitTreeState:"clean", 
  BuildDate:"2019-08-19T11:11:18Z", 
  GoVersion:"go1.12.9", 
  Compiler:"gc", 
  Platform:"linux/amd64"
}

Docker version - Docker version 19.03.2, build 6a30dfc

OS Platform - CentOS - 7

1 个答案:

答案 0 :(得分:1)

类型为LoadBalancer的Kubernetes Service要求Kubernetes在群集之外创建一个负载均衡器,以将流量路由到某些特定服务。 The documentation开头

  

在支持外部负载平衡器的云提供商上...

例如,在AWS上,Kubernetes可以使用AWS API来请求Amazon Elastic Load Balancer。

您不在这些环境之一中。与您最接近的等效项将是在任何VM之外的主机上运行haproxy实例,而您的Kubernetes根本无法做到这一点。

由于可以直接调用VM,因此可以使用NodePort类型服务访问群集。 LoadBalancer服务是NodePort服务,因此您无需进行任何更改即可进行实验。