O blog da AWS
Como otimizar os custos do Amazon WorkSpaces
Por Hernán Fernández, Sr. Technical Account Manager na AWS
Introdução
Com a pandemia COVID-19, muitas empresas foram forçadas a fechar seus escritórios e mudar para um modelo de trabalho remoto da noite para o dia. Dado o pouco tempo disponível para enfrentar esse desafio, o Amazon WorkSpaces se tornou a solução que permite provisionar desktops virtuais de forma rápida, segura, escalável e com baixo custo. No entanto, quando centenas ou milhares de colaboradores estão usando essa tecnologia, torna-se necessário ter um bom gerenciamento e controle de custos.
Como o custo de um desktop do Amazon WorkSpaces é determinado?
Os custos do Amazon WorkSpaces são categorizados primeiro por tipo de sistema operacional e licença. São eles: Linux, Windows e Windows Bring-Your-Own-License (BYOL), onde o cliente pode trazer sua própria licença do Windows. Em seguida, eles variam dependendo dos recursos de hardware, como o número de CPUs virtuais (vCPUs) e a memória. Isso é chamado de pacote ou bundle. E, finalmente, os custos variam de acordo com o tamanho do volume de disco alocado para o desktop virtual.
Existem duas modalidades para a cobrança do Amazon WorkSpaces. Primeiro, é possível pagar um valor fixo por todo o mês de uso (chamado “AlwaysOn”) ou então pagar um valor fixo menor pelos custos de infraestrutura e armazenamento somado a um valor adicional para cada hora de uso; este último é chamado “AutoStop”.
Como definir qual tipo de cobrança usar?
Se o desktop virtual do Amazon WorkSpaces precisar estar ativo 24 horas por dia e 7 dias por semana durante todo o mês, será mais barato usar o modo AlwaysOn.
Se a quantidade de horas de uso for menor, é aconselhável realizar o seguinte cálculo.
Primeiro: Você deve checar a página com os preços atualizados para a região em que está operando. Para os fins deste exercício, usaremos a região us-east-1 (North Virginia), o sistema operacional Windows e o pacote chamado “performance” com volume raiz de 80 GB e 10 GB de volume do usuário.
Para descobrir qual é o limite de horas por mês em que é aconselhável usar um modo de cobrança ou outro, usaremos a seguinte fórmula:
Subtraia valores fixos, preço por mês e preço por hora. (US $45 – US $7,25) = US $37,5. Em seguida, dividimos esse valor pelo valor por hora de US $0,47, o que nos dá um total de 80,3 horas.
O valor de 80,3 horas de uso por mês é o limite máximo no qual é aconselhável usar o modelo de cobrança por hora (AutoStop). Em outras palavras, se você planeja usar um WorkSpace com essa configuração de recursos por mais de 80,3 horas por mês, é aconselhável usar o modelo preço por mês, Always On.
Esse cálculo deve ser realizado para cada tipo de sistema operacional e pacote a ser provisionado, o que pode ser complexo de gerenciar ao longo do tempo, especialmente se você tiver centenas ou milhares de WorkSpaces.
Como automatizar o tipo de cobrança a ser usado?
A alternativa é automatizar a alteração de cobrança e, para isso, é recomendável usar o Cost Optimizer for Amazon WorkSpaces.
Essa solução monitora o uso do WorkSpaces por usuário e converte automaticamente o tipo de cobrança para o mais barato (por hora ou mensal).
Ele é implementado via CloudFormation, leva aproximadamente 5 minutos e tem um baixo nível de dificuldade.
Para começar, é aconselhável revisar o site da solução “Workspaces Cost Optimizer” e o guia de implantação.
Em seguida, para começar a implantação, você pode clicar no botão “Launch in the AWS Console” usando a conta e a região em que seus WorkSpaces estão localizados.
Isso o levará ao console do CloudFormation com o template do Otimizador de Custos já selecionado.
Defina um nome para o Stack, por exemplo: “WorkSpacesCostOptimizer”.
Em seguida, você precisa definir os parâmetros de configuração:
- Você pode definir o uso de uma nova VPC para a tarefa do AWS Fargate que será implantada ou usar uma VPC existente.
- O modo Dry Run apenas simula a operação e escreve um relatório diário no S3; no entanto, não fará a alteração do modo de cobrança. Para que a solução funcione automaticamente, você deve definir esse valor como “No”.
- Por fim, você precisa definir os parâmetros de preço: o limite de horas para cada tipo de pacote. Isso corresponde ao limite de horas em que o Amazon WorkSpaces será convertido para o modelo de cobrança mensal, e você deve calculá-lo para sua região e sistema operacional da AWS. Se usarmos o exemplo já descrito, devemos inserir no parâmetro “PerformanceLimit” o valor “80”, para que após 80 horas o sistema mude o modelo de cobrança para “AlwaysOn”.
Depois de inserir os parâmetros necessários, continue com os parâmetros padrão e prossiga com a criação do Stack.
Depois que o stack for implantado, vá para a seção Outputs, onde você encontrará o nome do bucket S3 onde os relatórios diários serão salvos no formato CSV. A solução é executada automaticamente todos os dias às 23:55 UTC.
Esses relatórios serão criados diariamente para cada um dos desktops virtuais:
- WorkspaceID: ID do Workspace
- Billable Hours: O número de horas usadas no mês atual
- Usage Threshold: O limite configurado para o tipo de pacote descrito em “Bundle Type”
- Change Reported: Indica se houve uma alteração no modo de cobrança nas últimas 24 horas
- Em caso de alteração do modo de cobrança, a operação será descrita em “Initial Mode” e “New Mode”.
- Username: O nome de usuário de quem usa o WorkSpaceID
- DirectoryID: O ID do diretório em que o usuário está localizado.
Outro uso desse relatório é revisar usuários com 0 horas de uso no Amazon WorkSpaces no final do mês; essas informações podem ajudá-lo a decidir se você precisa manter ou encerrar o WorkSpace para economizar ainda mais.
Também é possível automatizar o ciclo de vida dos WorkSpaces. Isso permitirá que você provisione automaticamente um desktop virtual ao criar um usuário em seu Active Directory e encerrá-lo ao excluir este usuário ou movê-lo para uma OU diferente.
Para mais informações sobre essa solução, você pode verificar o seguinte link:
Gerencie o ciclo de vida do Amazon WorkSpaces automaticamente com usuários no Active Directory
Conclusões
- Neste artigo, analisamos os fatores que influenciam os custos do Amazon Workspaces.
- Também explicamos como podemos automatizar alterações no tipo de cobrança do Amazon Workspaces para reduzir o custo do serviço com impacto operacional mínimo.
- Por fim, vimos como usar os relatórios do WorkSpace Cost Optimizer para identificar usuários que talvez não precisem de um WorkSpace.
Este artigo foi traduzido do Blog da AWS em Espanhol.
Sobre o autor
Hernán Fernández é engenheiro de contas corporativas na AWS. Em sua função, ele ajuda os clientes em seus processos da adoção de computação em nuvem, além de apoiá-los a aplicar as melhores práticas reduzindo os riscos aos seus serviços. Trabalha há mais de 15 anos como profissional de tecnologia da informação, com foco em tecnologias Linux, infraestrutura e projetos de negócios.
Sobre os revisores
Daniel Biazus é Sr. Technical Account Manager na AWS.
Jose Vitor Malafaia é Gerente Técnico de Contas na AWS.