Azure kubernetes - 带有内部负载均衡器的 Istio 控制器
Azure kubernetes - Istio controller with Internal load balancer
我有一个带有 Istio 服务网格的 Azure kubernetes 集群。
目前 Istio 控制器与 public 负载均衡器 IP 相关联。我想使用内部负载均衡器配置 Istio。我将使用 public IP 到内部 LB 的防火墙映射。
如何配置 Istio 控制器以使用内部负载均衡器?
在 istio 1.7 中,您可以使用 IstioOperator
.
创建 values.yml:
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
profile: default #or demo
components:
ingressGateways:
- name: istio-ingressgateway
enabled: true
k8s:
serviceAnnotations:
service.beta.kubernetes.io/azure-load-balancer-internal: "true"
现在使用命令 istioctl install -f values.yml
.
安装 istio
入口网关现在将获得一个内部负载均衡器,其中集群 vnet 的 ip 作为外部 ip。通过这种方式,集群只能从 vnet 内部或与集群对等的 vnet 中使用。
如果你想要一个固定的 ip,从群集 VNet 中选择一个未使用的(这里例如 10.30.09.20)并添加:
[...]
k8s:
serviceAnnotations:
service.beta.kubernetes.io/azure-load-balancer-internal: "true"
service:
loadBalancerIP: 10.30.09.20
您可以使用 az cli 检查 IP 地址是否为 available/unused:
az network vnet check-ip-address -g MyResourceGroup -n MyVnet --ip-address 10.30.09.20
我有一个带有 Istio 服务网格的 Azure kubernetes 集群。
目前 Istio 控制器与 public 负载均衡器 IP 相关联。我想使用内部负载均衡器配置 Istio。我将使用 public IP 到内部 LB 的防火墙映射。
如何配置 Istio 控制器以使用内部负载均衡器?
在 istio 1.7 中,您可以使用 IstioOperator
.
创建 values.yml:
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
profile: default #or demo
components:
ingressGateways:
- name: istio-ingressgateway
enabled: true
k8s:
serviceAnnotations:
service.beta.kubernetes.io/azure-load-balancer-internal: "true"
现在使用命令 istioctl install -f values.yml
.
入口网关现在将获得一个内部负载均衡器,其中集群 vnet 的 ip 作为外部 ip。通过这种方式,集群只能从 vnet 内部或与集群对等的 vnet 中使用。
如果你想要一个固定的 ip,从群集 VNet 中选择一个未使用的(这里例如 10.30.09.20)并添加:
[...]
k8s:
serviceAnnotations:
service.beta.kubernetes.io/azure-load-balancer-internal: "true"
service:
loadBalancerIP: 10.30.09.20
您可以使用 az cli 检查 IP 地址是否为 available/unused:
az network vnet check-ip-address -g MyResourceGroup -n MyVnet --ip-address 10.30.09.20