Eventos
Crie aplicativos e agentes de IA
17 de mar., 21 - 21 de mar., 10
Junte-se à série de encontros para criar soluções de IA escaláveis com base em casos de uso do mundo real com outros desenvolvedores e especialistas.
Registrar agoraNão há mais suporte para esse navegador.
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.
Este artigo se concentra na preparação da equipe e na geração de arquivos exigidas pela Ferramenta de Migração de Dados.
Conclua a fase Validar antes de começar a se preparar para a migração de execução de teste.
Execute as etapas a seguir para gerar a especificação de migração e os arquivos relacionados para enfileirar a migração do banco de dados de coleção.
Execute o comando de preparação da Ferramenta de Migração de Dados com os seguintes parâmetros:
/collection:http://localhost:8080/tfs/DefaultCollection/ tenantDomainName:contoso.com /Region:CUS
Entre com um usuário do locatário que tenha permissão para ler informações sobre todos os usuários no locatário da ID do Microsoft Entra.
O arquivo de especificação de migração é um arquivo JSON que instrui a Ferramenta de Migração de Dados sobre como executar as ações a seguir.
Muitos dos campos são preenchidos automaticamente durante a etapa de preparação, mas você deve configurar os seguintes campos:
Cada arquivo de especificação de migração destina-se a uma única coleção. Se você tentar usar um arquivo de especificação de migração gerado para outra coleção, a migração não será iniciada. Você precisa preparar uma execução de teste para cada coleção que deseja migrar e usar o arquivo de especificação de migração gerado para enfileirar a migração.
O log do mapa de identidade é crucial, tão importante quanto os dados reais que você migra. Ao examinar o arquivo de log, entenda como a migração de identidade funciona e os possíveis resultados. Quando você migra uma identidade, ela pode ser ativa ou histórica. As identidades ativas podem entrar no Azure DevOps Services, enquanto as identidades históricas não. O serviço decide qual tipo é usado.
Observação
Depois que uma identidade é migrada como uma identidade histórica, não há como convertê-la em uma identidade ativa.
As identidades ativas referem-se às identidades de usuário no Azure DevOps Services após a migração. Em Azure DevOps Services, essas identidades são licenciadas e são exibidas como usuários na organização. As identidades são marcadas como ativas na coluna Status de Importação Esperado no arquivo de log do mapa de identidade.
As identidades históricas são mapeadas como tal na coluna Status de Importação Esperado no arquivo de log do mapa de identidade. Identidades sem uma entrada de linha no arquivo também se tornam históricas. Um exemplo de uma identidade sem uma entrada de linha pode ser um funcionário que não trabalha mais em uma empresa.
Ao contrário das identidades ativas, identidades históricas:
Observação
Depois que uma identidade migra como histórica, você não pode torná-la ativa.
Durante a migração, as licenças são atribuídas automaticamente para todos os usuários exibidos como "ativos" na coluna Status de importação esperado do log de mapeamento de identidade. Se a atribuição automática de licença estiver incorreta, você poderá alterá-la editando o "nível de acesso" de um ou mais usuários após a conclusão da migração.
A atribuição pode nem sempre ser perfeita, portanto, você tem até o primeiro dia do mês seguinte para reatribuir as licenças conforme necessário. Se até o primeiro dia do mês seguinte você não vincular uma assinatura à sua organização e comprar o número correto de licenças, todas as suas licenças de período de carência serão revogadas. Como alternativa, se a atribuição automática atribuiu mais licenças do que você comprou para o próximo mês, não cobraremos pelas licenças extras, mas revogaremos todas as licenças não pagas.
Para evitar a perda de acesso, recomendamos que você vincule uma assinatura e compre as licenças necessárias antes do primeiro dia do mês, pois a cobrança é mensal. Para todas as execuções de teste, as licenças são gratuitas enquanto a organização estiver ativa.
As assinaturas do Visual Studio não são atribuídas por padrão para migrações. Em vez disso, os usuários com Assinaturas do Visual Studio são atualizados automaticamente para usar essa licença. Se a organização de trabalho de um usuário estiver vinculada corretamente, Azure DevOps Services aplicará automaticamente seus benefícios de assinatura do Visual Studio em sua primeira entrada após a migração.
Você não precisará repetir uma migração de execução de teste se os usuários não forem atualizados automaticamente para usar sua assinatura do Visual Studio em Azure DevOps Services. A vinculação de assinatura do Visual Studio é algo que acontece fora do escopo de uma migração. Se a organização de trabalho for vinculada corretamente antes ou depois da migração, o usuário terá sua licença atualizada automaticamente na próxima entrada. Depois que eles forem atualizados, na próxima vez que você migrar, o usuário será atualizado automaticamente após a entrada inicial na organização.
Restrinja o acesso à sua conta de Armazenamento do Azure apenas a IPs de Azure DevOps Services. Você pode restringir o acesso permitindo apenas conexões de Azure DevOps Services IPs envolvidos no processo de migração do banco de dados de coleção. Os IPs que precisam receber acesso à sua conta de armazenamento dependem da região para a qual você está migrando.
Você pode permitir facilmente conexões de todas as regiões do Azure DevOps Services adicionando a azuredevops
Marca de Serviço aos seus grupos de segurança de rede ou firewalls por meio do portal ou programaticamente.
Use o IpList
comando para obter a lista de IPs que precisam receber acesso para permitir conexões de uma região específica do Azure DevOps Services.
Incluídos na documentação de ajuda estão instruções e exemplos para executar o Migrador da própria instância do Azure DevOps Server e de um computador remoto. Se você estiver executando o comando de uma das camadas de aplicativo da instância Azure DevOps Server, o comando deverá ter a seguinte estrutura:
Migrator IpList /collection:{CollectionURI} /tenantDomainName:{name} /region:{region}
Você pode adicionar a lista de IPs aos seus grupos de segurança de rede ou firewalls por meio do portal ou programaticamente.
Esta seção se aplica apenas à configuração de exceções de firewall para o SQL Azure. Para migrações DACPAC, consulte Configurar firewalls e redes virtuais do Armazenamento do Azure.
A Ferramenta de Migração de Dados requer que os IPs do Azure DevOps Services sejam configurados para conexões de entrada somente na porta 1433
.
Execute as etapas a seguir para conceder exceções para os IPs necessários tratados na camada de rede do Azure para sua VM do SQL Azure.
1433
e, na caixa Nome, insira um nome que melhor descreva a exceção que você está configurando.Dependendo de outras regras de porta de entrada configuradas, talvez seja necessário alterar a prioridade padrão para as exceções do Azure DevOps Services, para que elas não sejam ignoradas. Por exemplo, se você tiver uma regra "negar em todas as conexões de entrada para 1433" com uma prioridade mais alta do que as exceções do Azure DevOps Services, a Ferramenta de Migração de Dados poderá não conseguir fazer uma conexão bem-sucedida com o banco de dados.
Repita a adição de regras de porta de entrada até que todos os IPs necessários do Azure DevOps Services recebam uma exceção. A falta de um IP pode resultar no início da migração.
Para bancos de dados que a Ferramenta de Migração de Dados avisa que são muito grandes, uma abordagem de empacotamento de dados diferente é necessária para migrar para Azure DevOps Services. Se você não tiver certeza se sua coleção excede o limite de tamanho, execute uma validação da Ferramenta de Migração de Dados na coleção. A validação permite que você saiba se precisa usar o método de VM do SQL Azure para migração.
Verifique se você pode limpar dados antigos. Ao longo do tempo, as coleções podem compilar grandes volumes de dados. Esse crescimento é uma parte natural do processo de DevOps, mas você pode descobrir que não precisa reter todos os dados. Alguns exemplos comuns de dados não mais relevantes são workspaces mais antigos e resultados de build.
A Ferramenta de Migração de Dados verifica sua coleção e a compara com os limites mencionados anteriormente. Em seguida, ele relata se sua coleção está qualificada para o método de migração DACPAC ou SQL. Em geral, a ideia é que, se sua coleção for pequena o suficiente para caber dentro dos limites do DACPAC, você poderá usar a abordagem DACPAC mais rápida e simples. No entanto, se sua coleção for muito grande, você precisará usar o método de migração SQL, que envolve a configuração de uma VM do SQL Azure e a migração manual do banco de dados.
Os limites atuais são:
Quando você limpa artefatos mais antigos e não mais relevantes, isso pode remover muito mais espaço do que você pode esperar e pode determinar se você usa o método de migração DACPAC ou uma VM do SQL Azure.
Importante
Depois de excluir dados mais antigos, você não poderá recuperá-los, a menos que restaure um backup mais antigo da coleção.
Se você estiver abaixo do limite do DACPAC, siga as instruções para gerar um DACPAC para migração. Se você ainda não conseguir colocar o banco de dados no limite DACPAC, precisará configurar uma VM do SQL Azure para migrar para Azure DevOps Services.
Execute as etapas de alto nível a seguir para configurar uma VM (máquina virtual) do SQL Azure para migrar para Azure DevOps Services.
Você pode configurar uma VM do SQL Azure no portal do Azure rapidamente. Para obter mais informações, consulte Usar o portal do Azure para provisionar uma máquina virtual do Windows com o SQL Server.
O desempenho da VM do SQL Azure e dos discos de dados anexados tem um impacto significativo no desempenho da migração. Por esse motivo, é altamente recomendável realizar as seguintes tarefas:
D8s_v5_*
ou superior.Azure DevOps Services está disponível em várias regiões do Azure em todo o mundo. Para garantir que a migração seja iniciada com êxito, é fundamental colocar seus dados na região correta. Se você configurar sua VM do SQL Azure em um local errado, a migração não será iniciada.
Importante
A VM do Azure requer um endereço IP público.
Se você estiver usando esse método de migração, crie sua VM em uma região com suporte. Embora Azure DevOps Services esteja disponível em várias regiões nos Estados Unidos (EUA), somente a região Central dos Estados Unidos aceita novas organizações. Você não pode migrar seus dados para outras regiões do Azure dos EUA agora.
Observação
Os clientes do DACPAC devem consultar a tabela de regiões na seção "Etapa 3: Carregar o arquivo DACPAC](migration-test-run.md#)". As diretrizes anteriores são apenas para VMs SQL Azure. Se você for um cliente DACPAC, confira regiões do Azure com suporte para migração.
Use as seguintes configurações de VM do SQL Azure:
Depois de configurar e configurar uma VM do Azure, você precisará levar o backup desanexado da instância do Azure DevOps Server para a VM do Azure. O banco de dados de coleção precisa ser restaurado em sua instância sql e não exige que Azure DevOps Server sejam instalados na VM.
Depois que o banco de dados de coleção for restaurado em sua VM do Azure, configure uma entrada SQL para permitir que Azure DevOps Services se conecte ao banco de dados para migrar os dados. Essa entrada permite apenas acesso de leitura a um único banco de dados.
Abra o SQL Server Management Studio na VM e abra uma nova janela de consulta no banco de dados a ser migrado.
Defina a recuperação do banco de dados como simples:
ALTER DATABASE [<Database name>] SET RECOVERY SIMPLE;
Crie uma entrada SQL para o banco de dados e atribua a essa entrada o 'TFSEXECROLE', como no exemplo a seguir.
USE [<database name>]
CREATE LOGIN <pick a username> WITH PASSWORD = '<pick a password>'
CREATE USER <username> FOR LOGIN <username> WITH DEFAULT_SCHEMA=[dbo]
EXEC sp_addrolemember @rolename='TFSEXECROLE', @membername='<username>'
Veja o exemplo a seguir do comando SQL:
ALTER DATABASE [Foo] SET RECOVERY SIMPLE;
USE [Foo]
CREATE LOGIN fabrikam WITH PASSWORD = 'fabrikampassword'
CREATE USER fabrikam FOR LOGIN fabrikam WITH DEFAULT_SCHEMA=[dbo]
EXEC sp_addrolemember @rolename='TFSEXECROLE', @membername='fabrikam'
Importante
Habilite o modo de autenticação do SQL Server e do Windows no SQL Server Management Studio na VM. Se você não habilitar o modo de autenticação, a migração falhará.
Atualize o arquivo de especificação de migração para incluir informações sobre como se conectar à instância do SQL Server. Abra o arquivo de especificação de migração e faça as seguintes atualizações:
Remova o parâmetro DACPAC do objeto de arquivos de origem. A especificação de migração antes da alteração é semelhante ao código de exemplo a seguir.
A especificação de migração após a alteração é semelhante ao código de exemplo a seguir.
Insira os parâmetros necessários e adicione o objeto properties a seguir dentro do objeto de origem no arquivo de especificação.
"Properties":
{
"ConnectionString": "Data Source={SQL Azure VM Public IP};Initial Catalog={Database Name};Integrated Security=False;User ID={SQL Login Username};Password={SQL Login Password};Encrypt=True;TrustServerCertificate=True"
}
Depois de aplicar as alterações, a especificação de migração se parece com o exemplo a seguir.
Sua especificação de migração agora está configurada para usar uma VM do SQL Azure para migração. Prossiga com o restante das etapas de preparação para a migração. Após a conclusão da migração, certifique-se de excluir a entrada SQL ou girar a senha. A Microsoft não retém as informações de entrada após a conclusão da migração.
O uso da Ferramenta de Migração de Dados para Azure DevOps requer ter um contêiner de Armazenamento do Azure no mesmo data center do Azure que a organização final do Azure DevOps Services. Por exemplo, se você pretende que sua organização Azure DevOps Services seja criada no data center dos Estados Unidos Central, crie o contêiner de Armazenamento do Azure nesse mesmo data center. Essa ação acelera drasticamente o tempo necessário para migrar o banco de dados SQL, já que a transferência ocorre dentro do mesmo data center.
Para obter mais informações, consulte Criar uma conta de armazenamento.
Um período de carência é colocado na organização Azure DevOps Services recém-migrada para permitir que sua equipe conclua todas as etapas necessárias e corrija as atribuições de licença. Se você antecipar que talvez queira comprar mais planos de usuário, pipelines de build ou implantação, serviços de build hospedados, serviços de teste de carga hospedados, por exemplo, é altamente recomendável que você tenha uma assinatura do Azure pronta para vincular à sua organização migrada. O período de carência termina no primeiro dia do mês seguinte após a conclusão da migração.
Lembramos você novamente na fase Pós-migração(link) para quando você precisar fazer a vinculação. Esta etapa de preparação é mais sobre como garantir que você saiba qual assinatura do Azure você usa nessa etapa posterior. Para obter mais informações, consulte Configurar a cobrança para sua organização.
Eventos
Crie aplicativos e agentes de IA
17 de mar., 21 - 21 de mar., 10
Junte-se à série de encontros para criar soluções de IA escaláveis com base em casos de uso do mundo real com outros desenvolvedores e especialistas.
Registrar agoraTreinamento
Roteiro de aprendizagem
Arquiteto de Soluções: projetar soluções do Microsoft Power Platform - Training
Aprenda como um arquiteto de soluções projeta soluções.
Certificação
Microsoft Certified: Azure for SAP Workloads Specialty - Certifications
Demonstre o planejamento, a migração e a operação de uma solução SAP no Microsoft Azure enquanto aproveita os recursos do Azure.
Documentação
Migração da execução de teste - Azure DevOps
Como fazer uma execução de teste, migrando do local para a nuvem no Azure DevOps Services.
Migrar para o Azure DevOps Services - Azure DevOps
Como fazer uma migração de produção do local para a nuvem nos Serviços de DevOps do Azure.
Validar e preparar o ambiente do servidor para migração - Azure DevOps
Saiba como se preparar para a migração validando seu ambiente e resolvendo erros.