Yandex Cloud
Поиск
Связаться с намиПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»
Yandex Cloud Stackland
  • Что нового
  • Установка
    • Все руководства
    • Установить Stackland на Yandex BareMetal
    • Настройка внешнего доступа к поду в кластере
    • Все инструкции
    • Проекты
    • Ресурсная модель
  • Управление доступом
  • Правила тарификации
  • Диагностика и устранение неполадок

В этой статье:

  • Перед началом работы
  • Как создать внешний доступ
  • Шаг 1. Создайте Ingress
  • Шаг 2. Создайте HTML-страницу
  • Шаг 3. Создайте Deployment для HTML-страницы
  • Шаг 4. Создайте Service для HTML-страницы
  • Шаг 5. Проверьте работу доступа
  1. Практические руководства
  2. Настройка внешнего доступа к поду в кластере

Настройка внешнего доступа к поду в кластере

Статья создана
Yandex Cloud
Обновлена 23 марта 2026 г.
  • Перед началом работы
  • Как создать внешний доступ
    • Шаг 1. Создайте Ingress
    • Шаг 2. Создайте HTML-страницу
    • Шаг 3. Создайте Deployment для HTML-страницы
    • Шаг 4. Создайте Service для HTML-страницы
    • Шаг 5. Проверьте работу доступа

Stackland позволяет пользователям запускать собственные приложения в кластере и создавать внешний доступ к ним. В этом руководстве мы разберем пример создания внешнего доступа к HTML-странице в кластере.

Перед началом работыПеред началом работы

  1. Если проект еще не создан, создайте его: kubectl create namespace <название проекта>.

  2. Выберите ссылку для внешнего доступа. Например, test.<домен кластера>.

    При необходимости получить домен кластера можно с помощью команды kubectl get platformenvironments main -o jsonpath='{.status.clusterDomain}'.

Как создать внешний доступКак создать внешний доступ

Шаг 1. Создайте IngressШаг 1. Создайте Ingress

  1. Создайте файл ресурса Ingress. Например, с помощью команды touch ingress.yaml.

  2. Откройте файл и вставьте конфигурацию ниже:

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      annotations:
        cert-manager.io/cluster-issuer: stackland-default
      name: test-stackland-ingress
      namespace: <название проекта>
    spec:
      ingressClassName: stackland-default
      rules:
      - host: <внешняя ссылка>
        http:
          paths:
          - backend:
              service:
                name: test-stackland-service
                port:
                  number: 5556
            path: /
            pathType: Prefix
      tls:
      - hosts:
        - <внешняя ссылка>
        secretName: test-stackland-tls
    
  3. Подставьте в параметр:

    • metadata.namespace — название проекта.
    • spec.rules[0].host — ссылку для внешнего доступа.
    • spec.tls[0].hosts[0] — ссылку для внешнего доступа.
  4. Примените манифест: kubectl apply -f ingress.yaml.

Шаг 2. Создайте HTML-страницуШаг 2. Создайте HTML-страницу

  1. Создайте файл ресурса ConfigMap. Например, с помощью команды touch configmap.yaml.

  2. Откройте файл и вставьте конфигурацию ниже:

    apiVersion: v1
    data:
      index.html: "<!DOCTYPE html>\n<html>\n<head>\n    <title>Тест Stackland</title>\n    <meta charSet=\"UTF-8\"/>\n</head>\n<body>\n    <h1>Тест внешнего доступа к Stackland</h1>\n    <p>Эта страница используется для тестирования внешнего доступа к сервису Stackland</p>\n</body>\n</html>\n"
    kind: ConfigMap
    metadata:
      name: test-stackland-html
      namespace: <название проекта>
    
  3. Подставьте в параметр metadata.namespace название проекта.

  4. Примените манифест: kubectl apply -f configmap.yaml.

Шаг 3. Создайте Deployment для HTML-страницыШаг 3. Создайте Deployment для HTML-страницы

  1. Создайте файл ресурса Deployment. Например, с помощью команды touch deployment.yaml.

  2. Откройте файл и вставьте конфигурацию ниже:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: test-stackland
      namespace: <название проекта>
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: test-stackland-service
      template:
        metadata:
          labels:
            app: test-stackland-service
        spec:
          containers:
          - image: nginx:alpine
            name: nginx
            ports:
            - containerPort: 80
            volumeMounts:
            - mountPath: /usr/share/nginx/html
              name: html
          volumes:
          - configMap:
              name: test-stackland-html
            name: html
    
  3. Подставьте в параметр metadata.namespace название проекта.

  4. Примените манифест: kubectl apply -f deployment.yaml.

Шаг 4. Создайте Service для HTML-страницыШаг 4. Создайте Service для HTML-страницы

  1. Создайте файл ресурса Service. Например, с помощью команды touch service.yaml.

  2. Откройте файл и вставьте конфигурацию ниже:

    apiVersion: v1
    kind: Service
    metadata:
      name: test-stackland-service
      namespace: <название проекта>
    spec:
      ports:
      - port: 5556
        targetPort: 80
      selector:
        app: test-stackland-service
    
  3. Подставьте в параметр metadata.namespace название проекта.

  4. Примените манифест: kubectl apply -f service.yaml.

Шаг 5. Проверьте работу доступаШаг 5. Проверьте работу доступа

Откройте в браузере выбранную ссылку для внешнего доступа. Вы должны увидеть тестовую HTML-страницу.

Была ли статья полезна?

Предыдущая
Установить Stackland на Yandex BareMetal
Следующая
Все инструкции
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»