Istio Gateway и Traffic Routing не работают (развертываются через Jenkins X / jx) - PullRequest
0 голосов
/ 27 февраля 2019

Итак, у нас есть папка environment staging" repo which was created by jenkins x. In it we commit the following ymls to the env / templates`.Кластер kubernetes находится в AWS EKS.

apiVersion: v1
kind: Namespace
metadata:
  name: global-gateway
---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: app-gateway
  namespace: global-gateway
spec:
  selector:
    istio: ingressgateway
  servers:
  - port:
      number: 80
      name: http
      protocol: HTTP
    hosts:
    - "*"
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: app-hosts
  namespace: jx-staging
spec:
  hosts:
  - "*"
  gateways:
  - app-gateway.global-gateway.svc.cluster.local
  http:
  - match:
    - uri:
        prefix: /
    route:
    - destination:
        host: test-app
        port:
          number: 80

Вышеуказанные YML работают отлично, и я могу получить доступ к сервису при применении через kubectl apply -f.

Однако вместо созданияих вручную мы фиксируем и отправляем в репозиторий, который запускает задание JX, которое успешно выполняется.После этого мы видим, что весь шлюз и VirtualService были правильно развернуты.то есть, если мы запустим kubectl get Gateway, мы сможем увидеть наш шлюз.

Однако URL не работает и не перенаправляет на микросервис после применения от jenkins.

Команда, которой, кажется, jenkinsrun is

helm upgrade --namespace jx-staging --install --wait --force --timeout 600 --values values.yaml jx-staging .

Чтобы попытаться диагностировать проблему, которую я развернул, используя kubectl и jenkins, и проанализировал вывод kubectl describe Gateway/VirtualService <name>

Развертывание jenkins / heml показало Annotations: <none> в то время как при развертывании с kubectl было показано, что

Annotations:  kubectl.kubernetes.io/last-applied-configuration:
                {"apiVersion":"networking.istio.

Числа Resource Version также отличались, но я предполагаю, что это правильно и хорошо?

РЕДАКТИРОВАТЬ: диаграмма управления следующима также

description: GitOps Environment for this Environment
icon: https://www.cloudbees.com/sites/default/files/Jenkins_8.png
maintainers:
- name: Team
name: env
version: "39"

Посоветуйте, пожалуйста, как заставить шлюз istio работать с jx / helm.

...