Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Azure DevOps Server | Azure DevOps Server |Azure DevOps Server 2022 | Azure DevOps Server 2020
Use as etapas neste artigo para configurar o Servidor de DevOps do Azure com Banco de Dados SQL do Azure. Essa topologia tem mais algumas etapas em comparação com o uso de um servidor SQL local.
Pré-requisitos
| Categoria | Requerimentos |
|---|---|
| Versão do Azure DevOps Server | O Banco de Dados SQL do Azure só pode ser usado com o Azure DevOps Server 2019 e versões posteriores. |
| Ambiente de instalação | Servidor de DevOps do Azure instalado em uma VM do Azure. |
| Autenticação | A máquina virtual (VM) tem a identidade gerenciada pelo sistema habilitada, que é usada para autenticar no banco de dados SQL do Azure. |
| Associação de domínio | A VM está associada a um domínio, mas não a um grupo de trabalho. |
| Tipo de banco de dados | Os bancos de dados SQL do Azure são bancos de dados únicos. Instâncias gerenciadas e pools elásticos têm suporte no Azure DevOps Server 2022 e versões mais recentes. |
| Regras de firewall | As regras de firewall do Banco de Dados SQL do Azure permitem conexões de entrada do endereço IP ou da sub-rede onde o Azure DevOps Server está hospedado. Para fazer isso, vá para: portal do Azure>Banco de Dados SQL do Azure>Configurações>Firewalls e redes virtuais> e adicione uma nova regra para permitir o acesso do endereço IP público ou da sub-rede do Azure DevOps Server. |
| Ferramentas | - Banco de Dados SQL do Azure provisionado e acessível a partir do Azure. Registro do nome do servidor, nome do banco de dados e método de autenticação. - Azure DevOps Server 2022 em execução em seu ambiente local. - SSMS instalado na mesma máquina em que o Azure DevOps Server está instalado. |
Todos os SKUs de uso geral e Premium são suportados, bem como SKUs padrão S3 e superior. No entanto, SKUs Básicas e SKUs Padrão S2 não são suportadas.
As configurações do Azure DevOps Server que utilizam Azure SQL Database não suportam SQL Server Reporting Services na versão anterior com funcionalidades de relatórios do SQL Server Analysis Services. Em vez disso, você pode usar o Azure DevOps Analytics para relatórios e análises.
O Banco de Dados SQL do Azure não oferece suporte a procedimentos armazenados criptografados.
Configurar o Banco de Dados SQL do Azure
Configure uma identidade gerenciada em suas máquinas virtuais. Neste momento, apenas suportamos identidades geridas pelo sistema.
Você pode executar a configuração usando todos os mecanismos padrão, incluindo:
- Portal do Azure
- CLI do Azure
- modelos do Azure Resource Manager
Para configurar uma nova instância do Azure DevOps Server, crie dois bancos de dados SQL do Azure:
- AzureDevOps_Configuration
- AzureDevOps_DefaultCollection
Configure a autenticação do ID do Microsoft Entra para o seu servidor de Base de Dados SQL do Azure. Torne-se o administrador do Microsoft Entra no servidor. Você precisa de permissões de administrador no banco de dados para concluir as etapas de configuração restantes. Você pode alterar essa permissão mais tarde.
um. Execute o seguinte comando T-SQL no banco de dados principal. Substitua VMName pelo nome da máquina virtual cuja identidade gerenciada você adiciona ao banco de dados:
CREATE USER [VMName] FROM EXTERNAL PROVIDER ALTER ROLE [dbmanager] ADD MEMBER [VMName]b) Execute o seguinte comando T-SQL na configuração e em todos os bancos de dados de coleção:
CREATE USER [VMName] FROM EXTERNAL PROVIDER ALTER ROLE [db_owner] ADD MEMBER [VMName] ALTER USER [VMName] WITH DEFAULT_SCHEMA=dboSeu banco de dados agora permite que sua VM se comunique por meio da identidade gerenciada.
Observação
Caso efetue modificações na sua VM do Azure, como restaurar uma captura instantânea ou renomear a VM, siga estes passos para restabelecer a conectividade:
- Remova o usuário [VMName] do banco de dados principal e de todos os bancos de dados do Azure DevOps. Se [VMName] possui objetos de banco de dados, talvez seja necessário alterar seu proprietário para outro usuário, como DBO, e voltar após a próxima etapa.
- Execute novamente as consultas SQL declaradas anteriormente com o [VMName] atual, mesmo que ele esteja inalterado.
- Reinicie os serviços do Azure DevOps Server.
Configurar o Servidor de DevOps do Azure
Retorne ao assistente de configuração do Servidor de DevOps do Azure. Se você configurar uma nova instância, selecione Esta é uma nova implantação do Azure DevOps Server. Se atualizares ou migrares e tiveres dados existentes nos teus bancos de dados, seleciona tenho bancos de dados existentes para usar nesta implantação do Servidor do Azure DevOps.
Quando chegar à página Base de Dados no assistente de configuração, especifique a instância do servidor da Base de Dados SQL do Azure. Normalmente, a instância do servidor está na forma de SQLInstanceName.database.windows.net.
Agora você tem uma instância do Servidor de DevOps do Azure que é executada no Banco de Dados SQL do Azure.
Conectar-se a um banco de dados SQL do Azure a partir do SSMS local
Siga as seguintes etapas para se conectar a uma base de dados SQL do Azure a partir do seu SSMS local:
Exporte através do SQL Server Management Studio usando o SSMS, a partir da VM que está a executar na mesma rede virtual que um ponto de extremidade privado, do SQL para armazenamento de blobs/compartilhamento de arquivos.
Pode utilizar o assistente de exportação de aplicação de camada de dados do SQL Server Management Studio para exportar o banco de dados SQL do Azure para um ficheiro .bacpac. Você pode armazenar o arquivo .bacpac no armazenamento de blob do Azure ou no compartilhamento de arquivos.
Selecione com o botão direito do rato a Base de Dados SQL no SQL Server lógico do SSMS>Tarefas>Exportar aplicação do nível de dados.
Selecione Avançar.
Selecione o local para armazenar o arquivo BACPAC.
Selecione Fechar.
Os pacotes de DAC estão localizados aqui: C:\Users\{sample-user-name}\OneDrive - Microsoft\Documents\SQL Server Management Studio\DAC Packages.
Conectar o Banco de Dados SQL do Azure a partir do Azure DevOps Server 2022
Conectar o Banco de Dados SQL do Azure ao Azure DevOps Server 2022 (local) envolve configurar o acesso, garantir a conectividade e usar as credenciais apropriadas. Siga as etapas a seguir para conectar o Banco de Dados SQL do Azure a partir do Azure DevOps Server 2022.
Conectar-se ao Banco de Dados SQL do Azure
Obter detalhes de conexão do Banco de Dados SQL do Azure:
- Nome do servidor:
<your-server-name>.database.windows.net - Nome do banco de dados:
<your-database-name> - Método de autenticação: Autenticação do SQL Server (nome de usuário/senha) ou autenticação do Microsoft Entra ID.
- Nome do servidor:
Conectar usando o SQL Server Management Studio (SSMS): a. Abra o SQL Server Management Studio na máquina onde o Azure DevOps Server está instalado. b) Conectar-se ao Banco de Dados SQL do Azure: c. Inicie o SSMS. d. Na janela Conectar ao Servidor:
- Digite o nome do servidor:
<your-server-name>.database.windows.net - Escolha Autenticação: Autenticação do SQL Server.
- Introduza o seu Nome de Utilizador e Palavra-passe.
- Selecione Conectar. Uma vez conectado, o Banco de Dados SQL do Azure é listado no Pesquisador de Objetos no SSMS.
- Digite o nome do servidor:
Testar conectividade: Execute uma consulta ou comando no SSMS:
SELECT @@VERSION;Essa consulta retorna a versão do SQL Server do Banco de Dados SQL do Azure, confirmando que a conexão foi bem-sucedida.
Usar conexão no Servidor de DevOps do Azure: Depois de verificar a conectividade do SSMS, você pode usar essa conexão no Servidor de DevOps do Azure para várias tarefas, como:
- Implantações automatizadas: configure pipelines de liberação no Servidor de DevOps do Azure para implantar alterações no banco de dados.
- Migração de dados: use scripts SQL ou ferramentas de dados integradas ao Azure DevOps Server.
- Integração contínua: integre alterações de banco de dados em seus pipelines de CI/CD.
Dica
- Seja seguro: Considere usar o Microsoft Entra ID para um acesso mais seguro.
- Gerenciar credenciais: armazene credenciais com segurança e evite codificá-las em scripts ou configurações.
- Monitor: Monitore as conexões e o uso do banco de dados para garantir a segurança e o desempenho.
Conecte o Banco de Dados SQL do Azure a partir do Azure DevOps Server 2022 em execução local, permitindo o gerenciamento simplificado do banco de dados e a integração com seus processos de desenvolvimento e implantação. Ajuste as configurações e medidas de segurança com base nas políticas e requisitos da sua organização.
Usar sua conexão do Banco de Dados SQL do Azure no Azure DevOps Server 2022
Preparar o Servidor de DevOps do Azure:
a. Certifique-se de ter o Azure DevOps Server 2022 instalado e configurado em seu ambiente local.</
b. Acesso ao Servidor de DevOps do Azure com permissões apropriadas para criar e gerenciar pipelines.Configurar o projeto e o repositório do Azure DevOps (se ainda não tiver sido concluído):
a. Crie um novo projeto do Azure DevOps ou use um existente.
b. Configure um repositório Git ou TFVC para armazenar suas definições de pipeline e scripts.Criar um pipeline:
a. Vá para seu projeto do Azure DevOps.
b. Selecione Pipelines>Pipelines>Nova tubulação.
c. Selecione o modelo de pipeline apropriado com base em suas necessidades. Para o Banco de Dados SQL do Azure, você pode começar com um trabalho vazio ou escolher um modelo que atenda às suas necessidades de implantação (por exemplo, Pipeline do Azure).
d. Edite o arquivo YAML do pipeline ou use o editor clássico para definir os estágios e as tarefas do pipeline.Adicionar tarefas a serem implantadas no Banco de Dados SQL do Azure:
Tarefa: Implantação do Banco de Dados do SQL Server: Use a tarefa
SqlAzureDacpacDeploymentpara implantar alterações no Banco de Dados SQL do Azure. Exemplo de trecho de YAML:steps: - task: SqlAzureDacpacDeployment@1 inputs: azureSubscription: 'YourServiceConnectionName' # Use your Azure SQL Database service connection serverName: '<your-server-name>.database.windows.net' databaseName: '<your-database-name>' deployType: 'DacpacTask' authenticationType: 'server' sqlUsername: '$(sqlUsername)' sqlPassword: '$(sqlPassword)'Substitua
<your-server-name>,<your-database-name>,$(sqlUsername)e$(sqlPassword)por valores ou variáveis apropriados.Tarefa: Consulta SQL do Azure: Use a tarefa
AzureSqlQuerypara executar consultas SQL em seu Banco de Dados SQL do Azure. Exemplo de trecho de YAML:steps: - task: AzureSqlQuery@1 inputs: azureSubscription: 'YourServiceConnectionName' # Use your Azure SQL Database service connection serverName: '<your-server-name>.database.windows.net' databaseName: '<your-database-name>' sqlUsername: '$(sqlUsername)' sqlPassword: '$(sqlPassword)' sqlQuery: 'SELECT * FROM TableName'
Gerenciar credenciais com segurança: Use as variáveis do Azure DevOps ou a integração do Azure Key Vault para gerenciar informações confidenciais, como credenciais do SQL Server (
sqlUsernameesqlPassword).Acionar e executar uma linha de processamento:
- Salve e confirme as suas alterações do pipeline.
- Acione o pipeline manualmente ou configure gatilhos (por exemplo, na confirmação de código, agendamento) de acordo com sua estratégia de implantação.
Monitorizar a execução do pipeline:
- O pipeline de monitoramento é executado no Azure DevOps para garantir que as implantações no Banco de Dados SQL do Azure sejam bem-sucedidas.
- Revise logs e resultados para solucionar quaisquer problemas durante a implantação.
Dica
- Integração com pipelines de versão: Integre seu pipeline de compilação com pipelines de liberação para cenários de implantação e aprovações mais complexos.
- Fazer alterações incrementais no banco de dados: Use ferramentas como SSDT (SQL Server Data Tools) ou migrações para gerenciar alterações incrementais no esquema do banco de dados.
- Use o controle de versão: Mantenha seus scripts SQL e alterações de banco de dados sob controle de versão para controlar as alterações e garantir a reprodutibilidade.
Ajuste configurações e tarefas com base em suas necessidades específicas de implantação e requisitos organizacionais.
Criar um backup do SQL Server
A criação de um backup do SQL Server para o Azure DevOps Server 2022 usando o Console de Administração do Servidor de DevOps do Azure envolve a definição de configurações de backup e o agendamento de backups regulares. Execute as etapas a seguir para criar um backup do SQL Server.
Pré-requisitos para backup
| Categoria | Requerimentos |
|---|---|
| Acesso | Administrador acesso ao servidor onde o Servidor de DevOps do Azure está instalado. |
| Permissões | Permissão para configurar backups e acessar o SQL Server Management Studio. |
Criar cópia de segurança
Inicie o Console de Administração do Servidor de DevOps do Azure no servidor onde o Servidor de DevOps do Azure está instalado e selecione Camada de Aplicativo>Backups Agendados>Criar Backups Agendados.
Introduza o caminho de backup da rede e, em seguida, selecione Seguinte.
Selecione os alertas de e-mail desejados e, em seguida, selecione Avançar.
Escolha um agendamento de backup com base em suas necessidades e, em seguida, selecione Avançar.
Confirme as definições de configuração e selecione Verificar.
O assistente de backups verifica se o caminho de backup existe e é um caminho de rede.
Solucionar erros
Se houver uma falha na verificação de prontidão, consulte as informações a seguir para obter ajuda com a solução de problemas.
Erro: Acesso à conta de serviço
Mensagem de erro:TF401009: The Azure DevOps service account NT AUTHORITY\LOCAL SERVICE cannot access network shares. Change to an account that can access the backup path. Este erro ocorre quando a conta de serviço é NT AUTHORITY\LOCAL SERVICE.
Solução:
Crie um usuário local com as permissões de acesso necessárias.
No Console de Administração do Servidor de DevOps do Azure, vá para a tela da Camada de Aplicativo e selecione Alterar Conta.
Altere a conta de serviço para a conta de usuário local recém-criada.
Refaça o processo de backup para criar o backup com êxito e execute novamente as verificações de preparação.
Configuração de backup bem-sucedida:
Registos de backup agendados:
Backups agendados do Console de Administração:
Erro: Arquivo de log
Exemplo de localização do ficheiro de registo:
C:\ProgramData\Microsoft\Azure DevOps\Server Configuration\Logs\Azure_DevOps_Server_Scheduled Backups_0627_192409.log
Exemplo de mensagem de erro do arquivo de log:
[7/1/2024 7:28:37 AM] [Error]``Exception Message: The backup of the file or filegroup "LeadingKey" is not permitted because it is not online. Container state: "Offline" (7). Restore status: 0. BACKUP can be performed by using the FILEGROUP or FILE clauses to restrict the selection to include only online data.``BACKUP DATABASE is terminating abnormally. (type SqlException)
Solução:
Verifique se todos os grupos de arquivos estão online antes de executar o backup.
Exemplo de LeadingKeyOffline:
Teste o processo de backup usando consultas SQL para identificar e resolver quaisquer problemas com grupos de arquivos específicos.