Tutorial: implantar um aplicativo em Aplicativos Spring do Azure e conectá-lo ao Servidor Flexível do Banco de Dados do Azure para MySQL usando o Conector de Serviço
Neste tutorial, você concluirá as seguintes tarefas usando o portal do Azure ou a CLI do Azure. Ambos os métodos são explicados nos procedimentos a seguir.
- Provisionar uma instância do Azure Spring Apps
- Compilar e implantar aplicativos em Aplicativos Spring do Azure
- Integrar Aplicativos Spring do Azure ao Banco de Dados do Azure para MySQL com o Conector de Serviço
Aviso
A Microsoft recomenda usar o fluxo de autenticação mais seguro disponível. O fluxo de autenticação descrito neste procedimento exige um grau muito alto de confiança no aplicativo e traz riscos que não estão presentes em outros fluxos. Você só deve usar esse fluxo quando outros fluxos mais seguros, como identidades gerenciadas, não forem viáveis.
Pré-requisitos
- Instale o JDK 8 ou o JDK 11
- Inscrever-se em uma assinatura do Azure
- Instale a CLI do Azure versão 2.0.67 ou superior e instale a extensão dos Aplicativos Spring do Azure com o comando:
az extension add --name spring
Provisionar uma instância do Azure Spring Apps
O procedimento a seguir usa a extensão da CLI do Azure para provisionar uma instância do Azure Spring Apps.
Atualize a CLI do Azure com a extensão dos Aplicativos Spring do Azure.
az extension update --name spring
Entre na CLI do Azure e selecione uma assinatura ativa.
az login az account list -o table az account set --subscription <Name or ID of subscription, skip if you only have 1 subscription>
Crie um grupo de recursos para conter o aplicativo e uma instância do serviço Aplicativos Spring do Azure.
az group create --name ServiceConnector-tutorial-mysqlf --location eastus
Criar uma instância do Azure Spring Apps. O nome deverá ter entre 4 e 32 caracteres e poderá conter apenas letras minúsculas, números e hifens. O primeiro caractere do nome da instância dos Aplicativos Spring do Azure deverá ser uma letra e o último caractere deverá ser uma letra ou um número.
az spring create -n my-azure-spring -g ServiceConnector-tutorial-mysqlf
Criar um Servidor Flexível do Banco de Dados do Azure para MySQL
Crie uma instância do Servidor Flexível MySQL. No comando abaixo, substitua <admin-username>
e <admin-password>
pelas credenciais que você escolher para criar um usuário administrador para o Servidor Flexível do MySQL. O nome do usuário administrador não pode ser azure_superuser, azure_pg_admin, admin, administrator, root, guest nem public. Ele não pode começar com pg_ . A senha deverá conter de 8 a 128 caracteres de três das seguintes categorias: letras maiúsculas, letras minúsculas, números e caracteres não alfanuméricos (por exemplo, !
, #
, %
). A senha não poderá conter username
.
az mysql flexible-server create \
--resource-group ServiceConnector-tutorial-mysqlf \
--name mysqlf-server \
--database-name mysqlf-db \
--admin-user <admin-username> \
--admin-password <admin-password>
O servidor é criado com os seguintes valores padrão, a menos que você os substitua manualmente:
Configuração | Valor padrão | Descrição |
---|---|---|
server-name | Gerada pelo sistema | Um nome exclusivo que identifica o Banco de Dados do Azure para o servidor MySQL. |
sku-name | GP_Gen5_2 | O nome da SKU. Segue a convenção {tipo de preço}_{geração de computação}_{vCores} em formato abreviado. O padrão é servidor Gen5 de Uso Geral com 2 vCores. Para obter mais informações sobre os preços, vá para a nossa página de preços. |
backup-retention | 7 | Quanto tempo um backup deve ser retido. A unidade é dias. |
geo-redundant-backup | Desabilitado | Indica se os backups com redundância geográfica devem ser habilitados para este servidor ou não. |
local | westus2 | O local do Azure para o servidor. |
ssl-enforcement | habilitado | Se o SSL deve ser habilitado para este servidor. |
storage-size | 5120 | A capacidade de armazenamento do servidor (a unidade é megabytes). |
version | 5.7 | A versão principal do MySQL. |
Observação
O SKU Standard_B1ms é usado por padrão. Consulte Preços do Banco de Dados do Azure para MySQL para obter detalhes de preços.
Observação
Para obter mais informações sobre o comando az mysql flexible-server create
e seus parâmetros adicionais, consulte a documentação da CLI do Azure.
Compilar e implantar o aplicativo
Crie o aplicativo com o ponto de extremidade público atribuído. Se você selecionou o Java versão 11 ao gerar o projeto dos Aplicativos Spring do Azure, inclua a opção
--runtime-version=Java_11
.az spring app create -n hellospring -s my-azure-spring -g ServiceConnector-tutorial-mysqlf --assign-endpoint true
Execute o comando
az spring connection create
para conectar o aplicativo implantado em Aplicativos Spring do Azure ao banco de dados do Servidor Flexível MySQL. Substitua os espaços reservados abaixo pelas suas próprias informações.az spring connection create mysql-flexible \ --resource-group ServiceConnector-tutorial-mysqlf \ --service my-azure-spring \ --app hellospring \ --target-resource-group ServiceConnector-tutorial-mysqlf \ --server mysqlf-server \ --database mysqlf-db \ --secret name=<admin-username> secret=<admin-secret>
Configuração Descrição --resource-group
O nome do grupo de recursos que contém o aplicativo hospedado pelos Aplicativos Spring do Azure. --service
O nome do recurso dos Aplicativos de Azure Spring. --app
O nome do aplicativo hospedado pelos Aplicativos de Azure Spring que se conecta ao serviço de destino. --target-resource-group
O nome do grupo de recursos com a conta de armazenamento. --server
O Servidor Flexível MySQL que você quer conectar --database
O nome do banco de dados criado anteriormente. --secret name
O nome de usuário do Servidor Flexível MySQL. --secret
A senha do Servidor Flexível MySQL. Observação
Caso veja a mensagem de erro "A assinatura não está registrada para usar o Microsoft.ServiceLinker", execute
az provider register -n Microsoft.ServiceLinker
para registrar o provedor de recursos do Conector de Serviço e execute o comando de conexão novamente.Clonar o código de exemplo
git clone https://github.com/Azure-Samples/serviceconnector-springcloud-mysql-springboot.git
Compile o projeto usando o Maven.
cd serviceconnector-springcloud-mysql-springboot mvn clean package -DskipTests
Implante o arquivo JAR para o aplicativo
target/demo-0.0.1-SNAPSHOT.jar
.az spring app deploy \ --name hellospring \ --service my-azure-spring \ --resource-group ServiceConnector-tutorial-mysqlf \ --artifact-path target/demo-0.0.1-SNAPSHOT.jar
Consulte o status do aplicativo após a implantação com o comando a seguir.
az spring app list --resource-group ServiceConnector-tutorial-mysqlf --service my-azure-spring --output table
Você verá a seguinte saída:
Name Location ResourceGroup Public Url Production Deployment Provisioning State CPU Memory Running Instance Registered Instance Persistent Storage Bind Service Registry Bind Application Configuration Service ----------- ---------- -------------------------------- --------------------------------------------------------- ----------------------- -------------------- ----- -------- ------------------ --------------------- -------------------- ----------------------- ---------------------------------------- hellospring eastus ServiceConnector-tutorial-mysqlf https://my-azure-spring-hellospring.azuremicroservices.io default Succeeded 1 1Gi 1/1 0/1 - -
Próximas etapas
Siga os tutoriais listados abaixo para saber mais sobre o Conector de Serviço.