Istio复制控制平面-503不可用

时间:2020-10-07 14:50:18

标签: kubernetes istio

在尝试按照本指南中的说明配置再生控制平面时: https://istio.io/latest/docs/setup/install/multicluster/gateways/

完成所有配置后,如文档所述,“ sleep”应用程序无法与“ httpbin”应用程序进行通信。测试结果始终与“ 503服务不可用”错误相同:

kubectl exec --context=kontiki $SLEEP_POD -n multi-test -c sleep -- curl -k -I httpbin.multi-test-bar.global:8000/headers
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0    91    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
HTTP/1.1 503 Service Unavailable
content-length: 91
content-type: text/plain
date: Wed, 07 Oct 2020 13:55:19 GMT
server: envoy

找到的相关日志是:

  1. 原始群集上的睡眠容器中的istio-proxy容器
[2020-10-07T13:58:21.775Z] "HEAD /headers HTTP/1.1" 503 UF,URX "-" "-" 0 0 137 - "-" "curl/7.69.1" "5ccf05b7-d0e3-9e38-a581-8c0bdabc98b3" "httpbin.multi-t0" "10.14.10.99:31383" outbound|8000||httpbin.multi-test-bar.global - 240.0.0.2:8000 172.17.141.20:59704 - default
  1. 目标群集上的豆荚
[2020-10-07T13:58:21.900Z] "- - -" 0 NR "-" "-" 0 0 0 - "-" "-" "-" "-" "-" - - 172.17.184.60:15443 172.31.4.248:62395 - -
[2020-10-07T13:58:21.814Z] "- - -" 0 NR "-" "-" 0 0 0 - "-" "-" "-" "-" "-" - - 172.17.133.59:15443 172.31.4.209:38326 - -

Istio 1.7.3与Istio-operator一起部署在版本1.17的普通k8s集群上。证书的配置如参考指南所述,为httpbin创建的ServiceEntry如下:

apiVersion: networking.istio.io/v1beta1
kind: ServiceEntry
metadata:
  name: httpbin-multi-test-bar
spec:
  hosts:
  - httpbin.multi-test-bar.global
  location: MESH_INTERNAL
  ports:
  - name: http1
    number: 8000
    protocol: http
  resolution: DNS
  addresses:
  - 240.0.0.2
  endpoints:
  - address: cluster-2
    network: external
    ports:
      http1: 31383 # nodePort tls exposed port via our proxy
  - address: istio-egressgateway.istio-system.svc.cluster.local
    ports:
      http1: 15443

此错误在此#Issue中也被引用,对于其他人来说,这件事正在发生,而他们修复此问题的方法是移至以前的Istio版本(如1.6.8)。 编辑:我可以确认我的配置适用于1.6.8版,但是在1.7.3下会失败。

能否请您帮我了解发生了什么或如何解决?

1 个答案:

答案 0 :(得分:1)

关于该特定问题的报告更多问题:

,到目前为止,如何解决它尚无任何答案。

我建议您在您提到的issue中等待istio devs的回答,并使用1.6.8直到解决。


问题本身可能与1.8中的dns changes有关,但这只是我的想法。

从Istio 1.8开始,Sidecar上的Istio代理将附带由Istiod动态编程的缓存DNS代理。

有关dns更改的更多信息:

并且有docs初步用于1.8多集群安装。