Tutorial: Implementar uma aplicação no Azure Spring Apps e ligá-la ao Base de Dados do Azure para MySQL Servidor Flexível com o Service Connector
Neste tutorial, irá concluir as seguintes tarefas com o portal do Azure ou a CLI do Azure. Ambos os métodos são explicados nos seguintes procedimentos.
- Aprovisionar uma instância do Azure Spring Apps
- Criar e implementar aplicações no Azure Spring Apps
- Integrar o Azure Spring Apps com Base de Dados do Azure para MySQL com o Service Connector
Pré-requisitos
- Instalar o JDK 8 ou o JDK 11
- Inscrever-se numa subscrição do Azure
-
Instale a versão 2.0.67 ou superior da CLI do Azure e instale a extensão do Azure Spring Apps com o comando:
az extension add --name spring
Aprovisionar uma instância do Azure Spring Apps
O procedimento seguinte utiliza a extensão da CLI do Azure para aprovisionar uma instância do Azure Spring Apps.
Atualize a CLI do Azure com a extensão do Azure Spring Apps.
az extension update --name spring
Inicie sessão na CLI do Azure e escolha a sua subscrição 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 a sua aplicação e uma instância do serviço Azure Spring Apps.
az group create --name ServiceConnector-tutorial-mysqlf --location eastus
Criar uma instância do Azure Spring Apps. O nome tem de ter entre 4 e 32 carateres de comprimento e só pode conter letras minúsculas, números e hífenes. O primeiro caráter do nome da instância do Azure Spring Apps tem de ser uma letra e o último caráter tem de ser uma letra ou um número.
az spring create -n my-azure-spring -g ServiceConnector-tutorial-mysqlf
Criar um Servidor Flexível Base de Dados do Azure para MySQL
Crie uma instância do Servidor Flexível mySQL. No comando abaixo, substitua <admin-username>
e <admin-password>
por credenciais à sua escolha para criar um utilizador administrador para o servidor flexível MySQL. O nome de utilizador administrador não pode ser azure_superuser, azure_pg_admin, administrador, administrador, raiz, convidado ou público. Não pode começar com pg_. A palavra-passe tem de conter 8 a 128 carateres de três das seguintes categorias: letras maiúsculas em inglês, letras minúsculas inglesas, números e carateres não alfanuméricos (por exemplo, !
, , #
%
). A palavra-passe não pode 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 predefinidos, a menos que os substitua manualmente:
Definição | Valor predefinido | Descrição |
---|---|---|
server-name | Sistema gerado | Um nome exclusivo que identifica a sua Base de Dados do Azure para o servidor MySQL. |
sku-name | GP_Gen5_2 | O nome do SKU. Segue a convenção {pricing tier}_{compute generation}_{vCores} em abreviatura. A predefinição é um servidor Fins Gerais Gen5 com 2 vCores. Para obter mais informações sobre os preços, aceda à nossa página de preços. |
backup-retention | 7 | Quando tempo se deve reter uma cópia de segurança. A unidade é dias. |
geo-redundant-backup | Desativado | Se as cópias de segurança georredundantes devem estar ativadas para este servidor ou não. |
localização | westus2 | A localização do Azure para o servidor. |
ssl-enforcement | Ativado | Se o SSL deve ser ativado ou não para este servidor. |
storage-size | 5120 | A capacidade de armazenamento do servidor (a unidade é megabytes). |
versão | 5.7 | A versão principal do MySQL. |
Nota
Standard_B1ms SKU é utilizado por predefinição. Veja Base de Dados do Azure para MySQL preços para obter detalhes de preços.
Nota
Para obter mais informações sobre o comando e os az mysql flexible-server create
respetivos parâmetros adicionais, veja a documentação da CLI do Azure.
Criar e implementar a aplicação
Crie a aplicação com o ponto final público atribuído. Se selecionou Java versão 11 ao gerar o projeto do Azure Spring Apps, inclua o
--runtime-version=Java_11
comutador.az spring app create -n hellospring -s my-azure-spring -g ServiceConnector-tutorial-mysqlf --assign-endpoint true
Execute o
az spring connection create
comando para ligar a aplicação implementada no Azure Spring Apps à base de dados mySQL Flexible Server. Substitua os marcadores de posição 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>
Definições Descrição --resource-group
O nome do grupo de recursos que contém a aplicação alojada pelo Azure Spring Apps. --service
O nome do recurso do Azure Spring Apps. --app
O nome da aplicação alojada pelo Azure Spring Apps que se liga 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 ao qual pretende ligar --database
O nome da base de dados que criou anteriormente. --secret name
O nome de utilizador do Servidor Flexível mySQL. --secret
A palavra-passe do Servidor Flexível mySQL. Nota
Se vir a mensagem de erro "A subscrição não está registada para utilizar o Microsoft.ServiceLinker", execute
az provider register -n Microsoft.ServiceLinker
para registar o fornecedor de recursos do Service Connector e execute novamente o comando de ligação.Clonar código de exemplo
git clone https://github.com/Azure-Samples/serviceconnector-springcloud-mysql-springboot.git
Crie o projeto com o Maven.
cd serviceconnector-springcloud-mysql-springboot mvn clean package -DskipTests
Implemente o ficheiro JAR para a aplicação
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
Consultar o estado da aplicação após a implementação com o seguinte comando.
az spring app list --resource-group ServiceConnector-tutorial-mysqlf --service my-azure-spring --output table
Deverá ver o seguinte resultado:
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 - -
Passos seguintes
Siga os tutoriais listados abaixo para saber mais sobre o Service Connector.