Руководство. Перенос Oracle WebLogic Server на Служба Azure Kubernetes в пользовательской виртуальной сети

В этом руководстве показано, как развернуть предложение Oracle WebLogic Server (WLS) на Служба Azure Kubernetes (AKS), которое интегрируется с пользовательской виртуальной сетью в подписке потребителя. Предложение WLS в AKS позволяет решить, следует ли создать новую виртуальную сеть или использовать существующую.

В этом руководстве описано следующее:

  • Создайте пользовательскую виртуальную сеть и создайте инфраструктуру в сети.
  • Запустите Oracle WebLogic Server в AKS в пользовательской виртуальной сети.
  • Предоставление Oracle WebLogic Server с помощью Шлюз приложений Azure в качестве подсистемы балансировки нагрузки.
  • Проверка успешного развертывания.

Необходимые компоненты

  • Подписка Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начать работу.

  • Используйте Azure Cloud Shell с помощью среды Bash. Убедитесь, что azure CLI версии 2.37.0 или выше.

    Запуск Cloud Shell в новом окне

  • Если вы предпочитаете, установите Azure CLI 2.37.0 или более поздней версии для выполнения команд Azure CLI.

    • Если вы используете локальную установку, выполните вход с помощью команды Azure CLI az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. См . сведения о входе с помощью Azure CLI для других параметров входа.
    • Если появится запрос, установите расширения Azure CLI при первом использовании. Дополнительные сведения о расширениях см. в статье Использование расширений с Azure CLI.
    • Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.
  • Для предложения WLS в Marketplace AKS требуется разрешение на создание управляемого удостоверения, назначаемого пользователем, и назначение ролей Azure. Чтобы назначить роли Azure, необходимо иметь Microsoft.Authorization/roleAssignments/write разрешения, такие как администратор доступа пользователей или владелец.

  • Учетная запись Oracle. Действия, описанные в реестре контейнеров Oracle, будут направлять вас на принятие лицензионного соглашения для образов WebLogic Server. Запишите пароль учетной записи Oracle и электронную почту.

Создание или изменение группы ресурсов

Создайте группу ресурсов с помощью команды az group create. В этом примере создается группа ресурсов с именем myResourceGroup в расположении eastus :

export RESOURCE_GROUP_NAME="myResourceGroup"
az group create \
    --name ${RESOURCE_GROUP_NAME} \
    --location eastus

Создание настраиваемой виртуальной сети

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

В этом разделе создается виртуальная сеть с адресным пространством 192.168.0.0/16и создается две подсети, используемые для AKS и Шлюз приложений.

Сначала создайте виртуальную сеть с помощью az network vnet create. В следующем примере создается виртуальная сеть по умолчанию с именем myVNet:

az network vnet create \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name myVNet \
    --address-prefixes 192.168.0.0/16

Затем создайте подсеть с помощью az network vnet subnet create for the AKS cluster. В следующем примере создается подсеть с именем myAKSSubnet

az network vnet subnet create \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name myAKSSubnet \
    --vnet-name myVNet \
    --address-prefixes 192.168.1.0/24

Затем создайте подсеть с помощью az network vnet subnet create for Шлюз приложений. В следующем примере создается подсеть с именем myAppGatewaySubnet

az network vnet subnet create \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name myAppGatewaySubnet \
    --vnet-name myVNet \
    --address-prefixes 192.168.2.0/24

Затем используйте следующую команду, чтобы получить идентификатор ресурса подсети AKS и сохранить его в переменной для использования далее в этой статье:

export AKS_SUBNET_ID=$(az network vnet subnet show \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --vnet-name myVNet \
    --name myAKSSubnet \
    --query id \
    --output tsv)

Создание кластера AKS в виртуальной сети

Используйте следующую команду, чтобы создать кластер AKS в виртуальной сети и подсети с помощью команды az aks create .

Примечание.

В этом примере создается кластер AKS с помощью kubenet и назначаемого системой удостоверения. Azure CLI предоставит роль участника сети назначенному системой удостоверению после создания кластера.

Если вы хотите использовать Azure CNI, см. статью "Настройка сети Azure CNI в AKS" для создания кластера AKS с поддержкой Azure CNI .

Если вы хотите использовать управляемое удостоверение, назначаемое пользователем, см. статью "Создание кластера AKS с управляемыми удостоверениями, назначаемым системой".

az aks create \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name myAKSCluster \
    --generate-ssh-keys \
    --enable-managed-identity \
    --node-count 3 \
    --network-plugin kubenet \
    --vnet-subnet-id $AKS_SUBNET_ID \
    --yes

Хранение приложений Java EE в учетной записи хранения

Вы можете развернуть приложение Java EE вместе с WLS в развертывании предложения AKS. Файл приложения (.war, .ear или .jar) необходимо передать в существующий контейнер учетной записи служба хранилища Azure и контейнера хранения в этой учетной записи.

Создайте учетную запись служба хранилища Azure с помощью команды az storage account create, как показано в следующем примере:

export STORAGE_ACCOUNT_NAME="stgwlsaks$(date +%s)"
az storage account create \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name ${STORAGE_ACCOUNT_NAME} \
    --location eastus \
    --sku Standard_RAGRS \
    --kind StorageV2

Создайте контейнер для хранения больших двоичных объектов с помощью команды az storage container create. В следующем примере используется ключ учетной записи хранения для авторизации операции для создания контейнера. Вы также можете использовать учетную запись Microsoft Entra для авторизации операции для создания контейнера. Дополнительные сведения см. в статье Авторизация доступа к данным BLOB-объектов или очередей с помощью Azure CLI.

export KEY=$(az storage account keys list \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --account-name ${STORAGE_ACCOUNT_NAME} \
    --query [0].value \
    --output tsv)

az storage container create \
    --account-name ${STORAGE_ACCOUNT_NAME} \
    --name mycontainer \
    --account-key ${KEY} \
    --auth-mode key

Затем отправьте приложение Java EE в большой двоичный объект с помощью команды az storage blob upload . В следующем примере отправляется тестовое приложение testwebapp.war .

curl -fsL https://aka.ms/wls-aks-testwebapp -o testwebapp.war

az storage blob upload \
    --account-name ${STORAGE_ACCOUNT_NAME} \
    --container-name mycontainer \
    --name testwebapp.war \
    --file testwebapp.war \
    --account-key ${KEY} \
    --auth-mode key

Чтобы отправить несколько файлов одновременно, см. статью "Создание, скачивание и перечисление больших двоичных объектов" с помощью Azure CLI.

Развертывание WLS в предложении AKS

В этом разделе показано, как подготовить кластер WLS с созданным ранее экземпляром AKS. Вы подготовите кластер в пользовательской виртуальной сети и экспортируете узлы кластера с помощью Шлюз приложений Azure в качестве подсистемы балансировки нагрузки. Предложение автоматически создаст самозаверяющий сертификат для Шлюз приложений завершения TLS/SSL. Дополнительные сведения об использовании завершения TLS/SSL с Шлюз приложений см. в Шлюз приложений контроллере входящего трафика.

Сначала начните процесс развертывания веб-сервера WebLogic, как описано в руководстве пользователя Oracle WebLogic Server в AKS, но вернитесь на эту страницу при достижении возможности настройки кластера AKS, как показано на следующем снимке экрана.

Снимок экрана: портал Azure с панелью

Настройка кластера AKS

Теперь, когда у вас есть кластер AKS в виртуальной сети, выберите кластер AKS для развертывания.

  1. Для создания нового кластера AKS нажмите кнопку "Нет".
  2. В разделе "Выбор кластера AKS" откройте раскрывающееся меню, а затем выберите созданный кластер AKS, названный myAKSCluster в этом примере.
  3. Для использования уже существующего образа Docker webLogic Server из реестра контейнеров Oracle выберите "Да".
  4. Чтобы создать новую Реестр контейнеров Azure для хранения образов приложений?нажмите кнопку "Да".
  5. В разделе "Имя пользователя для проверки подлинности единого входа Oracle" введите имя пользователя учетной записи единого входа Oracle.
  6. В разделе "Пароль для проверки подлинности единого входа Oracle" введите пароль для этой учетной записи.
  7. В разделе "Подтверждение пароля" повторно встанете значение предыдущего поля.
  8. Для выбора требуемого сочетания webLogic Server, JDK и операторской системы или полного тега Docker сохраните значение по умолчанию.
  9. Для развертывания пакета приложения нажмите кнопку "Да".
  10. Для пакета приложений (.war,.ear,.jar)выберите "Обзор".
    • Выберите созданную вами учетную запись хранения. Имя начинается с stgwlsaks этого примера.
    • Выберите контейнер на странице "Контейнеры ". В этом примере используется mycontainer.
    • Проверьте приложение, указанное в контейнере. В этом примере используется testwebapp.war.
    • Выберите Выбрать.
  11. Для других полей сохраните значения по умолчанию.

Теперь вы завершили настройку кластера AKS, базового образа WebLogic и приложения Java EE.

Затем вы настроите сквозной протокол TLS/SSL в консоль администрирования сервера WebLogic и кластер в порте HTTPS (Secure) с собственным сертификатом в области конфигурации TLS/SSL. Для этой задачи выполните действия, описанные в руководстве пользователя Oracle WebLogic Server в AKS, но вернитесь на эту страницу при достижении сети, как показано на следующем снимке экрана. Вы будете использовать следующий раздел для настройки сети, а затем вернитесь в руководство пользователя WLS в AKS, чтобы завершить развертывание.

Снимок экрана: портал Azure с панелью

Настройка контроллера входящего трафика Шлюз приложений

Выполните следующие действия, чтобы настроить контроллер входящего трафика Шлюз приложений в виртуальной сети.

  1. Для подключения к Шлюз приложений Azure?нажмите кнопку "Да".
  2. В разделе "Настройка виртуальных сетей" для виртуальной сети выберите созданную виртуальную сеть. В этом примере используется myVNet myResourceGroup. Для подсети выберите подсеть для Шлюз приложений. В этом примере используется myAppGatewaySubnet.
  3. Чтобы выбрать нужный параметр TLS/SSL-сертификата, выберите "Создать самозаверяющий внешний сертификат".
  4. Чтобы создать входящий трафик для консоли администрирования, выберите "Да ", чтобы предоставить консоль администрирования WebLogic.
  5. Для других полей сохраните значения по умолчанию.

Теперь вы можете продолжить работу с другими аспектами развертывания WLS, как описано в руководстве пользователя Oracle WebLogic Server в AKS.

Проверка успешного развертывания WLS

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

После завершения развертывания выберите выходные данные. Внешний URL-адрес консоли администрирования WebLogic и кластера. Чтобы получить доступ к этим ресурсам, используйте следующие инструкции:

  • Чтобы просмотреть консоль администрирования WebLogic, сначала скопируйте значение выходной переменной adminConsoleExternalUrl. Затем вставьте значение в адресную строку браузера и нажмите клавишу ВВОД , чтобы открыть страницу входа в консоль администрирования WebLogic.
  • Чтобы просмотреть кластер WebLogic, сначала скопируйте значение выходной переменной clusterExternalUrl. Затем используйте это значение для создания примера URL-адреса приложения, применяя его к следующему шаблону: ${clusterExternalUrl}testwebapp/ Теперь вставьте URL-адрес приложения в адресную строку браузера и нажмите клавишу ВВОД. В примере приложения отображается частный адрес и имя узла модуля pod, в котором выполняется маршрутизация контроллера входящего трафика Шлюз приложений.

Очистка ресурсов

Если вы не собираетесь продолжать использовать кластер WLS, удалите виртуальную сеть и кластер WLS, выполнив следующие портал Azure действия.

  1. Перейдите на страницу обзора группы ресурсов, а затем выберите "Удалить группу myResourceGroupресурсов".
  2. Перейдите на страницу обзора группы ресурсов, развернутой в предложении AKS, а затем выберите " Удалить группу ресурсов".

Следующие шаги

Продолжайте изучать параметры для запуска WLS в Azure.