Implantar um aplicativo Java com o Open Liberty ou WebSphere Liberty em um cluster do AKS (Serviço de Kubernetes do Azure)
Este artigo demonstra como:
- Executar seu aplicativo Java, Java EE, Jacarta EE ou MicroProfile no runtime do Open Liberty ou do IBM WebSphere Liberty.
- Crie a imagem do Docker do aplicativo com
az acr build
usando as imagens de contêiner do Open Liberty ou do WebSphere Liberty. - Implante o aplicativo nos contêineres em um cluster do AKS (Serviço de Kubernetes do Azure) usando o Operador Open Liberty ou Operador WebSphere Liberty.
O Open Liberty Operator simplifica a implantação e o gerenciamento de aplicativos executados em clusters Kubernetes. Com o Operador Open Liberty Operator ou WebSphere Liberty, você também pode executar operações mais avançadas, como coleta de rastreamentos e despejos.
Este artigo usa a oferta do Azure Marketplace para Open Liberty ou WebSphere Liberty para acelerar sua jornada no AKS. A oferta provisiona automaticamente alguns recursos do Azure, incluindo:
- Uma instância do Registro de Contêiner do Azure.
- Uma cluster do AKS.
- Uma instância do Controlador de Entrada de Gateway de Aplicativo (AGIC).
- O operador Open Liberty e o operador WebSphere Liberty.
- Opcionalmente, uma imagem de contêiner que inclui o Liberty e seu aplicativo.
Se você preferir diretrizes passo a passo manuais para executar o Liberty no AKS, confira Implantar manualmente um aplicativo Java com o Open Liberty ou o WebSphere Liberty em um cluster AKS (Serviço de Kubernetes do Azure).
Este artigo tem o objetivo de ajudá-lo a iniciar rapidamente a implementação. Antes de ir para a produção, você deve explorar a documentação IBM sobre como ajustar o Liberty.
Se você tiver interesse em fornecer feedback ou trabalhar em seus cenários de migração em estreita colaboração com a equipe de engenharia que desenvolve o WebSphere para as soluções do Azure, responda a essa breve pesquisa sobre migração para o WebSphere e inclua seus dados de contato. A equipe de gerentes de programas, arquitetos e engenheiros entrará em contato prontamente com você para dar início a uma estreita colaboração.
Pré-requisitos
- Uma assinatura do Azure. Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
- Prepare um computador local com o sistema operacional semelhante ao Unix instalado, como Ubuntu, Azure Linux, macOS ou Subsistema do Windows para Linux.
- Instalar a CLI do Azure para executar comandos da CLI do Azure.
- Entre na CLI do Azure usando o comando
az login
. Para concluir o processo de autenticação, siga as etapas exibidas no terminal. Para obter outras opções de login, confira Entrar no Azure com a CLI do Azure. - Quando solicitado, instale a extensão da CLI do Azure no primeiro uso. Para obter mais informações sobre extensões, confira Usar e gerenciar extensões com a CLI do Azure.
- Execute
az version
para localizar a versão e as bibliotecas dependentes que estão instaladas. Para fazer a atualização para a versão mais recente, executeaz upgrade
. Este artigo requer pelo menos a versão 2.61.0 da CLI do Azure.
- Entre na CLI do Azure usando o comando
- Instale uma implementação Java SE (Standard Edition), versão 17 (por exemplo, Eclipse Open J9).
- Instale o Maven 3.9.8 ou posterior.
- Verifique se o Git está instalado.
- Verifique se você foi atribuído à função
Owner
ou às funçõesContributor
eUser Access Administrator
na assinatura. Você pode verificá-lo seguindo as etapas em Listar atribuições de função para um usuário ou grupo.
Criar uma implantação do Liberty no AKS usando o portal
As etapas a seguir guiará você a criar um runtime do Liberty no AKS. Depois de concluir essas etapas, você terá uma instância do Registro de Contêiner e um cluster do AKS para implantar seu aplicativo em contêineres.
Acesse o portal do Azure. Na caixa de pesquisa na parte superior da página, insira WebSphere Liberty/Open Liberty no Kubernetes. Quando as sugestões aparecerem, selecione a única correspondência na seção Marketplace.
Se preferir, você pode ir diretamente para a oferta.
Selecione Criar.
No painel Informações Básicas:
- Crie um novo grupo de recursos. Como os grupos de recursos devem ser exclusivos em uma assinatura, escolha um nome exclusivo. Uma forma fácil de ter nomes exclusivos é usar uma combinação de suas iniciais, a data de hoje e algum identificador (por exemplo,
ejb0913-java-liberty-project-rg
). Anote o nome do grupo de recursos para uso posterior neste artigo. - Em Região, selecione uma região próxima a você. Por exemplo, selecione Leste dos EUA 2.
- Crie um novo grupo de recursos. Como os grupos de recursos devem ser exclusivos em uma assinatura, escolha um nome exclusivo. Uma forma fácil de ter nomes exclusivos é usar uma combinação de suas iniciais, a data de hoje e algum identificador (por exemplo,
Selecione Avançar. No painel do AKS, opcionalmente, você pode selecionar um cluster do AKS existente e uma instância do Registro de Contêiner, em vez de fazer com que a implantação crie novos. Essa escolha permite que você use o padrão sidecar, conforme mostrado no Centro de Arquitetura do Azure. Você também pode ajustar as configurações para o tamanho e o número das máquinas virtuais no pool de nós do AKS.
Para os propósitos deste artigo, basta manter todos os padrões neste painel.
Selecione Avançar. No painel Balanceamento de Carga, ao lado de Conectar-se ao Gateway de Aplicativo do Azure, selecione Sim. Nesta seção, você pode personalizar as seguintes opções de implantação:
Em Rede virtual e Sub-rede, você pode, como alternativa, personalizar a rede virtual e a sub-rede nas quais a implantação coloca os recursos. Você não precisa alterar os valores restantes de seus padrões.
No Certificado TLS/SSL, você pode fornecer o certificado TLS/SSL do Gateway de Aplicativo do Azure. Deixe os valores nos padrões para fazer com que a oferta gere um certificado autoassinado.
Não entre em produção com um certificado autoassinado. Para obter mais informações sobre certificados autoassinados, confira Criar um certificado público autoassinado para autenticar seu aplicativo.
Você pode selecionar Habilitar a afinidade baseada em cookies, também conhecida como sessões persistentes. Este artigo usa sessões autoadesivas, portanto, certifique-se de selecionar essa opção.
Selecione Avançar. No painel Operador e aplicativo, este artigo usa todos os padrões. No entanto, você pode personalizar as seguintes opções de implantação:
- Você pode implantar o Operador WebSphere Liberty selecionando Sim para a opção IBM com suporte?. Deixar o padrão Não implementa o Operador Open Liberty.
- Você pode implementar um aplicativo para a operadora selecionada, marcando Sim na opção Implantar um aplicativo?. Sair do padrão Não implementa nenhum aplicativo.
Selecione Examinar + criar para validar suas opções selecionadas. No painel Revisar + criar, quando Criar ficar disponível após a aprovação da validação, selecione-o.
A implantação pode levar até 20 minutos. Enquanto aguarda a conclusão da implantação, você pode seguir as etapas na seção Criar uma instância do Banco de Dados SQL do Azure. Depois de concluir essa seção, volte aqui e continue.
Capturar informações selecionadas da implantação
Se você saiu do painel A implantação está em andamento, as etapas a seguir mostram como voltar para ele. Se você ainda estiver no painel que mostra Sua implantação foi concluída, vá para o grupo de recursos recém-criado e pule para a terceira etapa.
No canto de qualquer página do portal, selecione o botão de menu e selecione Grupos de recursos.
Na caixa com o texto Filtrar para qualquer campo, insira os primeiros caracteres do grupo de recursos criado anteriormente. Se você seguiu a convenção recomendada, insira suas iniciais e selecione o grupo de recursos apropriado.
Na lista de recursos no grupo de recursos, selecione o recurso com o valor Tipo de registro de Contêiner.
No painel de navegação, em Configurações, selecione Chaves de acesso.
Anote os valores de Nome de registro e Servidor de logon. Você pode usar o ícone de cópia ao lado de cada campo para copiar o valor para a área de transferência do sistema.
Observação
Este artigo usa o comando
az acr build
para criar e enviar a imagem do Docker por push para o Registro de Contêiner, sem usarusername
epassword
do Registro de Contêiner. Ainda é possível usar o nome de usuário e senha comdocker login
edocker push
. O uso de nome de usuário e senha é menos seguro do que a autenticação sem senha.Volte para o grupo de recursos em que você implantou os recursos.
Na seção Configurações, selecione Implantações.
Selecione a implantação mais abaixo da lista. O valor Nome da implantação corresponde à ID do editor da oferta. Ele contém a cadeia de caracteres
ibm
.No painel de navegação, selecione Saídas.
Usando a mesma técnica de cópia dos valores anteriores, guarde os valores para as seguintes saídas:
cmdToConnectToCluster
appDeploymentTemplateYaml
se a implantação não incluir um aplicativo. Ou seja, você selecionou Nenhum para Implantar um aplicativo? quando você implantou a oferta do Marketplace. Esse artigo selecionou Não. No entanto, se você selecionou Sim, anote o valor deappDeploymentYaml
, que inclui a implantação do aplicativo.Cole o valor de
appDeploymentTemplateYaml
ouappDeploymentYaml
em um shell Bash e execute o comando.A saída desse comando é o YAML de implantação do aplicativo. Procure o segredo TLS de entrada com a palavra-chave
secretName
, como- secretName: secret785e2c
. Salve o valor desecretName
.
Execute os comandos a seguir para definir as variáveis de ambiente capturadas nas etapas anteriores. Essas variáveis de ambiente são usadas posteriormente neste artigo.
export RESOURCE_GROUP_NAME=<your-resource-group-name>
export REGISTRY_NAME=<your-registry-nam-of-container-registry>
export LOGIN_SERVER=<your-login-server-of-container-registry>
export INGRESS_TLS_SECRET=<your-ingress-tls-secret-name>
Criar uma instância do Banco de Dados SQL do Azure
Nesta seção, você cria um banco de dados individual do Banco de Dados SQL do Azure para usar com seu aplicativo.
Primeiro, defina variáveis de ambiente relacionadas ao banco de dados. Substitua <your-unique-sql-server-name>
por um nome exclusivo para o servidor do Banco de Dados SQL do Azure.
export SQL_SERVER_NAME=<your-unique-sql-server-name>
export DB_NAME=demodb
Execute o comando a seguir em seu terminal para criar um banco de dados individual no Banco de Dados SQL do Azure e definir o usuário conectado atual como um administrador do Microsoft Entra. Para obter mais informações, confira Início Rápido: criar um banco de dados individual – Banco de Dados SQL do Azure.
export ENTRA_ADMIN_NAME=$(az account show --query user.name --output tsv)
az sql server create \
--name $SQL_SERVER_NAME \
--resource-group $RESOURCE_GROUP_NAME \
--enable-ad-only-auth \
--external-admin-principal-type User \
--external-admin-name $ENTRA_ADMIN_NAME \
--external-admin-sid $(az ad signed-in-user show --query id --output tsv)
az sql db create \
--resource-group $RESOURCE_GROUP_NAME \
--server $SQL_SERVER_NAME \
--name $DB_NAME \
--edition GeneralPurpose \
--compute-model Serverless \
--family Gen5 \
--capacity 2
Em seguida, adicione o endereço IP local às regras de firewall do servidor do Banco de Dados SQL do Azure para permitir que seu computador local se conecte ao banco de dados para teste local posteriormente.
export AZ_LOCAL_IP_ADDRESS=$(curl -s https://whatismyip.akamai.com)
az sql server firewall-rule create \
--resource-group $RESOURCE_GROUP_NAME \
--server $SQL_SERVER_NAME \
--name AllowLocalIP \
--start-ip-address $AZ_LOCAL_IP_ADDRESS \
--end-ip-address $AZ_LOCAL_IP_ADDRESS
Observação
Este artigo desabilita a autenticação SQL para ilustrar as práticas recomendadas de segurança. O Microsoft Entra ID é usado para autenticar a conexão com o servidor. Se você precisar habilitar a autenticação SQL, consulte az sql server create
.
Criar uma conexão de serviço no AKS com o Conector de Serviço
Nesta seção, você criará uma conexão de serviço entre o cluster do AKS e o Banco de Dados SQL do Azure usando a ID de carga de trabalho do Microsoft Entra com o Conector de Serviço. Essa conexão permite que o cluster do AKS acesse o Banco de Dados SQL do Azure sem usar a autenticação SQL.
Primeiro, conceda ao aplicativo Provedor de Recursos do Conector de Serviços do Azure permissões para o Gateway de Aplicativo implantado antes. Essa etapa é necessária para criar com sucesso uma conexão de serviço entre o cluster do AKS e o Banco de Dados SQL do Azure.
- Acesse o portal do Azure e navegue até o grupo de recursos criado anteriormente.
- Na lista de recursos no grupo de recursos, selecione o recurso com o valor Tipo de Gateway de aplicativo.
- Selecione IAM (Controle de acesso) . Em seguida, expanda Adicionar e selecione Adicionar atribuição de função.
- Na guia Função, selecione Funções de administrador com privilégios. Depois, selecione Colaborador. Selecione Avançar.
- Na guia Membros, selecione Selecionar membros. Em seguida, pesquise o aplicativo Provedor de Recursos do Conector de Serviço do Azure. Selecione o aplicativo e clique em Selecionar. Selecione Avançar.
- Selecione Revisar + atribuir. Aguarde alguns segundos para que a atribuição de função seja concluída.
Depois, execute os seguintes comandos para criar uma conexão entre o cluster do AKS e o Banco de Dados SQL usando a ID de carga de trabalho do Microsoft Entra com o Conector de Serviço. Para obter mais informações, consulte Criar uma conexão de serviço no AKS com o Conector de Serviço (versão prévia).
# Register the Service Connector and Kubernetes Configuration resource providers
az provider register --namespace Microsoft.ServiceLinker --wait
az provider register --namespace Microsoft.KubernetesConfiguration --wait
# Install the Service Connector passwordless extension
az extension add --name serviceconnector-passwordless --upgrade --allow-preview true
# Retrieve the AKS cluster and Azure SQL Server resource IDs
export AKS_CLUSTER_RESOURCE_ID=$(az aks show \
--resource-group $RESOURCE_GROUP_NAME \
--name $CLUSTER_NAME \
--query id \
--output tsv)
export AZURE_SQL_SERVER_RESOURCE_ID=$(az sql server show \
--resource-group $RESOURCE_GROUP_NAME \
--name $SQL_SERVER_NAME \
--query id \
--output tsv)
# Create a user-assigned managed identity used for workload identity
export USER_ASSIGNED_IDENTITY_NAME=workload-identity-uami
az identity create \
--resource-group ${RESOURCE_GROUP_NAME} \
--name ${USER_ASSIGNED_IDENTITY_NAME}
# Retrieve the user-assigned managed identity resource ID
export UAMI_RESOURCE_ID=$(az identity show \
--resource-group ${RESOURCE_GROUP_NAME} \
--name ${USER_ASSIGNED_IDENTITY_NAME} \
--query id \
--output tsv)
# Create a service connection between your AKS cluster and your SQL database using Microsoft Entra Workload ID
az aks connection create sql \
--connection akssqlconn \
--client-type java \
--source-id $AKS_CLUSTER_RESOURCE_ID \
--target-id $AZURE_SQL_SERVER_RESOURCE_ID/databases/$DB_NAME \
--workload-identity $UAMI_RESOURCE_ID
Observação
Recomendamos usar a ID de carga de trabalho do Microsoft Entra para acesso seguro ao Banco de Dados SQL do Azure sem usar a autenticação SQL. Se você precisar usar a autenticação SQL, ignore as etapas anteriores nesta seção e use o nome de usuário e a senha para se conectar ao Banco de Dados SQL do Azure.
Criar a conta de serviço e o segredo pelo Conector de Serviço
Para se autenticar no Banco de Dados SQL do Azure, você precisa que a conta de serviço e o segredo sejam criados pelo Service Connector. Siga as instruções na seção Atualizar seu contêiner do Tutorial: conectar um aplicativo AKS ao Banco de Dados SQL do Azure. Use a opção Criar uma implantação diretamente usando o snippet de código de exemplo do YAML fornecido e siga as etapas a seguir:
Nas seções destacadas no YAML de implantação do Kubernetes de exemplo, copie os valores de
serviceAccountName
esecretRef.name
, conforme mostrado no exemplo a seguir:serviceAccountName: <service-account-name> containers: - name: raw-linux envFrom: - secretRef: name: <secret-name>
Use os comandos a seguir para definir variáveis de ambiente. Substitua
<service-account-name>
e<secret-name>
pelos valores que você copiou na etapa anterior.export SERVICE_ACCOUNT_NAME=<service-account-name> export SECRET_NAME=<secret-name>
Esses valores são usados na próxima seção para implantar o aplicativo Liberty no cluster do AKS.
Observação
O segredo criado pelo Conector de Serviço contém a AZURE_SQL_CONNECTIONSTRING
, que é uma cadeia de conexão sem senha para o Banco de Dados SQL do Azure. Para obter mais informações, consulte o valor de exemplo na seção Autenticação de identidade gerenciada atribuída pelo usuário de Integrar o Banco de Dados SQL do Azure ao Conector de Serviço.
Agora que você configurou o banco de dados e o cluster do AKS, você pode continuar preparando o AKS para hospedar seu aplicativo Open Liberty.
Configurar e implantar um aplicativo de exemplo
Siga as etapas nesta seção para implantar o aplicativo de exemplo no runtime do Liberty. Essas etapas usam o Maven.
Fazer check-out do aplicativo
Clone o código de exemplo para este artigo. O exemplo está no GitHub.
Há alguns exemplos no repositório. Este artigo usa java-app. Execute os seguintes comandos para obter a amostra:
git clone https://github.com/Azure-Samples/open-liberty-on-aks.git
cd open-liberty-on-aks
export BASE_DIR=$PWD
git checkout 20241107
Se você vir uma mensagem sobre estar no estado "HEAD desanexado", poderá ignorá-la com segurança. A mensagem significa apenas que você fez check-out de uma marca.
Aqui está a estrutura de arquivos do aplicativo, com arquivos e diretórios importantes:
java-app
├─ src/main/
│ ├─ aks/
│ │ ├─ openlibertyapplication-agic-passwordless-db.yaml
│ ├─ docker/
│ │ ├─ Dockerfile
│ │ ├─ Dockerfile-wlp
│ ├─ liberty/config/
│ │ ├─ server.xml
│ ├─ java/
│ ├─ resources/
│ ├─ webapp/
├─ pom.xml
├─ pom-azure-identity.xml
Os diretórios java, resources e webapp contêm o código-fonte do aplicativo de exemplo. O código declara e usa uma fonte de dados chamada jdbc/JavaEECafeDB
.
No diretório aks, o arquivo openlibertyapplication-agic-passwordless-db.yaml é usado para implantar a imagem do aplicativo com a conexão sem senha e AGIC para o Banco de Dados SQL do Azure. Este artigo pressupõe que você use esse arquivo.
No diretório docker, há dois arquivos para criar a imagem do aplicativo com o Open Liberty ou o WebSphere Liberty.
No diretório liberty/config, o arquivo server.xml é usado para configurar a conexão de banco de dados para o cluster do Open Liberty e do WebSphere Liberty. Ele define uma variável azure.sql.connectionstring
usada para se conectar ao Banco de Dados SQL do Azure.
O arquivo pom.xml é o arquivo POM (modelo de objeto de projeto) do Maven que contém as informações de configuração do projeto. O arquivo pom-azure-identity.xml declara uma dependência em azure-identity
. Esse arquivo é usado para autenticar nos serviços do Azure usando o Microsoft Entra ID.
Observação
Esse exemplo usa a biblioteca azure-identity
para autenticar no Banco de Dados SQL do Azure usando a autenticação do Microsoft Entra. Se você precisar usar a autenticação SQL em seu aplicativo Liberty, consulte Conexões de banco de dados relacional com o JDBC.
Compilar o projeto
Agora que você reuniu as propriedades necessárias, crie o aplicativo. O arquivo POM do projeto lê muitas variáveis do ambiente. Como parte do build do Maven, essas variáveis são usadas para preencher valores nos arquivos YAML localizados em src/main/aks. Você poderá fazer algo semelhante para seu aplicativo fora do Maven se preferir.
cd $BASE_DIR/java-app
# The following variables are used for deployment file generation into the target.
export LOGIN_SERVER=${LOGIN_SERVER}
export SC_SERVICE_ACCOUNT_NAME=${SERVICE_ACCOUNT_NAME}
export SC_SECRET_NAME=${SECRET_NAME}
export INGRESS_TLS_SECRET=${INGRESS_TLS_SECRET}
mvn clean install
mvn dependency:copy-dependencies -f pom-azure-identity.xml -DoutputDirectory=target/liberty/wlp/usr/shared/resources
Testar o projeto localmente
Execute e teste o projeto localmente antes de implantar o Azure. Para conveniência, este artigo usa liberty-maven-plugin
. Para saber mais sobre liberty-maven-plugin
, consulte o artigo Criando um aplicativo Web com o Maven do Open Liberty.
Observação
Se você selecionou uma implantação de banco de dados "sem servidor", verifique se o banco de dados SQL não entrou no modo de pausa. Faça isso entrando no editor de consultas do banco de dados, conforme descrito em Início Rápido: Usar o editor de consultas do portal do Azure (versão prévia) para consultar o Banco de Dados SQL do Azure.
Inicie o aplicativo usando
liberty:run
.cd $BASE_DIR/java-app # The value of environment variable AZURE_SQL_CONNECTIONSTRING is read by configuration variable `azure.sql.connectionstring` in server.xml export AZURE_SQL_CONNECTIONSTRING="jdbc:sqlserver://$SQL_SERVER_NAME.database.windows.net:1433;databaseName=$DB_NAME;authentication=ActiveDirectoryDefault" mvn liberty:run
Verifique se o aplicativo funciona conforme o esperado. Você deve ver uma mensagem semelhante a
[INFO] [AUDIT ] CWWKZ0001I: Application javaee-cafe started in 18.235 seconds.
na saída do comando. Acessehttp://localhost:9080/
no navegador e verifique se o aplicativo está acessível e se todas as funções estão operantes.Pressione Ctrl+C para parar. Pressione Y se for solicitado que você encerre o trabalho em lotes.
Quando terminar, exclua a regra de firewall que permite que seu endereço IP local acesse o Banco de Dados SQL do Azure usando o seguinte comando:
az sql server firewall-rule delete \
--resource-group $RESOURCE_GROUP_NAME \
--server $SQL_SERVER_NAME \
--name AllowLocalIP
Compilar imagem para implantação do AKS
Agora você pode executar o comando az acr build
para criar a imagem, conforme mostrado no exemplo a seguir:
cd $BASE_DIR/java-app/target
az acr build \
--registry ${REGISTRY_NAME} \
--image javaee-cafe:v1 \
.
O comando az acr build
carrega os artefatos especificados no Dockerfile para a instância do Registro de Contêiner, cria a imagem e a armazena na instância do Registro de Contêiner.
Implantar o aplicativo no cluster AKS
Siga as etapas abaixo para implantar o aplicativo Liberty no cluster do AKS:
Conecte o cluster do AKS.
Cole o valor de
cmdToConnectToCluster
em um shell e execute o comando.Aplique o arquivo de implantação executando os seguintes comandos:
cd $BASE_DIR/java-app/target # Apply deployment file kubectl apply -f openlibertyapplication-agic-passwordless-db.yaml
Aguarde até que todos os pods sejam reiniciados com êxito usando o seguinte comando:
kubectl get pods --watch
Uma saída semelhante ao exemplo a seguir indica que todos os pods estão em execução:
NAME READY STATUS RESTARTS AGE javaee-cafe-cluster-agic-67cdc95bc-2j2gr 1/1 Running 0 29s javaee-cafe-cluster-agic-67cdc95bc-fgtt8 1/1 Running 0 29s javaee-cafe-cluster-agic-67cdc95bc-h47qm 1/1 Running 0 29s
Testar o aplicativo
Quando os pods estão em execução, você pode testar o aplicativo usando o endereço IP público da instância do Gateway de Aplicativo.
Execute o seguinte comando para obter e exibir o endereço IP público da instância do Gateway de Aplicativo, exposto pelo recurso de entrada criado pelo AGIC:
export APP_URL=https://$(kubectl get ingress | grep javaee-cafe-cluster-agic-ingress | cut -d " " -f14)/
echo $APP_URL
Copie a URL e abra-a no navegador para ver a página inicial do aplicativo. Se a página da Web não renderizar corretamente ou retornar um erro 502 Bad Gateway
, o aplicativo ainda está começando em segundo plano. Aguarde alguns minutos e tente novamente.
Limpar os recursos
Para evitar cobranças do Azure, limpe recursos desnecessários. Quando o cluster não for mais necessário, use o comando az group delete
para remover o grupo de recursos, o serviço de contêiner, o registro de contêiner, o banco de dados e todos os recursos relacionados:
az group delete --name $RESOURCE_GROUP_NAME --yes --no-wait
Próximas etapas
Você pode saber mais nas referências a seguir:
- Serviço de Kubernetes do Azure
- Tutorial: conectar um aplicativo do AKS ao Banco de Dados SQL do Azure (versão prévia)
- Integrar o Banco de Dados SQL do Azure com o Conector de Serviço
- Conectar-se usando a autenticação do Microsoft Entra
- Open Liberty
- Open Liberty Operator
- Configuração do servidor Open Liberty
- Plug-in do Liberty Maven
- Imagens de contêiner do Open Liberty
- Imagens de contêiner do WebSphere Liberty
Para obter mais informações sobre como implantar a família do IBM WebSphere no Azure, confira Quais são as soluções para executar a família de produtos WebSphere no Azure?.
Azure Kubernetes Service