Как можно использовать внешний IP-адрес в облаке Kubernetes?

Как корректно настроить сервис LoadBalancer в Kubernetes, используя конфигурацию для сервиса mongo-express?
  • 9 июня 2024 г. 13:51
Ответы на вопрос 2
Для использования внешнего IP-адреса в облаке Kubernetes, можно использовать сервис LoadBalancer. Для этого необходимо создать сервис типа LoadBalancer в вашем кластере Kubernetes и настроить его так, чтобы он присваивал внешний IP-адрес приложению.

Пример конфигурации для сервиса mongo-express с использованием LoadBalancer в Kubernetes выглядит следующим образом:

```yaml
apiVersion: v1
kind: Service
metadata:
  name: mongo-express
spec:
  type: LoadBalancer
  selector:
    app: mongo-express
  ports:
    - protocol: TCP
      port: 8081
      targetPort: 8081
```

В данной конфигурации мы создаем сервис с именем mongo-express и указываем, что он должен быть типа LoadBalancer. Далее мы указываем селектор app: mongo-express, чтобы связать сервис с подами, у которых есть метка app: mongo-express.

Также мы указываем порт 8081 для сервиса, который будет прослушиваться на внешнем IP-адресе, и остается только привязать это приложение к созданному сервису. 

После применения данной конфигурации Kubernetes автоматически создаст балансировщик нагрузки и присвоит внешний IP-адрес сервису mongo-express, что позволит вам обращаться к этому сервису извне.
Уточните у хостинга - есть ли в их кластере услуга LoadBalancer. Если есть - узнайте как ей пользоваться у них. Если нет такой услуги - поменяйте тип сервиса на ClusterIP.  pending исчезнет, а доступ по nodePort  останется.
Похожие вопросы