Создание простого приложения через образ

Это техническое руководство демонстрирует, как эффективно создавать, управлять и получать доступ к контейнеризованным приложениям в с использованием нативных для Kubernetes методов.

Содержание

Введение

Сценарии использования

  • Новые пользователи, желающие понять основные рабочие процессы создания приложений на платформах Kubernetes
  • Практическое упражнение, демонстрирующее ключевые возможности платформы, включая:
    • Организацию проектов/пространств имён
    • Создание Deployment
    • Шаблоны экспонирования сервисов
    • Проверку доступности приложения

Время выполнения

Оценочное время выполнения: 10-15 минут

Важные замечания

  • Это техническое руководство сосредоточено на основных параметрах — для расширенных настроек обращайтесь к полной документации
  • Требуемые разрешения:
    • Создание проектов/пространств имён
    • Интеграция репозиториев образов
    • Развёртывание workloads

Предварительные требования

  • Базовое понимание архитектуры Kubernetes и концепций платформы
  • Предварительно настроенный проект согласно процедурам создания платформы

Обзор рабочего процесса

ОперацияОписание
1Создать NamespaceУстановить границу изоляции ресурсов
2Настроить репозиторий образовНастроить источники контейнерных образов
3Создать приложение через DeploymentСоздать workload Deployment
4Экспонировать сервис через NodePortНастроить сервис NodePort
5Проверить доступность приложенияТестировать доступ к конечной точке

Процедура

Создание namespace

Namespaces обеспечивают логическую изоляцию для группировки ресурсов и управления квотами.

Предварительные условия

  • Разрешения на создание, обновление и удаление namespaces (например, роли Administrator или Project Administrator)
  • kubectl, настроенный с доступом к кластеру

Процесс создания

  1. Войдите в систему и перейдите в Project Management > Namespaces

  2. Выберите Create Namespace

  3. Настройте основные параметры:

    ** Параметр **Описание
    ClusterЦелевой кластер из связанных с проектом кластеров
    NamespaceУникальный идентификатор (автоматически с префиксом имени проекта)
  4. Завершите создание с настройками ресурсов по умолчанию

Настройка репозитория образов

поддерживает несколько стратегий получения образов:

Метод 1: Встроенный реестр через Toolchain

  1. Перейдите в Platform Management > Toolchain > Integration

  2. Создайте новую интеграцию:

    ПараметрТребование
    NameУникальный идентификатор интеграции
    API EndpointURL сервиса реестра (HTTP/HTTPS)
    SecretСуществующие или вновь созданные учётные данные
  3. Назначьте реестр целевому проекту платформы

Метод 2: Внешние сервисы реестров

  • Используйте общедоступные URL реестров (например, Docker Hub)
  • Пример: index.docker.io/library/nginx:latest

Требование к проверке

  • Сеть кластера должна иметь исходящий доступ к конечным точкам реестра

Создание приложения через Deployment

Deployment обеспечивает декларативное обновление реплик Pod.

Процесс создания

  1. В представлении Container Platform:
    • Используйте селектор namespace для выбора целевой границы изоляции
  2. Перейдите в Workloads > Deployments
  3. Нажмите Create Deployment
  4. Укажите источник образа:
    • Выберите встроенный реестр или
    • Введите внешний URL образа (например, index.docker.io/library/nginx:latest)
  5. Настройте идентификацию workload и запустите

Операции управления

  • Мониторинг статуса реплик
  • Просмотр событий и логов
  • Просмотр YAML-манифестов
  • Анализ метрик ресурсов, оповещений

Экспонирование сервиса через NodePort

Сервисы обеспечивают сетевой доступ к группам Pod.

Процесс создания

  1. Перейдите в Networking > Services

  2. Нажмите Create Service с параметрами:

    ПараметрЗначение
    TypeNodePort
    SelectorИмя целевого Deployment
    Port MappingПорт сервиса: Порт контейнера (например, 8080:80 )
  3. Подтвердите создание.

Критично

  • Виртуальный IP, видимый в кластере
  • Диапазон выделения NodePort (30000-32767)

Внутренние маршруты обеспечивают обнаружение сервисов для workloads, предоставляя единый IP-адрес или порт хоста для доступа.

  1. Нажмите Network > Service.

  2. Нажмите Create Service.

  3. Настройте Details согласно параметрам ниже, остальные параметры оставьте по умолчанию.

    ПараметрОписание
    NameВведите имя сервиса.
    TypeNodePort
    Workload NameВыберите ранее созданный Deployment.
    PortService Port: номер порта, который сервис открывает внутри кластера, т.е. Port, например, 8080.
    Container Port: целевой номер порта (или имя), сопоставленный с портом сервиса, т.е. targetPort, например, 80.
  4. Нажмите Create. На этом этапе сервис успешно создан.

Проверка доступности приложения

Метод проверки

  1. Получите компоненты открытой конечной точки:
    • Node IP: публичный адрес рабочего узла
    • NodePort: выделенный внешний порт
  2. Сформируйте URL доступа: http://<Node_IP>:<NodePort>
  3. Ожидаемый результат: страница приветствия Nginx