Развертывание посла в Куберне - PullRequest
0 голосов
/ 21 июня 2019

Я узнал о том, как развернуть посол в kubernetes на миникубе с помощью этого учебного пособия, и это работает, поскольку я вижу страницу с успешно установленным послом. Основная проблема заключается в том, что, когда я пытаюсь изменить изображение пользовательского интерфейса таким образом, чтобы он открывал другое приложение в ссылке, он открывает ту же успешную страницу посла.

Предыдущая tour.yaml

---
apiVersion: v1
kind: Service
metadata:
  name: tour
  annotations:
    getambassador.io/config: |
      ---
      apiVersion: ambassador/v1
      kind: Mapping
      name: tour-ui_mapping
      prefix: /
      service: tour:5000
      ---
      apiVersion: ambassador/v1
      kind: Mapping
      name: tour-backend_mapping
      prefix: /backend/
      service: tour:8080
      labels:
        ambassador:
          - request_label:
            - backend
spec:
  ports:
  - name: ui
    port: 5000
    targetPort: 5000
  - name: backend
    port: 8080
    targetPort: 8080
  selector:
    app: tour
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: tour
spec:
  replicas: 1
  selector:
    matchLabels:
      app: tour
  strategy:
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: tour
    spec:
      containers:
      - name: tour-ui
        image: quay.io/datawire/tour:ui-0.2.1
        ports:
        - name: http
          containerPort: 5000
      - name: quote
        image: quay.io/datawire/tour:backend-0.2.1
        ports:
        - name: http
          containerPort: 8080
        resources:
          limits:
            cpu: "0.1"
            memory: 100Mi

изменено tour.yaml (удален бэкэнд и изменено изображение)

---
apiVersion: v1
kind: Service
metadata:
  name: tour
  annotations:
    getambassador.io/config: |
      ---
      apiVersion: ambassador/v1
      kind: Mapping
      name: tour-ui_mapping
      prefix: /
      service: tour:5000
spec:
  ports:
  - name: ui
    port: 5000
    targetPort: 5000
  selector:
    app: tour
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: tour
spec:
  replicas: 1
  selector:
    matchLabels:
      app: tour
  strategy:
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: tour
    spec:
      containers:
      - name: tour-ui
        image: quay.io/integreatly/tutorial-web-app:2.10.5
        ports:
        - name: http
          containerPort: 5000
        resources:
          limits:
            cpu: "0.1"
            memory: 100Mi

ambassador-service.yaml

---
apiVersion: v1
kind: Service
metadata:
  name: ambassador
spec:
  type: NodePort
  externalTrafficPolicy: Local
  ports:
   - port: 80
     targetPort: 8080
  selector:
    service: ambassador

Пожалуйста, помогите, я действительно запутался, что является причиной этого и как я могу решить это.

1 Ответ

0 голосов
/ 24 июня 2019

То, что вы делаете выше, это замена tour Kubernetes service и deployment вашей собственной альтернативой. Это немного необычная картина; Я подозреваю, что где-то есть опечатка, которая означает, что Kubernetes не принимает ваши изменения.

Я бы предложил создать уникальные test Kubernetes service и deployment и указать image в вашем deployment на вашем новом изображении. Затем вы можете зарегистрировать новый префикс с помощью Ambassador.

Вы также можете посмотреть диагностику посла (см. https://www.getambassador.io/reference/diagnostics/), в которой будет указано, какие маршруты зарегистрированы у посла.

...