Хотите подключиться через Ingress на algocd-туториале - PullRequest
1 голос
/ 06 марта 2020

В данный момент выполняется обработка по этому учебному пособию, https://github.com/argoproj/argocd-example-apps/tree/master/guestbook https://argoproj.github.io/argo-cd/getting_started/#5 -register-a-cluster-to-deploy-apps-to-факультативный

My краткосрочной вехой является отображение пользовательского интерфейса гостевой книги в браузере. Я пытаюсь подключиться через Ingress, и все пошло не так.

Сообщение об ошибке выглядит следующим образом:

Status: 502
The server encountered a temporary error and could not complete your request.

Я полагаю, что-то не так с сервисом и модулем.

guestbook -ui-sv c .yaml

apiVersion: v1
kind: Service
metadata:
  name: guestbook-ui-service
spec:
  ports:
    - port: 80
      targetPort: 80
  selector:
    app: guestbook-ui

guestbook-ui-ingress.yaml

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: app-ingress
  labels:
    app: guestbook-ui
spec:
  rules:
    - http:
        paths:
          - path: /
            backend:
              serviceName: guestbook-ui-service
              servicePort: 80

guestbook-ui-deploy.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: guestbook-ui
spec:
  replicas: 1
  revisionHistoryLimit: 3
  selector:
    matchLabels:
      app: guestbook-ui
  template:
    metadata:
      labels:
        app: guestbook-ui
    spec:
      containers:
      - image: gcr.io/heptio-images/ks-guestbook-demo:0.2
        name: guestbook-ui
        ports:
        - containerPort: 80

Я не знаю, какую часть мне не хватает, пожалуйста, укажите любую двусмысленную часть или более подробную информацию. Заранее спасибо!

1 Ответ

2 голосов
/ 06 марта 2020

Используйте вместо этого service.

apiVersion: v1
kind: Service
metadata:
  name: guestbook-ui-service
spec:
  type: NodePort
  ports:
    - port: 80
      targetPort: 80
  selector:
    app: guestbook-ui

К нему добавлено type: NodePort.

Вы можете проверить действительно хороший пример того, как развернуть приложение, выставить его через сервис и добавить вход к нему. Он доступен в kubernetes docs Развертывание приложения hello, world .

Также, если у вас возникли проблемы с пониманием разницы между NodePort, ClusterIP и тем, что Ingress я рекомендую прочитать Kubernetes NodePort против LoadBalancer против Ingress? Когда я должен использовать что?

...