Migrações de Dynamics CRM/365 On-premises para Online e vice-versa


Olá pessoal,

Neste post, irei escrever sobre algumas formas e estratégias para planejarmos migrações do Dynamics CRM/365 On-premises para o Online e vice-versa (Online para On-premises).

Um ponto importante para ressaltar antes de começarmos, seria que a ideia do post é de descrever formas de migrar diferentes tipos de implantações (on-premises e online) do Dynamics. Assim, não irei discutir como trabalhar com atualizações do Dynamics, como por exemplo da versão 2013 para 2015.

Vamos ao que interessa…

Dynamics On-premises para Online

Acredito que migração de um Dynamics On-premises para um Online seja a que mais está ocorrendo nos últimos tempos. Muitos mitos foram quebrados e empresas de todos os portes já estão operando com diversos serviços na cloud, o Dynamics não fica de fora dessa e particularmente no Brasil, teve o mercado bem aquecido nós últimos anos, após a Microsoft ter criado o primeiro datacenter dela na América Latina em São Paulo.

Com menos latência e mitos exorcizados, Dynamics On-premises estão indo aos montes para o Online.

Recomendo como leitura o paper oficial da Microsoft (mesmo que ainda não atualizado para as últimas versões, ele possui as etapas fundamentais para a migração).

Basicamente, temos que dividir em duas etapas de migração: Metadata e Dados. Precisamos de ambas etapas para concluir o trabalho, devido ao fato de não podermos exportar o banco de dados e importá-lo no Dynamics Online. Assim, é requerido exportar o Metadata (uma ou mais soluções do Dynamics) e depois carregar os Dados. Vamos aos detalhes:

Metadata

Geralmente precisamos exportar por completo, digo todas as customizações e extensões do Dynamics On-premises para o Online, neste caso, a solução “Padrão” contém o precisamos. Agora, para cenários onde queremos apenas parte das funcionalidades, devemos criar uma ou mais soluções para armazenar as entidades, atributos, formulários, dashboards e etc.

Vale lembrar que todos os plugins precisam ser alterados para funcionar apenas no modo Sandbox, isso é obrigatório no Dynamics Online. Além disso, relatórios precisam ser escritos usando apenas FetchXML. Por fim, alguns workflows talvez precisem de pequenas alterações para continuarem operando Online.

Após termos finalizado o processo acima, é hora de importar a solução no Dynamics Online!

Dados 

Aqui vai a parte complicada, irei detalhá-la da melhor forma possível.

Os dados podem ser uma grande dor de cabeça para serem migrados, principalmente em cenários onde existe um grande volume de dados e a janela para a migração é curta. No paper da Microsoft acima, eles utilizaram o Scribe para acelerar a migração. Porém temos outras ferramentas para nos ajudar, irei falar um pouco sobre cada uma inclusive um pouco mais sobre o Scribe:

  • Assistente de Importação de Dados (importação nativa) – podemos exportar todos dados utilizando a ferramenta nativa do Dynamics e depois reimportá-lo no ambiente Online. A grande vantagem certamente é a facilidade na exportação, pois não é preciso nenhum conhecimento prévio para realizar esta etapa, porém como pontos negativos temos baixa performance no carga de dados e erros de importação se não inserirmos todas as entidades requeridas no conjuntos de dados;
  • Data Migration Tool esta ferramenta está contida dentro do SDK do Dynamics, é bem semelhante ao assistente de importação de dados. Conseguimos criar schemas, exportar e importar dados. Tantos os pontos positivos como negativos são também bem parecidos com o da importação nativa do Dynamics. Assim devemos evitar usá-la quando existe grandes volumes de dados ou alta quantidade de entidades/relacionamentos. Existe um ponto que acredito que faz com que a Data Migration Tool seja melhor do que a importação nativa do Dynamics, a interface exibe mais indicadores do que esta acontecendo durante a importação do que a importação nativa, com isso temos mais recursos para verificar o que já foi carregado, o que está sendo, e quais os problemas encontrados;
  • SQL Integration Services (SSIS) – ferramenta contida no pacote de BI do SQL, podemos criar pacotes para extrair e importar dados. A performance do carregamento de dados é muito melhor do que as duas opções anteriores, conseguimos adicionar componentes de paralelismo e multi-threads. Outro ponto positivo seria que atualmente não existe custo para utilizarmos o SSIS. Com ponto negativo, temos a grande complexidade para criarmos os pacotes, pois não existe um framework para conectar com o Dynamics, tornando o trabalho complexo e por muitas vezes é necessário contar um DBA para facilitar o desenvolvimento;
  • Scribeé uma ferramenta que possui uma série de conectores com diversos tipos de sistemas, com isso podemos trabalhar com dados de diversas fontes dentre elas o Dynamics em uma única plataforma de forma genérica. Em termos de performance no carregamento de dados está no mesmo nível do SSIS, conseguimos importar grandes volumes em pouquíssimo tempo, porém, com o Scribe a complexidade para utilização é bem menor do que o SSIS, muitas funções já estão implementadas, basta apenas usufruir delas e realizar o trabalho. Acredito que o único problema, que nem é bem um problema é o fato do Scribe ser um serviço pago;
  • Kingswaysofto Kingswaysoft é sem dúvida algo o preferido pelos desenvolvedores de Dynamics para a migração de projetos. A curva de aprendizado é ainda menor do que o Scribe, pois utilizamos o SSIS com o framework da Kingswaysoft em forma de add-on. Esta combinação garante um grande conjunto de funções já preparadas para o uso, como por exemplo as conexões com as base de dados, assim a necessidade de codificação é praticamente nula. A performance também pode ser comparada com o Scribe e SSIS, bem como o custo, que é algo de deve ser considerado em sua escolha;

A seguir uma tabela para facilitar o entendimento dos pontos chave de cada ferramenta:

Performance Dificuldade de utilização Custo
Assistente de Importação de Dados Baixa Baixa Gratuito
Data Migration Tool Baixa Baixa Gratuito
SQL Integration Services (SSIS) Alta Alta Gratuito
Scribe Alta Média Pago
Kingswaysoft Alta Média Pago

Existe uma luz no fim do túnel…

A Microsoft vem trabalhando em uma nova ferramenta chamada Customer Engagement Migration Tool para automatizar a migração de Dynamics On-premises para Online, a ideia é seguir algumas etapas de um ajudante de migração, onde vamos informando a base de dados que será utilizada, usuários, o Dynamics Online de destino, entre outros. Além disso, existe uma função que verifica se existe algum problema com as customizações/extensões que irão impactar o novo ambiente. E por fim, a migração se inicia.

Vale lembrar que esta ferramenta por utilizar serviços do Azure, precisa de que o usuário que esteja operando a migração tenha uma licença para isso.

A única parte ruim do Customer Engagement Migration Tool é que infelizmente ainda está em FastTrack, isso significa que não está disponível globalmente e que apenas algumas organizações selecionadas ou que se inscreveram no começo do programa estão tendo acesso a funcionalidade…

Bom ai fica a dica do que irá acontecer em breve. Acredito que empresas parceiras consigam através de seus contatos com o Microsoft algum engajamento para realizar um teste usando o FastTrack se não agora, mas muito em breve.

Dynamics Online para On-premises

Na contramão do que muitos estão fazendo, ir para o modo Online, existem outros que estão voltando para o On-premises. Este fato não é tão ocorrente, mas por algumas vezes se faz necessário. Os motivos para a mudança costumam ser relacionados a nova política de segurança que não permite serviço na nuvem pública, redução de custos e cenários onde a performance ou característica do negócio exigem uma infraestrutura dedicada..

Assim como a migração do On-premises para o Online, também temos um paper da Microsoft (um pouco desatualizado também, mas ajuda bem no que temos que saber).

A migração do modo Online para o On-premises tende a ser bem menos complexa do que a anterior. Apenas precisamos seguir alguns steps, mas não temos problemas para o carregamento de dados.

Seguem os passos:

  • Primeiramente precisamos ter em mente que a versão de Dynamics precisa ser exatamente igual em ambos ambientes (como disse anteriormente, este post não abordará cenários de upgrade de Dynamics). Em alguns casos como no paper acima, quando estamos na versão 2015 Update 1 no modo Online e 2015 no On-premises, a migração pode ser feita, porém funcionalidades da versão mais atual não serão migradas, bem como algumas funcionalidades podem ser impactadas e precisamos realizar alguns procedimentos manuais pré ou pós migração.
  • A chave de criptografia do Dynamics deve ser copiada, precisamos dela para restaurar o banco de dados no novo ambiente.
  • Temos que criar um chamado para a Microsoft, solicitando uma cópia do banco de dados. Quando obtivermos, podemos restaurá-lo em nosso SQL On-premises. Com a restauração concluída, devemos iniciar a importação do Dynamics utilizando o Deployment Manager.
  • Por fim, precisamos ativar a chave de criptografia, com isso nosso Dynamics está pronto para o uso!

Bom, aqui chega o fim deste post, espero que ajuda a tomar algumas decisões para o processo de migração do Dynamics.

[]’s,

Tiago

4 comentários em “Migrações de Dynamics CRM/365 On-premises para Online e vice-versa

  1. Essa contramão que você citou é comum? Quais características levariam uma empresa a fazer isso? Você conhece uma empresa que fez isso? pode Citar?

    Curtir

    1. Olá Daniel, obrigado por acessar o blog!

      Então como eu disse no post, não é algo tão comum, posso dizer que apenas presenciei isso duas vezes em mais de 10 anos trabalhando com Dynamics. Alguns motivos possíveis são:

      -nova política de segurança que não permite serviço na nuvem pública

      -redução de custos (é bem relativo)

      -cenários onde a performance ou característica do negócio exigem uma infraestrutura dedicada

      Eu sei que cada motivo citado acima pode ser rebatido, como por exemplo custo, performance e infraestrutura dedicada, existem algumas ações que podem ser feitas sem ter que para uma implantação onPremises.

      Como eu disse anteriormente, presenciei esta inversão duas vezes:

      -na primeira, ainda não existia data center da Microsoft no Brasil, assim a latência era bem grande, bem como o Azure, ele ainda estava engatinhando, não conseguimos criar muita coisa nele para usar no Dynamics. E estamos criando uma vertical no CRM, onde a ideia era ter milhares de acessos simultâneos em várias organizações. Assim tivemos que ir para uma nuvem privada. Acredito que se fosse hoje não faríamos isso.

      – na segunda vez, iniciamos tudo no Dynamics Online. Por ser uma empresa financeira, existe uma política interna que proíbe dados financeiros em nuvens públicas. Inicialmente não teríamos nenhum tipo destas informações no Dynamics. Porém, conforme o projeto foi crescendo, perceberam que algumas informações financeiras precisavam ser colocada no Dynamics. Com isso, tivemos que migrar para o OnPremises.

      Bom é isso, espero que ajude!

      []’s,

      Tiago

      Curtir

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.