Instancia Reservada no Azure–Mudanças Importantes

A algum tempo que já temos disponivel o recurso de comprar antecipadamente uma instância de maquina virtual, chamado de Reserved Instance.

Basicamente o processo se mantem (http://www.marcelosincic.com.br/post/Reducao-de-Custos-com-Azure-Reserved-Instance.aspx) mas temos algumas novidades e alertas:

  1. Alteração do tipo de VM
  2. Outros recursos que podem ser reservados
  3. Mudança na forma de cobrança
  4. O que não está incluido em uma reserva

Possibilidade de Alteração da Instância (perfil de VM)

Essa mudança é importante, pois na primeira versão (link acima) não era possivel mudar o tipo de VM.

O processo para mudar era pedir o reembolso da instância já paga (lembrar que existia um penalty) e refazer com outro tipo de VM da mesma familia, como por exemplo de D2 para D4.

Para isso basta utilizar o botão Exchange em uma reserva e será possivel escolher o novo tipo de VM como abaixo sem o penalty dos aproximadamente 12% do cancelamento.

image

Porem, obviamente que o custo de uma D2 é diferente de uma D4 e para isso temos uma tabela que pode ser usada no calculo para saber o valor da diferença que será pago quando trocar entre os tipos de VM em https://docs.microsoft.com/en-us/azure/virtual-machines/windows/reserved-vm-instance-size-flexibility?wt.mc_id=4029139 

Outros Tipos de Recursos Alem das VMs

Na versão inicial as RIs eram apenas VMs, mas agora é possivel fazer com diversos tipos de serviços. Atualmente segue a lista dos que são suportados:  

  • Reserved Virtual Machine Instance
  • Azure Cosmos DB reserved capacity
  • SQL Database reserved vCore
  • SQL Data Warehouse
  • App Service stamp fee

Essa lista é alterada conforme novos recursos podem ser agregados e está disponivel em https://docs.microsoft.com/en-us/azure/billing/billing-save-compute-costs-reservations?wt.mc_id=4029139

Importante: Veja o tópico abaixo sobre o que é incluido ou não no RI.

Forma de Pagamento Mensal

Até 8/Setembro/19 só era possivel o pagamento antecipado a partir de créditos do Enterprise Agreeement ou pagamento em cartão de crédito.

Agora é possivel o pagamento mensal, ou seja todos os meses irá consumir o valor com desconto igual ao anual como se fosse uma subscrição mensal e não anual. O melhor para entender é que o compromisso continua anual, mas pago mensal ao invés de upfront.

As outras regras continuam as mesmas, penalty em caso de cancelamento, mudança do tipo de VM ou serviço, etc.

Para os que já tem reservas será necessário aguardar o prazo da compra, uma vez que foi pago antecipado e por isso haveria a cobrança da taxa de cancelamento.

https://docs.microsoft.com/en-us/azure/billing/billing-monthly-payments-reservations?wt.mc_id=4029139

Importante: O pagamento mensal não mudou a forma de reserva ser anual, ou seja haverá o penalty em caso de cancelamento.

Recursos Cobrados em Separado

Uma confusão muito comum nos clientes que compraram RIs é o fato de continuar havendo outras cobranças para as VMs e recursos aparecendo em seus extratos.

O que precisa estar claro é que reservas se referem apenas aos recursos computacionais e não os recursos agregados como licenças, armazenamento e trafego de rede.

Por exemplo, no tipo de reserva para VMs que são as mais comum:

  • Incluido no RI: CPU, memória e alocação
  • Não incluido no RI: Armazenamento (storage), tráfego de rede (network) e licenciamento do SO se não foi utilizado o AHUB

O motivo é que estes recursos não incluidos fazem parte da subscrição e são compartilhados ou opcionais (como é o caso da licença do Windows ou SQL) e não haveria como limitar ao uso apenas daquelas reservas especificas, alem de serem voláteis diferente do tipo de uma VM por exemplo.

Conclusão

Com os novos recursos que podem ser reservados, flexibilidade na alteração, a nova forma de cobrança e o entendimento correto pode-se gerar uma economia substancial para aqueles que migraram serviços.

Azure File Sync–Otimizando seu File Server e Storage

Duas aplicações mais consomem storage em ambientes de TI:

  • Banco de dados – Por conterem dados analiticos e indexados podemos utilizar tecnicas de drill down para separar os dados analiticos dos dados resumidos facilitando o acesso e otimizando custos
  • File Server – Ao longo dos anos as empresas acumulam milhares de arquivos, o que custa caro e raramente é agrupado ou tierizado

Tierização: Tecnologia onde os dados são separados conforme regras de performance em discos mais caros ou mais baratos. Por exemplo, arquivos pouco usados ficam em discos SATA, arquivos com acesso ocasional em discos SAS e arquivos que são acessados diariamente em discos SSD.

Vamos abordar como utilizar o Azure File Sync para criar uma tierização dos dados em um File Server para permitir que arquivos mais acessados fiquem localmente guardados e os mais antigos apenas em nuvem.

Cenários Frequentes

O primeiro cenário é o de diminuir o tamanho total de espaço ocupado por arquivos antigos.

Nesse caso utilizamos as configurações de data do arquivo e espaço livre desejado para diminuir o espaço em disco que o File Server ocupa, liberando para uso com outras necessidades.

O segundo cenário é servidor de arquivos distribuidos, onde em cada filial da empresa é necessário ter um servidor para acessar os dados.

Nesse exemplo todos os servidores replicam a mesma pasta, o que não cria problemas de saturação local, já que o cache é apenas dos arquivos recentes e controlado pelo percentual desejado de espaço livre a ser mantido.

Componentes do Azure File Sync

  1. Storage Account – Um storage virtual onde os dados serão armazenados
  2. File Share no Storage Account – Pasta dentro do Storage Account para receber os arquivos que serão enviados
  3. Azure File Sync Service no Market Place – É o serviço e deve ser habilitado, diferente de outros serviços nativos. Porem, apesar de estar no Market Place o AFS não tem um custo, trata-se apenas da inclusão de um serviço
  4. File Sync Service – É o serviço no painel do Azure onde podemos criar os grupos, incluir os servidores e configurar storage
  5. Registered Services (servidores) – São os servidores que serão sincronizados, onde os arquivos estão armazenados e servirão de cache
  6. Sync Group – Forma a lista de servidores que irá receber a cópia dos arquivos a serem copiados e dar acesso aos arquivos em qualquer localidade

Criando um Storage

Esse é o primeiro passo e bem conhecido de quem já utiliza o Azure, uma vez que para tudo precisamos de um storage.

armazenamento

Para usar o AFS não é necessário qualquer configuração adicional, você poderá escolher qual região, tipo de storage e replicação que melhor se aplique ao seu ambiente. Obviamente algumas coisas precisam ser levadas em conta:

  • O tipo de conta envolve a performance maxima e irá afetar tanto o download quanto upload quando os usuários utilizam os arquivos
  • Replicação é importante se você terá servidores em várias localidades/paises
  • Camada Hot or Cold envolve a performance diretamente e tambem o custo, já que o acesso é bem lento em discos Cold e não recomendaria para uma solução como essa

Na sequencia é necessário criar o File Share para onde os arquivos irão quando sincronizados, e o conceito é o mesmo de um servidor comum:

compartilhamento

Quando sincronizado, os arquivos irão aparecer primeiro na pasta Sincronization e depois na pasta principal como podemos ver abaixo.

syncstaging

Files Sync

Lembrando que as duas telas acima se referem a sincronização já finalizada, a primeira para ver os arquivos sendo copiados e a segunda quando a primeira sincronização já finalizou.

Habilitando o Azure File Sync

Procure no Marketplace pelo Azure File Sync ou Serviço de Sincronização do Azure em portugues:

mktplace

mktplace-2

Nesse momento pode-se optar por utilizar um Resource Group existente ou um novo, não importando em qual Resource Group o Storage foi criado, uma vez que ele pode ter varios outros serviços atribuidos.

Criando o Serviço de Sincronização

A criação do grupo de sincronização é bem simples, bastante indicar a assinatura, storage e a pasta compartilhada definida anteriormente.

Servico

grupo sincronizacao

Registrando Servidores de Arquivos

Você poderá indicar servidores:

  • Novos servidores que não tenham arquivos e incluí-los em um grupo já sincronizado para que ele sirva de cache dos arquivos que já estão na pasta compartilhada do Storage no Azure
  • Servidor com dados onde o conteudo será copiado para o Azure e acrescentado

O primeiro passo é instalar as bibliotecas PowerShell do Azure (AZ) no servidor, o que pode ser feito seguindo os passos na página https://docs.microsoft.com/pt-br/powershell/azure/install-az-ps?view=azps-2.6.0&wt.mc_id=4029139

Após ter o Azure CLI instalado, baixe e instale o Agente de Sincronização que é muito simples de ser feito.

AZFAgente

registerserver

Após isso, já será possivel ver o servidor no painel do Azure:

serverregistrado

Nesse passo não é necessário configurações nem qualquer definição adicional, já que se trata de uma operação simples de agente.

Criando o Endpoint (Servidores Cache)

Aqui é onde realmente criamos o serviço e vemos a mágica acontecer!

Entrando dentro do grupo de sincronização que criamos anteriormente e usar a opção Adicionar ponto de extremidade ou Add Endpoint para incluir o servidor no grupo que criamos.

Extremidade

Vamos ver as opções que estão listadas:

  1. Caminho – É o diretório que queremos que fique sincronizado, lembrando que se estiver vazio para um grupo já existente ele irá baixar o conteudo conforme for sendo utilizado. Se for um servidor que já contem arquivos, esses serão carregadso para o Azure.
    Importante: Não é possivel usar a unidade root (C:) e sim um disca parte por conta dos arquivos de sistema.
  2. Percentual livre no volume – Não definimos quanto irá ser usado para cache e sim quanto de espaço no volume deverá ficar livre. Pode parecer um calculo invertido mas não é por conta de outros arquivos que o mesmo disco contenha. Por exemplo, se o volume é de 100GB e contem outros arquivos totalizando 40GB e definirmos que queremos deixar 50% do disco livre, apenas 10GB será usado pelo cache (50% de 100GB=50GB sempre livre) e conforme o uso de outros arquivos aumentar que não sejam sincronizados, menos irá ter espaço para o cache.
    Dica: Por conta dessa dificuldade, prefira utilizar um volume dedicado para fazer o File Sync
  3. Cache apenas de arquivos acessados ou modificados a x dias – Vimos que temos a opção de preservar um percentual do disco. Mas e se arquivos antigos ocupam muito espaço não irá adiantar muito. Nesse caso do meu exemplo qualquer arquivo com mais de 60 dias irá automaticamente para o Azure e será deletado no disco do servidor, ganhando espaço livre mesmo que o percentual de cache ainda esteja disponivel.

Painel

Ao finalizar essa configuração já é possivel acompanhar a sincronização clicando no servidor:

Server sync

Assim que sincronizado, podemos usar os paineis de metricas abaixo da tela para criar alertas quando ocorrerem erros ou distorções:

Metricas

No meu exemplo posso utilizar uma regra que se o numero de arquivos sincronizados for maior que 100 para upload no intervalo de 15 minutos pode ser uma alteração em massa causada por uma cópia indevida ou mesmo um malware.

Azure Virtual Datacenter (VDC) Parte I- Migração AS IS e TO BE

Quando trabalhamos em um projeto de migração para Public Cloud e o desenho é voltado a Azure, é muito comum os cenários de “AS IS”.

AS IS

Para os não iniciados com este termo, “AS IS” significa levar como está me ingles, ou seja copiar as VMs de um ambiente a outro sem qualquer alteração, utilizando o Azure como um virtualizador.

Em geral os modelos de migração AS IS não são eficientes, pois consomem muito recursos em IaaS (VMs) que custam caro, não aproveitando nada de serviços (SaaS ou PaaS) que são mais baratos. Porem, a vantagem é que é mais rápido e não exige mudanças.

TO BE (ou LIft and Shift)

Já as boas migrações são as “TO BE”, que em tradução livre seria “SERÁ” no sentido de transformação. O modelo de migração TO BE tem como premissa usar os serviços e não apenas migrar VMs.

Migrações TO BE são trabalhosas e mais demoradas, uma vez que esse mapeamento envolve entender o que está DENTRO DAS VMs.

O custo de execução é muito menor pois SaaS e PaaS tem vantagens financeiras grandes quando comparados ao modelo de IaaS.

Por exemplo, no AS IS um servidor IIS e outro de SQL serão simplesmente copiados os discos virtuais e iniciados. Já no modelo TO BE iremos isolar cada uma das aplicaçÕes que o IIS executa e criar Web Plan para isolamento e Web Services para cada site, e no caso do SQL Server usariamos o serviço de Banco de Dados (SaaS ou PaaS).

Utilizando o Service MAP

O primeiro passo para fazer uma migração é mapear o que cada VMs ou servidor fisico executa no ambiente.

Para isso utilizamos o Service MAP: http://www.marcelosincic.com.br/post/Azure-Log-Insigths-Service-Map.aspx

Com ele será possivel ver as interligações e serviços que cada servidor utiliza entre no ambiente e mapear qual serviço temos para substituir.

Entendendo o Conceito de Datacenter do Azure

Para desenhar um datacenter usando VMWare, Hyper-V ou KVM é necessário que o desenho dos hosts, rede e outros detalhes sejam feitos por especialistas no hypervisor.

O mesmo vale para Azure, precisamos entender os diferentes componentes para desenhar um datacenter com seus recursos.

Para isso, é necessário estudar, e muito.   Tambem é necessário quebrar os paradigmas de datacenter fisico e pensar em serviços.

Uma das formas de fazer isso é utilizar o Guide da própria Microsoft disponivel em https://docs.microsoft.com/en-us/azure/architecture/vdc/

Esse guia tem todas as perspectivas de um datacenter virtual, o ajudará a entender a camada de virtualização, rede, segurança, serviços e o lift and shift, ou seja a transformação para um modelo mais eficiente.

Para começar baixe a apresentação disponivel em https://aka.ms/VDC/Deck

Conclusão

Não é fácil fazer uma migração correta, mas é possivel e o resultado será muito melhor.

Ao longo do mês iremos explorar os itens que compõe o VDC e verá que é possivel fazer esse tipo de migração com recursos novos, mais eficientes e custos apropriados.