Я пытаюсь установить Istio в частном кластере GKE. Я загрузил Istio 1.4.3 и применил профиль по умолчанию. Но не все компоненты устанавливаются из манифеста. Ниже приведены журналы ошибок.
$ istioctl manifest apply
This will install the default Istio profile into the cluster. Proceed? (y/N) y
- Applying manifest for component Base...
✔ Finished applying manifest for component Base.
- Applying manifest for component Pilot...
- Applying manifest for component Policy...
- Applying manifest for component Galley...
- Applying manifest for component Citadel...
- Applying manifest for component IngressGateway...
- Applying manifest for component Prometheus...
- Applying manifest for component Telemetry...
- Applying manifest for component Injector...
✘ Finished applying manifest for component Pilot.
✘ Finished applying manifest for component Telemetry.
✔ Finished applying manifest for component Prometheus.
✔ Finished applying manifest for component Citadel.
✔ Finished applying manifest for component Galley.
✔ Finished applying manifest for component Policy.
✔ Finished applying manifest for component Injector.
✔ Finished applying manifest for component IngressGateway.
Component Pilot - manifest apply returned the following errors:
Error: error running kubectl: signal: killed
Component Kiali - manifest apply returned the following errors:
Error: error running kubectl: exit status 1
Error detail:
Unable to connect to the server: dial tcp 192.168.0.2:443: i/o timeout (repeated 1 times)
apiVersion: v1
items: []
kind: List
metadata:
resourceVersion: ""
selfLink: ""
Component Grafana - manifest apply returned the following errors:
Error: error running kubectl: exit status 1
Error detail:
Unable to connect to the server: dial tcp 192.168.0.2:443: i/o timeout (repeated 1 times)
apiVersion: v1
items: []
kind: List
metadata:
resourceVersion: ""
selfLink: ""
Component Telemetry - manifest apply returned the following errors:
Error: error running kubectl: exit status 1
Error detail:
Unable to connect to the server: net/http: request canceled (Client.Timeout exceeded while awaiting headers) (repeated 1 times)
✘ Errors were logged during apply operation. Please check component installation logs above.
Failed to generate and apply manifests, error: errors were logged during apply operation
Кроме того, входной шлюз не создается ни в одном из примеров приложений (helloworld, bookinfo). Ниже приведена ошибка:
$ kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml
Error from server (Timeout): error when creating "samples/bookinfo/networking/bookinfo-gateway.yaml": Timeout: request did not complete within requested timeout 30s
Error from server (Timeout): error when creating "samples/bookinfo/networking/bookinfo-gateway.yaml": Timeout: request did not complete within requested timeout 30s
Однако я попытался использовать istio вместе с GKE в том же частном кластере, следуя руководству Вот
Это сработало, и все компоненты были успешно установлены вместе со входным шлюзом. Я также включил порты 80,8080,1000-2000,22,443,9443 в сети. Может, кто-нибудь скажет нам, в чем проблема, вызывающая эту ошибку.
Версия Kubernetes:
Client Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.3", GitCommit:"06ad960bfd03b39c8310aaf92d1e7c12ce618213", GitTreeState:"clean", BuildDate:"2020-02-11T18:14:22Z", GoVersion:"go1.13.6", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13+", GitVersion:"v1.13.12-gke.25", GitCommit:"654de8cac69f1fc5db6f2de0b88d6d027bc15828", GitTreeState:"clean", BuildDate:"2020-01-14T06:01:20Z", GoVersion:"go1.12.11b4", Compiler:"gc", Platform:"linux/amd64"}
Версия Istio:
client version: 1.4.3
control plane version: 1.4.3
data plane version: 1.4.3 (1 proxies)
Платформа: GKE
ОС: Ubuntu
Попробуйте создать маршрутизатор Cloud NAT в той же сети, в которой вы создаете кластер, и воссоздайте кластер. После этого попробуйте снова установить Istio.
Возможно, Istio не может получить изображения для некоторых компонентов, потому что кластер не имеет доступа в Интернет.