Partilhar via


Tutorial: Implantar um aplicativo no Azure Spring Apps e conectá-lo ao Banco de Dados do Azure para Servidor Flexível MySQL usando o Service Connector

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
  • Criar e implantar aplicativos no Azure Spring Apps
  • Integrar o Azure Spring Apps com o Banco de Dados do Azure para MySQL com o Service Connector

Aviso

A Microsoft recomenda que você use o fluxo de autenticação mais seguro disponível. O fluxo de autenticação descrito neste procedimento requer um grau muito alto de confiança no aplicativo e acarreta 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

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.

  1. Atualize a CLI do Azure com a extensão Azure Spring Apps.

    az extension update --name spring
    
  2. Entre na CLI do Azure e escolha sua 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>
    
  3. Crie um grupo de recursos para conter seu aplicativo e uma instância do serviço Azure Spring Apps.

    az group create --name ServiceConnector-tutorial-mysqlf --location eastus
    
  4. Crie uma instância do Azure Spring Apps. Seu nome deve ter entre 4 e 32 caracteres e só pode conter letras minúsculas, números e hífenes. O primeiro caractere do nome da instância do Azure Spring Apps deve ser uma letra e o último caractere deve ser uma letra ou um número.

    az spring create -n my-azure-spring -g ServiceConnector-tutorial-mysqlf
    

Criar um Banco de Dados do Azure para o Servidor Flexível MySQL

Crie uma instância do MySQL Flexible Server. No comando abaixo, substitua <admin-username> e <admin-password> por credenciais de sua escolha para criar um usuário administrador para o servidor flexível MySQL. O nome de usuário admin não pode ser azure_superuser, azure_pg_admin, admin, administrator, root, guest ou public. Não pode começar por pg_. A senha deve conter de 8 a 128 caracteres de três das seguintes categorias: letras maiúsculas em inglês, letras minúsculas em inglês, números e caracteres não alfanuméricos (por exemplo, !, , #%). A palavra-passe não pode conter usernameficheiros .

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:

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 de SKU. Segue a convenção {pricing tier}_{compute generation}_{vCores} em taquigrafia. O padrão é um servidor Gen5 de uso geral com 2 vCores. Para 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(a) Se o SSL deve ser habilitado 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 é usado por padrão. Consulte o Banco de Dados do Azure para obter os preços do MySQL para obter detalhes de preços.

Nota

Para obter mais informações sobre o az mysql flexible-server create comando e seus parâmetros adicionais, consulte a documentação da CLI do Azure.

Criar e implementar a aplicação

  1. Crie o aplicativo com o ponto de extremidade público atribuído. Se você selecionou Java versão 11 ao gerar o projeto Azure Spring Apps, inclua o --runtime-version=Java_11 switch.

    az spring app create -n hellospring -s my-azure-spring -g ServiceConnector-tutorial-mysqlf --assign-endpoint true
    
  2. Execute o az spring connection create comando para conectar o aplicativo implantado no Azure Spring Apps ao banco de dados do MySQL Flexible Server. Substitua os espaços reservados abaixo por 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ção Descrição
    --resource-group O nome do grupo de recursos que contém o aplicativo hospedado pelo Azure Spring Apps.
    --service O nome do recurso Azure Spring Apps.
    --app O nome do aplicativo hospedado pelo Azure Spring Apps 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 ao qual você deseja se conectar
    --database O nome do banco de dados criado anteriormente.
    --secret name O nome de usuário do MySQL Flexible Server.
    --secret A senha do MySQL Flexible Server.

    Nota

    Se vir a mensagem de erro "A subscrição não está registada para utilizar 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.

  3. Código de exemplo de clonagem

    git clone https://github.com/Azure-Samples/serviceconnector-springcloud-mysql-springboot.git
    
  4. Crie o projeto usando o Maven.

    cd serviceconnector-springcloud-mysql-springboot
    mvn clean package -DskipTests 
    
  5. 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
    
  6. Consulte o status do aplicativo após a implantaçã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                    -                     -
    
    

Próximos passos

Siga os tutoriais listados abaixo para saber mais sobre o Service Connector.