Облачная платформаAdvanced

Создание рабочей нагрузки

Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

В этом разделе описывается, как развернуть рабочую нагрузку в CCE. При первом использовании CCE создайте кластер и добавьте узел в кластер.

Note

Контейнеризованные рабочие нагрузки развертываются аналогичным способом. Различия заключаются в:

  • Нужны ли переменные среды
  • Нужны ли облачные хранилища

Необходимые облачные сервисы

  • Cloud Container Engine (CCE): высоконадежный и высокопроизводительный сервис, позволяющий предприятиям управлять контейнеризованными приложениями. С поддержкой приложений и инструментов, нативных для Kubernetes, CCE упрощает настройку среды для запуска контейнеров в облаке.
  • Elastic Cloud Server (ECS): масштабируемый облачный сервер по запросу, который позволяет эффективно создавать надежные, безопасные и гибкие среды приложений, обеспечивая стабильную работу сервисов и повышая эффективность эксплуатации.
  • Virtual Private Cloud (VPC): изолированная частная виртуальная сеть, которую вы можете заказать в облаке. Вы можете настроить диапазоны IP-адресов, подсети и группы безопасности, а также назначать эластичные IP-адреса и выделять пропускную способность в VPC.

Основные понятия

  • Кластер — это набор вычислительных ресурсов, включающий группу узлов. Контейнер работает на узле. Прежде чем создавать контейнеризованное приложение, необходимо иметь доступный кластер.
  • Узел — это виртуальная или физическая машина, предоставляющая вычислительные ресурсы для платформы. Необходимо иметь достаточные ресурсы узла, чтобы обеспечить успешные операции, такие как создание приложений.
  • Рабочая нагрузка обозначает группу pod'ов, работающих в CCE. CCE поддерживает размещение сторонних приложений и предоставляет полное управление жизненным циклом (от развертывания до эксплуатации и обслуживания) приложений. В этом разделе описывается, как с помощью образа контейнера создать рабочую нагрузку.

Процедура

  1. Подготовьте среду, как описано в Table 1.

    Table 1 Подготовка среды

    No.

    Категория

    Процедура

    1

    Создание VPC

    Создайте VPC перед созданием кластера. VPC обеспечивает изолированную, настраиваемую, управляемую виртуальную сетевую среду для кластеров CCE.

    Если VPC уже существует, перейдите к следующей задаче.

    1. Войдите в консоль управления.
    2. В списке сервисов выберите Networking > Virtual Private Cloud.
    3. На странице Overview нажмите Create VPC.
    4. Следуйте инструкциям для создания VPC. Сохраняйте параметры со значениями по умолчанию, если не указано иное.

    2

    Создание пары ключей

    Создайте пару ключей перед созданием контейнеризованного приложения. Пары ключей используются для аутентификации личности при удалённом входе на узел. Если пара ключей уже существует, пропустите эту задачу.

    1. Войдите в консоль управления.
    2. В списке сервисов выберите Data Encryption Workshop.
    3. В панели навигации выберите Key Pair Service. Перейдите на вкладку Private Key Pairs. Затем нажмите Create Key Pair.
    4. Введите имя пары ключей, подтвердите I agree to host the private key of the key pair. и I have read and agree to the Key Pair Service Disclaimer., и нажмите OK.
    5. Просмотрите и сохраните закрытый ключ. В целях безопасности пара ключей может быть загружена только один раз. Храните её в безопасном месте, чтобы обеспечить успешный вход.

  2. Создайте кластер и узел.

    1. Войдите в CCE console. На странице Clusters нажмите Buy Cluster и выберите тип создаваемого кластера.

      Настройте параметры кластера и выберите VPC, созданный в 1.

    2. Приобретите узел и выберите пару ключей, созданную в 1, в качестве варианта входа.

  3. Разверните рабочую нагрузку в CCE.

    1. Войдите в CCE console и нажмите название кластера, чтобы открыть консоль кластера. В панели навигации выберите Workloads и нажмите Create Workload.
    2. Настройте следующие параметры и оставьте значения по умолчанию для остальных параметров:
      • Workload Name: Установите значение apptest.
      • Pods: Установите значение 1.
    3. В области Container Settings выберите образ, загруженный в Building and Uploading an Image.
    4. В области Container Settings выберите Environment Variables и добавьте переменные среды для взаимодействия с базой данных MySQL. Переменные среды задаются в startup script.
      Note

      В этом примере взаимодействие с базой данных MySQL реализовано путём настройки переменных среды. Определите, следует ли использовать переменные среды, исходя из требований вашего сервиса.

      Table 2 Настройка переменных окружения

      Имя переменной

      Значение переменной/Ссылка на переменную

      MYSQL_DB

      Имя базы данных.

      MYSQL_URL

      IP-адрес и номер порта базы данных.

      MYSQL_USER

      Имя пользователя базы данных.

      MYSQL_PASSWORD

      Пароль пользователя базы данных.

    5. В области Container Settings выберите Data Storage и настройте облачное хранилище для постоянного хранения данных.
      Note

      В этом примере используется база данных MongoDB, и также требуется постоянное хранение данных, поэтому необходимо настроить облачное хранилище. Определите, следует ли использовать облачное хранилище, исходя из требований вашего сервиса.

      Путь монтирования должен совпадать с путём хранения MongoDB в Docker startup script. Подробности см. в startup script. В этом примере путь — /usr/local/mongodb/data.

    6. В области Service Settings нажмите , чтобы добавить Service, настройте параметры Service и нажмите OK.
      Note

      В этом примере приложение может быть доступно из интернета через EIP.

      • Service Name: имя приложения, которое может быть доступно извне. В этом примере этот параметр установлен в apptest.
      • Service Type: Выберите NodePort.
      • Service Affinity
        • Cluster-level: Эта рабочая нагрузка, связанная с Service, доступна через IP-адрес узла и порт любого узла кластера. Доступ между узлами приводит к накладным расходам на перенаправление маршрута и скрывает IP-адрес источника клиента.
        • Node-level: Эта рабочая нагрузка, связанная с Service, доступна только через IP-адрес узла и порт хостинг‑узла. Прямой доступ устраняет накладные расходы на перенаправление маршрута и сохраняет IP-адрес источника клиента.
      • Port
        • Protocol: Установите значение TCP.
        • Service Port: порт для доступа к Service.
        • Container Port: порт, на котором приложение будет прослушивать в контейнере. В этом примере этот параметр установлен в 8080.
        • Node Port: Установите значение Auto. Система автоматически открывает реальный порт на всех узлах текущего кластера и затем сопоставляет номер порта с портом Service.
    7. Нажмите Create Workload.

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

Verifying a Workload

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

In the preceding configuration, a NodePort Service is configured for the workload. This means that you can access the workload using <node-IP-address>:port. If the workload can be accessed properly, it has been deployed.

Вы можете получить адрес доступа на вкладке Access Mode на странице сведений о нагрузке.

Создание Workload — документация Cloud Container Engine руководство пользователя облако Cloud.ru