Kubernetes/Azure ACS: почему я не могу получить доступ к внешним IP-адресам моей службы?

Использование Kubernetes в службе контейнеров Azure (но не новый AKS).

Я развертываю интерфейс следующим образом:

apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: frontend-deployment
spec:
  selector:
    matchLabels:
      app: frontend
  replicas: 2
  template:
    metadata:
      labels:
        app: frontend
    spec:
      containers:
      - name: frontend
        image: etc/etc
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 3000
---
apiVersion: v1
kind: Service
metadata:
  name: frontend
spec:
  type: LoadBalancer
  ports:
  - port: 80
    targetPort: 3000
  selector:
    app: frontend

Я вижу, что он запускается правильно из журналов.

Из kubectl get services я вижу, что ему присвоен внешний IP-адрес. Но когда я пытаюсь получить к нему доступ через HTTP, он просто зависает.

Я также вижу на портале Azure, что Azure Load Balancer был создан и указывает на правильный внешний IP-адрес и внутренний пул.

Может ли кто-нибудь сказать мне, если я каким-то образом перепутал назначения портов в определении модуля?

--

Обновление: каким-то образом он начал работать сам по себе (или вроде бы). Но когда я попытался воссоздать его как службу вместо развертывания, он перестал работать.

Вот мой сервис:

Это моя конфигурация:

apiVersion: v1
kind: Service
metadata:
  creationTimestamp: null
  name: meteor
spec:
  externalTrafficPolicy: Cluster
  ports:
  - port: 80
    protocol: TCP
    targetPort: http-server
  selector:
    app: frontend
  sessionAffinity: ClientIP
  type: LoadBalancer

Он создает внешний IP-адрес для балансировщика нагрузки, и я вижу, что он правильно соответствует модулям. но я получаю тайм-аут, когда пытаюсь подключиться к внешнему IP. Между тем балансировщик нагрузки, созданный как часть развертывания, продолжает нормально работать.


person hexsprite    schedule 13.11.2017    source источник
comment
Кажется, он начал работать внезапно. Интересно, были ли какие-то проблемы с обслуживанием в Azure. Обновлю, если появится что-то еще.   -  person hexsprite    schedule 13.11.2017
comment
Если вам нужна дополнительная помощь с ACS, пожалуйста, дайте мне знать :)   -  person Jason Ye    schedule 13.11.2017
comment
@JasonYe-MSFT спасибо! Знаете ли вы, как изменить размер виртуальной машины агента в существующем развертывании ACS?   -  person hexsprite    schedule 14.11.2017
comment
По-прежнему возникает проблема с зависанием недавно созданных балансировщиков нагрузки.   -  person hexsprite    schedule 14.11.2017
comment
Не могли бы вы запустить эту команду kubectl get service, чтобы проверить статус.   -  person Jason Ye    schedule 14.11.2017
comment
метеор LoadBalancer 10.0.108.137 13.88.27.165 80:32532/TCP 4 м   -  person hexsprite    schedule 14.11.2017
comment
не могли бы вы показать свой новый файл докера в своем вопросе?   -  person Jason Ye    schedule 14.11.2017
comment
Давайте продолжим это обсуждение в чате.   -  person Jason Ye    schedule 14.11.2017


Ответы (2)


Знаете ли вы, как изменить размер виртуальной машины агента в существующем развертывании ACS?

Мы можем изменить агент k8s через портал Azure, агент в Azure — это виртуальная машина, мы должны изменить размер виртуальной машины:

введите здесь описание изображения

введите здесь описание изображения

Надеюсь это поможет.

person Jason Ye    schedule 14.11.2017
comment
эй, на самом деле у меня все еще та же проблема, что и в исходном вопросе. Он снова перестал работать, и я не могу понять, почему;) - person hexsprite; 14.11.2017

Похоже, проблема заключалась в неправильном указании целевого порта. Настройка его на правильное значение и замена определения службы решили проблему.

person hexsprite    schedule 14.11.2017