Implementar manualmente um aplicativo Java com o Open Liberty ou o WebSphere Liberty em um cluster do Serviço Kubernetes do Azure (AKS)
Este artigo fornece orientação manual passo a passo para executar o Open/WebSphere Liberty no Azure.
Especificamente, este artigo explica como realizar as seguintes tarefas:
- Execute seu aplicativo Java, Java EE, Jakarta EE ou MicroProfile no tempo de execução do Open Liberty ou WebSphere Liberty.
- Crie a imagem do Docker do aplicativo usando
az acr build
imagens de contêiner do Liberty. - Implante o aplicativo em contêiner em um cluster do Serviço Kubernetes do Azure (AKS) usando o Operador Liberty.
O Liberty Operator simplifica a implantação e o gerenciamento de aplicativos executados em clusters Kubernetes. Com o Open Liberty Operator ou WebSphere Liberty Operator, você também pode executar operações mais avançadas, como a coleta de rastreamentos e dumps.
Para obter uma solução mais automatizada que acelera sua jornada para o AKS, consulte Implementar um aplicativo Java com o Open Liberty/WebSphere Liberty em um cluster do Serviço Kubernetes do Azure (AKS).
Para obter mais informações sobre o Open Liberty, consulte a página do projeto Open Liberty. Para obter mais informações sobre o IBM WebSphere Liberty, consulte a página do produto WebSphere Liberty.
Este artigo destina-se a ajudá-lo a chegar rapidamente à implantação. Antes de ir para a produção, você deve explorar Tuning Liberty.
Se você estiver interessado em fornecer comentários ou trabalhar em estreita colaboração em seus cenários de migração com a equipe de engenharia que desenvolve soluções WebSphere on Azure, preencha esta breve pesquisa sobre migração do WebSphere e inclua suas informações de contato. A equipe de gerentes de programa, arquitetos e engenheiros entrará prontamente em contato com você para iniciar uma estreita colaboração.
Pré-requisitos
- Uma subscrição do Azure. Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
- Prepare uma máquina local com Windows, macOS ou Linux instalado.
- Instale a CLI do Azure 2.61.0 ou superior para executar comandos da CLI do Azure.
- Entre com a CLI do Azure usando o comando az login . Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Consulte Entrar no Azure com a CLI do Azure para obter outras opções de entrada.
- Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre extensões, consulte Usar e gerenciar extensões com a CLI do Azure.
- Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.
- Instale uma implementação Java Standard Edition (SE), versão 17 (por exemplo, Eclipse Open J9).
- Instale o Maven versão 3.5.0 ou posterior.
- Verifique se o Git está instalado.
- Certifique-se de que lhe foi atribuída a função ou as
Owner
Contributor
funções eUser Access Administrator
na subscrição. Você pode verificar a atribuição seguindo as etapas em Listar atribuições de função do Azure usando o portal do Azure.
Iniciar sessão no Azure
Se você ainda não fez isso, entre em sua assinatura do Azure usando o comando az login e siga as instruções na tela.
az login
Nota
Você pode executar a maioria dos comandos da CLI do Azure no PowerShell da mesma forma que no Bash. A diferença existe apenas quando se utilizam variáveis. Nas seções a seguir, a diferença é abordada em guias diferentes quando necessário.
Se você tiver vários locatários do Azure associados às suas credenciais do Azure, deverá especificar em qual locatário deseja entrar. Você pode fazer isso com a --tenant
opção. Por exemplo, az login --tenant contoso.onmicrosoft.com
.
Criar um grupo de recursos
Um grupo de recursos do Azure é um grupo lógico, no qual os recursos do Azure são implementados e geridos.
Crie um grupo de recursos chamado java-liberty-project
usando o comando az group create no eastus2
local. Esse grupo de recursos é usado posteriormente para criar a instância do Registro de Contêiner do Azure e o cluster AKS.
export RESOURCE_GROUP_NAME=java-liberty-project
az group create --name $RESOURCE_GROUP_NAME --location eastus2
Criar uma instância do Registro de Contêiner
Use o comando az acr create para criar a instância do Container Registry. O exemplo a seguir cria uma instância do Container Registry chamada youruniqueacrname
. Certifique-se de que youruniqueacrname
é exclusivo no Azure.
Nota
Este artigo usa o mecanismo de autenticação sem senha recomendado para o Registro de contêiner. Ainda é possível usar o nome de usuário e a senha depois docker login
de usar az acr credential show
para obter o nome de usuário e a senha. Usar nome de usuário e senha é menos seguro do que a autenticação sem senha.
export REGISTRY_NAME=youruniqueacrname
az acr create \
--resource-group $RESOURCE_GROUP_NAME \
--name $REGISTRY_NAME \
--sku Basic
Após um curto período de tempo, você verá uma saída JSON que contém as seguintes linhas:
"provisioningState": "Succeeded",
"publicNetworkAccess": "Enabled",
"resourceGroup": "java-liberty-project",
Conectar-se à instância do Registro de Contêiner
Você precisa entrar na instância do Registro de Contêiner antes de enviar uma imagem por push para ela. Use os seguintes comandos para verificar a conexão:
export LOGIN_SERVER=$(az acr show \
--name $REGISTRY_NAME \
--query 'loginServer' \
--output tsv)
az acr login --name $REGISTRY_NAME
Você deve ver Login Succeeded
no final da saída do comando se você está conectado à instância do Registro de contêiner com êxito.
Criar um cluster do AKS
Utilize o comando az aks create para criar um cluster AKS. O exemplo a seguir cria um cluster nomeado myAKSCluster
com um nó. Este comando leva vários minutos para ser concluído.
export CLUSTER_NAME=myAKSCluster
az aks create \
--resource-group $RESOURCE_GROUP_NAME \
--name $CLUSTER_NAME \
--node-count 1 \
--generate-ssh-keys \
--enable-managed-identity
Após alguns minutos, o comando conclui e retorna informações formatadas em JSON sobre o cluster, incluindo a seguinte saída:
"nodeResourceGroup": "MC_java-liberty-project_myAKSCluster_eastus2",
"privateFqdn": null,
"provisioningState": "Succeeded",
"resourceGroup": "java-liberty-project",
Anexar a instância do Registro de Contêiner ao cluster AKS
Execute o comando az aks update para anexar a instância do Registro de Contêiner ao cluster AKS para que o cluster AKS seja autenticado para extrair imagens da instância do Registro de Contêiner, conforme mostrado no exemplo a seguir:
az aks update \
--resource-group $RESOURCE_GROUP_NAME \
--name $CLUSTER_NAME \
--attach-acr $REGISTRY_NAME
Conectar-se ao cluster AKS
Para gerenciar um cluster Kubernetes, use kubectl, o cliente de linha de comando do Kubernetes. Para instalar kubectl
localmente, use o comando az aks install-cli , conforme mostrado no exemplo a seguir:
az aks install-cli
Para configurar kubectl
para se ligar ao cluster do Kubernetes, utilize o comando az aks get-credentials. Este comando baixa credenciais e configura a CLI do Kubernetes para usá-las.
az aks get-credentials \
--resource-group $RESOURCE_GROUP_NAME \
--name $CLUSTER_NAME \
--overwrite-existing \
--admin
Nota
O comando acima usa o local padrão para o arquivo de configuração do Kubernetes, que é ~/.kube/config
. Você pode especificar um local diferente para o arquivo de configuração do Kubernetes usando --file
o .
Para verificar a ligação ao cluster, utilize o comando kubectl get para devolver uma lista de nós do cluster.
kubectl get nodes
A saída de exemplo seguinte mostra o nó único criado nos passos anteriores. Verifique se o status do nó está Pronto:
NAME STATUS ROLES AGE VERSION
aks-nodepool1-xxxxxxxx-yyyyyyyyyy Ready <none> 76s v1.29.9
Criar uma Base de Dados SQL do Azure
Nesta seção, você cria um banco de dados único do Banco de Dados SQL do Azure para uso 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 seu servidor do Banco de Dados SQL do Azure.
export SQL_SERVER_NAME=<your-unique-sql-server-name>
export DB_NAME=demodb
Execute o seguinte comando em seu terminal para criar um único banco de dados 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, consulte Guia de início rápido: criar um único banco de dados - Banco de Dados SQL do Azure.
export ENTRA_ADMIN_NAME=$(az ad signed-in-user show --query userPrincipalName --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 sua máquina local se conecte ao banco de dados para testes locais 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
Nota
Você cria um servidor SQL do Azure com a autenticação SQL desabilitada por considerações de segurança. Somente o Microsoft Entra ID é usado para autenticar no servidor. Se você precisar habilitar a autenticação SQL, consulte az sql server create para obter mais informações.
Criar uma conexão de serviço no AKS com o Service Connector
Execute os comandos a seguir para criar uma conexão entre o cluster AKS e o banco de dados SQL usando o ID de carga de trabalho do Microsoft Entra com o Service Connector. Para obter mais informações, consulte Criar uma conexão de serviço no AKS com o Service Connector (visualização).
# 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
Nota
É recomendável usar a ID de Carga de Trabalho do Microsoft Entra para acesso seguro ao seu Banco de Dados SQL do Azure sem usar a autenticação SQL. Se você precisar usar a autenticação SQL, ignore as etapas acima nesta seção e use o nome de usuário e a senha para se conectar ao Banco de Dados SQL do Azure.
Obter conta servcie e segredo criado pelo Service Connector
Para autenticar no Banco de Dados SQL do Azure, você precisa obter a conta de serviço e o segredo criados pelo Service Connector. Siga a seção Atualizar seu contêiner. Tome a opção Criar diretamente uma implantação usando o trecho de código de exemplo YAML fornecido e execute as seguintes etapas:
Nas seções destacadas no exemplo de implantação do Kubernetes YAML, copie os
serviceAccountName
valores esecretRef.name
, conforme mostrado no exemplo a seguir:serviceAccountName: <service-account-name> containers: - name: raw-linux envFrom: - secretRef: name: <secret-name>
Substitua
<service-account-name>
e<secret-name>
pelos valores copiados na etapa anterior para definir as seguintes variáveis de ambiente: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 AKS.
Nota
O segredo criado pelo Service Connector contém o AZURE_SQL_CONNECTIONSTRING
, que é uma cadeia de conexão sem senha para o Banco de Dados SQL do Azure. Consulte o valor de exemplo da autenticação de identidade gerenciada atribuída pelo usuário para obter mais informações.
Instalar o Open Liberty Operator
Nesta seção, você instala o Open Liberty Operator no cluster AKS para hospedar o aplicativo Liberty.
Instale o Open Liberty Operator executando os seguintes comandos:
# Install cert-manager Operator
CERT_MANAGER_VERSION=v1.11.2
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/${CERT_MANAGER_VERSION}/cert-manager.yaml
# Install Open Liberty Operator
export OPERATOR_VERSION=1.4.0
mkdir -p overlays/watch-all-namespaces
wget https://raw.githubusercontent.com/OpenLiberty/open-liberty-operator/main/deploy/releases/${OPERATOR_VERSION}/kustomize/overlays/watch-all-namespaces/olo-all-namespaces.yaml -q -P ./overlays/watch-all-namespaces
wget https://raw.githubusercontent.com/OpenLiberty/open-liberty-operator/main/deploy/releases/${OPERATOR_VERSION}/kustomize/overlays/watch-all-namespaces/cluster-roles.yaml -q -P ./overlays/watch-all-namespaces
wget https://raw.githubusercontent.com/OpenLiberty/open-liberty-operator/main/deploy/releases/${OPERATOR_VERSION}/kustomize/overlays/watch-all-namespaces/kustomization.yaml -q -P ./overlays/watch-all-namespaces
mkdir base
wget https://raw.githubusercontent.com/OpenLiberty/open-liberty-operator/main/deploy/releases/${OPERATOR_VERSION}/kustomize/base/kustomization.yaml -q -P ./base
wget https://raw.githubusercontent.com/OpenLiberty/open-liberty-operator/main/deploy/releases/${OPERATOR_VERSION}/kustomize/base/open-liberty-crd.yaml -q -P ./base
wget https://raw.githubusercontent.com/OpenLiberty/open-liberty-operator/main/deploy/releases/${OPERATOR_VERSION}/kustomize/base/open-liberty-operator.yaml -q -P ./base
wget https://raw.githubusercontent.com/OpenLiberty/open-liberty-operator/main/deploy/releases/${OPERATOR_VERSION}/kustomize/base/open-liberty-roles.yaml -q -P ./base
kubectl create namespace open-liberty
kubectl apply --server-side -k overlays/watch-all-namespaces
Configurar e compilar a imagem do aplicativo
Para implementar e executar seu aplicativo Liberty no cluster AKS, conteinerize seu aplicativo como uma imagem do Docker usando imagens de contêiner do Open Liberty ou imagens de contêiner do WebSphere Liberty.
Siga as etapas nesta seção para implantar o aplicativo de exemplo no tempo de execução do Liberty. Estas etapas usam o Maven.
Confira o aplicativo
Clone o código de exemplo para este guia. O exemplo está no GitHub. Existem algumas amostras no repositório. Este artigo usa o java-app
exemplo. Os arquivos importantes são mostrados a seguir.
git clone https://github.com/Azure-Samples/open-liberty-on-aks.git
cd open-liberty-on-aks
export BASE_DIR=$PWD
git checkout 20241029
Se vir uma mensagem sobre estar no estado "HEAD desanexado", é seguro ignorá-la. Isso significa apenas que você fez check-out de uma tag.
java-app
├─ src/main/
│ ├─ aks/
│ │ ├─ openlibertyapplication-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-passwordless-db.yaml é usado para implantar a imagem do aplicativo. 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 server.xml é usado para configurar a conexão do banco de dados para o cluster Open Liberty e WebSphere Liberty. Ele define uma variável azure.sql.connectionstring
que é usada para se conectar ao Banco de Dados SQL do Azure.
O arquivo pom.xml é o arquivo de modelo de objeto de projeto (POM) Maven que contém as informações de configuração para o projeto. O arquivo pom-azure-identity.xml declara azure-identity
dependência, que é usado para autenticar nos serviços do Azure usando a ID do Microsoft Entra.
Nota
Este exemplo usa azure-identity
a biblioteca para autenticar no Banco de Dados SQL do Azure usando a autenticação do Microsoft Entra, que é recomendada para considerações de segurança. Se você precisar usar a autenticação SQL em seu aplicativo Liberty, consulte Conexões de banco de dados relacional com JDBC para obter mais informações.
Compilar o projeto
Agora que você reuniu as propriedades necessárias, você pode criar o aplicativo. O arquivo POM para o projeto lê muitas variáveis do ambiente. Como parte da compilação do Maven, essas variáveis são usadas para preencher valores nos arquivos YAML localizados em src/main/aks. Você pode fazer algo semelhante para sua aplicação fora do Maven, se preferir.
cd $BASE_DIR/java-app
# The following variables are used for deployment file generation into target/
export LOGIN_SERVER=${LOGIN_SERVER}
export SC_SERVICE_ACCOUNT_NAME=${SERVICE_ACCOUNT_NAME}
export SC_SECRET_NAME=${SECRET_NAME}
mvn clean install
mvn dependency:copy-dependencies -f pom-azure-identity.xml -DoutputDirectory=target/liberty/wlp/usr/shared/resources
Teste o seu projeto localmente
Agora você pode executar e testar o projeto localmente antes de implantar no Azure. Por conveniência, use o liberty-maven-plugin
arquivo . Para saber mais sobre o , consulte Criando um aplicativo Web com o liberty-maven-plugin
Maven. Para seu aplicativo, você pode fazer algo semelhante usando qualquer outro mecanismo, como o IDE local. Você também pode considerar o uso da liberty:devc
opção destinada ao desenvolvimento com contêineres. Você pode ler mais sobre liberty:devc
nos documentos da Liberty.
Nota
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. Uma maneira de fazer isso é fazer logon no editor de consultas de banco de dados, conforme descrito em Guia de início rápido: use o editor de consultas do portal do Azure (visualização) para consultar o Banco de Dados SQL do Azure.
Inicie o aplicativo usando
liberty:run
o .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ê verá uma mensagem semelhante na
[INFO] [AUDIT] CWWKZ0003I: The application javaee-cafe updated in 1.930 seconds.
saída do comando, se for bem-sucedida. Vá parahttp://localhost:9080/
no seu navegador para verificar se o aplicativo está acessível e todas as funções estão funcionando.Pressione Ctrl+C para parar. Selecione
Y
se você está acostumado a encerrar o trabalho em lote.
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
Crie a imagem para a 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 az acr build
comando 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
Use as seguintes etapas para implantar o aplicativo Liberty no cluster AKS:
Aplique o arquivo de implantação executando os seguintes comandos:
cd $BASE_DIR/java-app/target # Apply deployment file kubectl apply -f openlibertyapplication-passwordless-db.yaml
Determine se a
OpenLibertyApplication
instância é criada executando o seguinte comando:kubectl get openlibertyapplication javaee-cafe-cluster
Você deve ver uma saída semelhante ao exemplo a seguir:
NAME IMAGE EXPOSED RECONCILED RESOURCESREADY READY WARNING AGE javaee-cafe-cluster jiangma102924acr.azurecr.io/javaee-cafe:v1 True True True 57s
Determine se a implantação criada pelo operador está pronta executando o seguinte comando:
kubectl get deployment javaee-cafe-cluster --watch
Você deve ver uma saída semelhante ao exemplo a seguir:
NAME READY UP-TO-DATE AVAILABLE AGE javaee-cafe-cluster 0/3 3 0 20s
Aguarde até ver
3/3
sob aREADY
coluna e3
sob aAVAILABLE
coluna e, em seguida, use Ctrl+C para parar o processo dekubectl
observação.
Testar a aplicação
Quando o aplicativo é executado, um serviço de balanceador de carga do Kubernetes expõe o front-end do aplicativo à Internet. Este processo pode demorar algum tempo a concluir.
Para monitorar o progresso, use o comando kubectl get service com o --watch
argumento, conforme mostrado no exemplo a seguir:
kubectl get service javaee-cafe-cluster --watch
Você deve ver uma saída semelhante ao exemplo a seguir:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
javaee-cafe-cluster LoadBalancer 10.0.251.169 52.152.189.57 80:31732/TCP 68s
Depois que o endereço EXTERNAL-IP mudar de pendente para um endereço IP público real, use Ctrl+C para interromper o kubectl
processo de monitoramento.
Se tiver passado algum tempo entre a execução das etapas nesta seção e a anterior, verifique se o banco de dados está ativo, se necessário. Consulte a nota anterior sobre a pausa do banco de dados.
Abra um navegador da Web para o endereço IP externo do seu serviço (52.152.189.57
para o exemplo acima) para ver a página inicial do aplicativo. Se a página não estiver carregada corretamente, é porque o aplicativo está iniciando. Você pode esperar um pouco e atualizar a página mais tarde. Você deve ver o nome do pod das réplicas do seu aplicativo exibido no canto superior esquerdo da página. Aguarde alguns minutos e atualize a página para ver um nome de pod diferente exibido devido ao balanceamento de carga fornecido pelo cluster AKS.
Nota
Atualmente, o aplicativo não usa HTTPS. Recomendamos que você habilite o TLS com seus próprios certificados. Para obter mais informações, consulte Usar TLS com um controlador de entrada no Serviço Kubernetes do Azure (AKS).
Clean up resources (Limpar recursos)
Para evitar cobranças do Azure, você deve limpar 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óximos passos
Você pode aprender mais com as referências usadas neste guia:
- Azure Kubernetes Service
- Tutorial: Conectar um aplicativo AKS ao Banco de Dados SQL do Azure (visualização)
- Integrar o Banco de Dados SQL do Azure com o Service Connector
- Conectar-se usando a autenticação do Microsoft Entra
- Liberdade Aberta
- Operador Open Liberty
- Abrir Configuração do Liberty Server
- Liberty Maven Plugin
- Abrir imagens do Liberty Container
- Imagens do WebSphere Liberty Container
Para incorporar o Cache Redis do Azure em um aplicativo Java, consulte Usar o Cache do Azure para Redis em Java com o cliente Redisson Redis.
Para explorar opções para executar produtos WebSphere no Azure, consulte Quais são as soluções para executar a família de produtos WebSphere no Azure?