Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Azure DevOps Server | Azure DevOps Server |Azure DevOps Server 2022 | Azure DevOps Server 2020
Use as etapas neste artigo para configurar Azure DevOps Server com o Banco de Dados SQL do Azure. Essa topologia tem mais algumas etapas em comparação com o uso de um SQL Server local.
Pré-requisitos
| Categoria | Requisitos |
|---|---|
| Versão do Servidor do Azure DevOps | O Banco de Dados SQL do Azure só pode ser usado com Azure DevOps Server 2019 e versões posteriores. |
| Ambiente de instalação | Servidor do Azure DevOps instalado em uma VM do Azure. |
| Autenticação | A VM (máquina virtual) 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 é ingressada em um domínio, mas não em um grupo de trabalho. |
| Tipo de banco de dados | Os bancos de dados SQL do Azure são bancos de dados individuais. Há suporte para instâncias gerenciadas e pools elásticos em Azure DevOps Server 2022 e mais recente. |
| 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 em que o Servidor do Azure DevOps está hospedado. Para fazer isso, acesse: portal do Azure>Azure SQL Database>Configurações>Firewalls e redes virtuais> e adicione uma nova regra para permitir acesso a partir do endereço IP público ou sub-rede do Azure DevOps Server. |
| Ferramentas | – Banco de Dados SQL do Azure provisionado e acessível 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 no mesmo computador em que o Servidor de DevOps do Azure está instalado. |
Todos os SKUs de Uso Geral e Premium são suportados, bem como os SKUs Standard S3 e superiores. No entanto, SKUs básicos e SKUs Padrão S2 não são suportados.
As configurações do Azure DevOps Server que usam o Banco de Dados SQL do Azure não dão suporte ao SQL Server Reporting Services herdado com recursos 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 dá suporte a procedimentos armazenados criptografados.
Configurar o Banco de Dados SQL do Azure
Configure uma identidade gerenciada em suas máquinas virtuais. No momento, só oferecemos suporte a identidades gerenciadas pelo sistema.
Você pode executar a configuração usando todos os mecanismos padrão, incluindo:
Para configurar uma nova instância Azure DevOps Server, crie dois bancos de dados SQL do Azure:
- Configuração_AzureDevOps
- AzureDevOps_DefaultCollection
Configure a autenticação do Microsoft Entra ID para o servidor do Banco 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 em seu 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
Se você fizer modificações em sua VM do Azure, como restaurar um snapshot ou renomear a VM, a fim de restaurar a conectividade:
- Remova o usuário [VMName] do banco de dados principal e de todos os bancos de dados do Azure DevOps. Se [VMName] for proprietário de objetos de banco de dados, talvez seja necessário alterar o proprietário para outro usuário, como o DBO, e reverter após a próxima etapa.
- Execute novamente as consultas SQL declaradas anteriormente com o [VMName] atual, mesmo que não esteja alterado.
- Reinicie os serviços do Servidor do Azure DevOps.
Configurar Azure DevOps Server
Retorne ao assistente de configuração Azure DevOps Server. Se você configurar uma nova instância, selecione Esta é uma nova implantação do Azure DevOps Server. Se você atualizar ou migrar e tiver dados existentes em seus bancos de dados, selecione Tenho bancos de dados existentes para usar para esta implantação Azure DevOps Server.
Quando você chegar à página Banco de Dados no assistente de configuração, especifique a instância do servidor do Banco 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 Azure DevOps Server que é executada no Banco de Dados SQL do Azure.
Conectar-se a um banco de dados SQL do Azure a partir do SQL Server Management Studio local
Execute as seguintes etapas para se conectar a um banco de dados SQL do Azure do seu SSMS local:
Exporte por meio do SQL Server Management Studio usando o SSMS da VM em execução na mesma rede virtual que um ponto de extremidade privado do SQL para o armazenamento de blobs/compartilhamento de arquivos.
Você pode usar o Assistente de Exportação de Aplicativo de Nível de Dados do SQL Server Management Studio para exportar o banco de dados SQL do Azure para um arquivo .bacpac. Você pode armazenar o arquivo .bacpac no armazenamento de blobs ou no compartilhamento de arquivos do Azure.
Selecione com o botão direito do mouse o Banco de Dados SQL no SQL Server lógico no SSMS>Tarefas>Assistente de exportação de aplicativo da camada de dados.
Selecione Próximo.
Selecione o local para armazenar o arquivo BACPAC.
Selecione Fechar.
Os pacotes da 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 ao Azure DevOps Server 2022
Conectar o Banco de Dados SQL do Azure do Azure DevOps Server 2022 (local) envolve configurar o acesso, garantir a conectividade e usar as credenciais apropriadas. Execute as etapas a seguir para conectar ao Azure SQL Database a partir do Azure DevOps Server 2022.
Conectar-se ao Banco de Dados SQL do Azure
Obter detalhes da 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 da ID do Microsoft Entra.
- Nome do servidor:
Conectar usando o SSMS (SQL Server Management Studio): um. Abra o SQL Server Management Studio no computador em que 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:
- Insira o nome do servidor:
<your-server-name>.database.windows.net - Escolha Autenticação: Autenticação do SQL Server.
- Insira seu Nome de Usuário e Senha.
- Selecione Conectar. Uma vez conectado, o Banco de Dados SQL do Azure é listado no Pesquisador de Objetos no SSMS.
- Insira o nome do servidor:
Testar a 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 a conexão no Servidor do Azure DevOps: Depois de verificar a conectividade do SSMS, você poderá usar essa conexão no Servidor do Azure DevOps para várias tarefas, como:
- Implantações automatizadas: configure pipelines de liberação no Azure DevOps Server para implantar alterações de banco de dados.
- Migração de dados: use scripts SQL ou ferramentas de dados integradas ao Azure DevOps Server.
- Integração contínua: integre as alterações de banco de dados nos seus pipelines de CI/CD.
Dica
- Ser seguro: Considere usar a ID do Microsoft Entra para obter acesso mais seguro.
- Gerenciar credenciais: Armazene as credenciais com segurança e evite codificá-las em scripts ou configurações.
- Monitor: Monitorar conexões de banco de dados e o uso, garantindo assim a segurança e o desempenho.
Conecte o Banco de Dados SQL do Azure do Azure DevOps Server 2022 em execução local, permitindo o gerenciamento simplificado de banco de dados e a integração com seus processos de desenvolvimento e implantação. Ajuste as configurações e as medidas de segurança com base nas políticas e requisitos da sua organização.
Usar sua conexão de Banco de Dados SQL do Azure no Azure DevOps Server 2022
Preparar o Servidor do Azure DevOps:
a. Verifique se você tem o Azure DevOps Server 2022 instalado e configurado em seu ambiente local.</
b. Acesso ao Servidor do Azure DevOps com permissões apropriadas para criar e gerenciar pipelines.Configurar o projeto e o repositório do Azure DevOps (se ainda não tiver concluído):
a. Crie um novo ou use um projeto existente do Azure DevOps.
b. Configure um repositório Git ou TFVC para armazenar suas definições e scripts de pipeline.Criar um pipeline:
a. Acesse seu projeto do Azure DevOps.
b. Selecione Pipelines>Pipelines>Nova pipeline.
c. Selecione o modelo de pipeline apropriado com base em seus requisitos. 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, Azure Pipeline).
d. Edite o arquivo YAML do pipeline ou use o editor clássico para definir seus estágios e tarefas de pipeline.Adicionar tarefas para implantar 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 snippet de código 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 snippet de código 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: usar variáveis do Azure DevOps ou integração do Azure Key Vault para gerenciar informações confidenciais, como credenciais do SQL Server (
sqlUsernameesqlPassword).Acionar e executar pipeline:
- Salve e aplique as alterações no pipeline.
- Acione o pipeline manualmente ou configure gatilhos (por exemplo, em commit de código, agendamento) de acordo com sua estratégia de implantação.
Monitorar a execução do pipeline:
- Monitore as execuções de pipeline no Azure DevOps para garantir que as implantações no Banco de Dados SQL do Azure sejam bem-sucedidas.
- Examine os logs e saídas para solucionar problemas durante a implantação.
Dica
- Integrar com o Release Pipelines: Integre seu pipeline de build com pipelines de lançamento para cenários e aprovações de implantação mais complexos.
- fazer alterações incrementais no banco de dados: usar ferramentas como o SSDT (SQL Server Data Tools) ou migrações para gerenciar alterações incrementais no esquema de banco de dados.
- Usar controle de versão: Manter 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 de implantação específicas 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 do Azure DevOps 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 | Requisitos |
|---|---|
| Acesso | Administrador acesso ao servidor em que 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
Abra o Console de Administração do Azure DevOps Server no servidor onde o Azure DevOps Server está instalado e selecione Camada de Aplicativo>Backups Agendados>Criar Backups Agendados.
Insira o caminho de backup de rede e selecione Próximo.
Selecione os alertas de email desejados e selecione Próximo.
Escolha um agendamento de backup com base em seus requisitos e selecione Próximo.
Confirme as configurações 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 de verificação de preparaçã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. Esse 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 do Azure DevOps, acesse a tela 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 executar novamente as verificações de preparação.
Configuração de backup bem-sucedida:
Logs de backup agendados:
Backups agendados do Console de Administração:
Erro: Arquivo de log
Exemplo de local do arquivo de log:
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 problemas com grupos de arquivos específicos.