A Tereos é um dos maiores grupos mundiais na produção de açúcar, etanol,
amidos e proteína de trigo, com instalações industriais na Europa, Brasil,
África e Ásia e muita proximidade com os mercados locais. No Brasil, a empresa
está em as líderes na produção de açúcar, etanol e energia gerada a partir da
biomassa da cana. As atividades comerciais, industriais e agrícolas do Grupo
estão em constante expansão para atender os consumidores com o mesmo
compromisso de qualidade em todos os polos operacionais.
O ponto de partida da Tereos foi a criação de uma cooperativa de
destilarias por um grupo de agricultores em Origny, na região de Aisne, no
norte da França. A fábrica processava 400 toneladas de beterraba-açucareira por
dia e, 87 anos depois, o Grupo se tornou o segundo maior produtor mundial de
açúcar. Atualmente, o Grupo Tereos [1] está presente em 15 países e conta com cerca
de 15 mil colaboradores em unidades por todo o mundo.
A Darede, empresa parceira Premier AWS, conta com
uma série de profissionais altamente capacitados, e por isso foi convidada para
participar desse projeto. A experiência em migração e sustentação também foi um
fator preponderante para o convite. (veja também o case de uso AppStream 2.0 da
Monouso
[6][7])
O Desafio
Sabendo que em breve iria precisar de um esforço
em trabalho e investimentos de atualização de seu parque de servidores físicos,
devido à obsolescência natural de hardware e/ou renovação de contrato de
suporte de hardware, a Tereos [1] iniciou em 2020 um trabalho de análise para
levar o seu workload para a AWS [15], antes que esses investimentos precisassem
ser realizados. As suas aplicações empresariais Sênior [5] estavam em execução
em um ambiente de Microsoft Remote Desktop Services [4], acessadas via browser
pelos usuários.
Assim, a Tereos [1] procurou, dentre as várias
opções de serviços oferecidos na AWS [15], uma que atendesse as suas aplicações
Sênior [5] sem realizar alterações no código e que funcionasse da mesma forma
que hoje, por meio de aplicações entregues via Microsoft Remote Desktop
Services [4]. Além disso, era de grande importância que fosse um serviço
gerenciado pela AWS [15], de forma que a Tereos
[1] apenas se preocupasse com o software entregue aos usuários, e não
com a infraestrutura que manteria o software em funcionamento. Isso causaria um
impacto positivo na equipe de TI da Tereos [1] para que eles focassem no mais
importante, as melhorias para o negócio, e reduzissem assim o tempo gasto em
suporte na infraestrutura.
Outro fator importante é que a solução precisaria
comportar os cerca de 100 usuários da ferramenta, de forma simultânea em
horários de pico, e que reduzisse a capacidade em horários com pouco uso, de
forma a reduzir o custo.
Dentre as premissas levantadas pela Tereos [1],
era imprescindível que o serviço utilizado fosse seguro, estável, escalável e
possuísse recursos para gestão da cópia de dados e impressão remota. Também foi
levantada a necessidade de autenticação centralizada para gestão de usuários,
uma vez que o serviço Microsoft Active Directory [6] era utilizado como solução
de identidade.
Dessa forma, a Tereos [1] escolheu o AWS APPSTREAM 2.0 [3] para atender
a todos os requisitos da aplicação e da empresa, sem impactar na configuração e
modo de funcionamento atual da aplicação, ao mesmo tempo em que permite uma
melhor eficiência e facilidade de escalonamento sem a limitação física de um
ambiente on-premises.
O processo de configuração envolveu a preparação de uma imagem Microsoft
Windows Server 2019 [9] no AWS APPSTREAM 2.0 [3] com todos os
aplicativos fundamentais, garantindo que todos os usuários tivessem as mesmas
configurações aplicadas de forma rápida e eficaz. Após a preparação da imagem
padronizada, era necessário aplicar as permissões de acesso para grupos
específicos, pois não eram todos os colaboradores que deviam ter acesso ao
ambiente.
Desafios e pontos de atenção deste cenário:
- Necessidade de controles de segurança contra upload ou download de informações não autorizadas;
- Necessidade de mapeamento de impressoras;
- Escalar rapidamente a capacidade disponível para atender o crescimento de uso por parte de usuários simultâneos;
- Utilização das aplicações sem a obrigação de instalar um cliente nas estações de trabalho dos usuários;
- Time de suporte especializado para rápida resolução em caso de problemas, ou dúvidas e dificuldades técnicas por parte dos usuários.
- Necessidade de manter as versões atuais da aplicação compatíveis com os demais sistemas (sem alterar código da aplicação para funcionamento em ambiente de nuvem, ou seja, AS-IS).
- Possibilidade de permitir o acesso a usuários remotos, mesmo que sem conexão com a VPN, ao mesmo tempo em que se garante criptografia ponta-a-ponta e segurança com controle de acesso para usuários da empresa somente.
Abaixo uma descrição do ambiente da configuração do serviço de AWS AppStream 2.0 [3]:
- Instâncias AWS AppStream 2.0 [3] do tipo stream.standard.large;
- Imagem base Windows Server 2019 [9];
- Amazon AWS IAM Identity Center [10].
- AWS AD Connector [11];
- Microsoft Active Directory [6];
- AWS EC2 [12].
A figura 1 é um diagrama macro da solução até então utilizada pela
Tereos no ambiente de Microsoft Remote Desktop Services [4]:
Arquitetura e Implantação
Baseando-se nos elementos apontados acima, a Darede planejou e arquitetou o ambiente da Tereos [1] na AWS
utilizando o AWS AppStream 2.0 [3]. Esta solução foi utilizada devido a sua
robustez e também por ser uma ferramenta que atendesse aos requisitos apontados
pelo negócio, tais como escalabilidade, performance e segurança. A Tereos [1]
entendeu desde o princípio as limitações e desafios desse projeto, dado o pouco
espaço de tempo disponível para que o ambiente estivesse completamente
operacional.
A decisão foi alinhada aos diversos benefícios
apresentados pela AWS e aos elementos que proporcionariam ao negócio um aumento
expressivo de performance nas operações.
Abaixo estão as definições e funcionalidades da solução proposta para a Tereos [1], em execução na AWS:
- Integração das imagens do AWS AppStream 2.0 [3] com o domínio do Active Directory, para que fosse possível a aplicação Sênior [5] acessar os dados e documentos no File Server da empresa de forma transparente aos usuários, assim como é hoje;
- Integração do IAM Identity Center [10] com o Microsoft Active Directory [8] da Tereos, para que o sistema Sênior [5], pudesse ser acessado com os acessos dos usuários que tenham acesso ao Microsoft Active Directory [8] da empresa;
- Criação de fleets [13] com capacidades adequadas para o trabalho dos departamentos;
- Configuração das stacks [13] para que façam a validação dos usuários permitidos de acessar o serviço AWS AppStream 2.0 [3] no Microsoft Active Directory [8] da Tereos;
- Configuração de regras de auto scaling diferentes para horários de pico, e horários de pouco uso, para garantir que os usuários sempre tivessem a aplicação disponível sem aguardar muito tempo nos horários em que mais precisassem. Ao mesmo tempo há um controle de gastos por manter disponível apenas o necessário, com um pouco de recursos adicionais nos horários de pico e horários de pouco uso.
A figura 2
é um diagrama macro da solução proposta para a Tereos, que busca descrever o
ambiente final:
Dimensionamento de Recursos
O dimensionamento de recursos na AWS foi realizado inicialmente com base no consumo médio de memória e processamento de cada aplicação utilizada pelos colaboradores. Após testes iniciais de performance, o dimensionamento foi feito dentro da real necessidade de utilização, conforme informação de performance
reportadas pelos usuários, e com acompanhamento das instâncias disponibilizadas.
Para composição deste cenário, os seguintes serviços e funcionalidades AWS foram utilizados como solução proposta e apresentada para a Tereos:
- Direct Connect: Armazenar Capacidade de 1Gbps (Serviço já se encontrava implantado).
- AWS AppStream 2.0: Armazenar Foi criado um fleet com capacidade de até 140 usuários do tipo stream standard large, sem configuração de armazenar os dados utilizados na sessão para o usuário.
- Região AWS: Hospedagem de serviços na região AWS São Paulo;
- Autenticação: Dentro da região São Paulo
foi utilizado o AWS AD Connector [11] que realiza a interface de comunicação
com o ambiente Microsoft Active Directory [8] localizado em uma subnet da AWS. - Acesso: Configurado o IAM Identity Center [10], para realizar a autenticação com o Microsoft Active Directory [8] do cliente, por meio do AWS AD Connector [11]. Essa ferramenta foi importante para facilitar o gerenciamento e fornecer um link único de acesso para os usuários, além de controle de acesso ao AWS AppStream 2.0 [3] apenas para usuários que tenham sido liberados previamente, assim como controlar quais stacks e/ou aplicações eles podem acessar.
Modelo de Serviços AWS
Devido à característica de utilização das
aplicações, tempo médio de uso, necessidade de rápido provisionamento de
instâncias e melhor custo-benefício, optou-se pelo uso de fleet no modelo AlwaysOn
[14]. O cliente optou por não correr o
risco de ter instâncias da fleet desligadas por pouco uso, por características
de uso da empresa quanto às aplicações migradas para a solução. Com base nestas
informações, garantir uso instantâneo em horário comercial para a maioria dos usuários
era primordial para a Tereos [1].
Resultado
Ao término do projeto, a Tereos [1] passou a contar com um ambiente
seguro, estável e escalável para a aplicação Sênior [5]. Outro benefício foi a
melhoria com testes que agora podem ser realizados de forma prévia e controlada
em fleets e stacks [13], isoladas quando precisar ocorrer qualquer atualização
na aplicação. Antes de disponibilizar as versões atualizadas aos usuários,
agora há como testar extensivamente em um ambiente seguro e controlado, antes
de atualizar as imagens das fleets e Stack [13] em produção. Além disso, a
Tereos [1] agora conta com os benefícios da nuvem AWS [15] que permite a
execução de suas aplicações de forma segura, escalável e resiliente. Com isso,
a equipe da Tereos pode também se preocupar apenas com a gestão do sistema
Sênior [5], enquanto a AWS [15] cuida de toda a infraestrutura em que a
aplicação é executada, o que antes era feito pela equipe de TI da Tereos [1],
pois havia a necessidade de gerenciar e manter operacional o Microsoft Remote
Desktop Services [4]. Isso ajudou a Tereos [1] a direcionar os seus
colaboradores de TI para outras funções dentro da empresa.
- Escalabilidade: possibilidade de subir 10, 20, 50 ou mais instâncias AWS AppStream 2.0 [3] para os colaboradores em minutos, e aumentar ou reduzir a capacidade a qualquer momento;
- Gestão de acessos centralizado: Os usuários com usuário e senha válidos no Microsoft Active Directory [8], e que tenham sido configurados, podem utilizar o serviço do AWS AppStream 2.0 [3] de forma rápida e segura;
- Facilidade de acesso: Os colaboradores podem acessar a aplicação de forma instantânea a partir de seu próprio navegador, sem a necessidade de instalar clientes em suas estações de trabalho.
- Conexão criptografada de ponta a ponta via serviço gerenciado AWS;
- Infraestrutura gerenciada pela AWS [15];
- Performance: Por estar em um ambiente em que o hardware é sempre atualizado e que se pode alterar o tamanho das instâncias a qualquer momento, há um aumento de performance por estar em execução em hardwares modernos, sem precisar se preocupar com grandes investimentos e atualizações de hardware em ambientes on-premises.
- Usuários em Home Office podem acessar a aplicação sem o uso de VPN ao mesmo tempo em que se garante a segurança dos dados por impedir upload e download de dados para a estação do usuário, além de existir criptografia no tráfego dos dados.
Futuro
Com o aumento do uso de recursos, estamos estudando:
- Adição de novas aplicações disponibilizadas aos usuários via AWS AppStream 2.0 [3];
- Descontinuar o Microsoft Remote Desktop Services [4] e migrar as aplicações para o AWS AppStream 2.0 [3]:
- Adoção de modelo DAAS na AWS por meio da solução Amazon Workpaces [16];
- Revisão de modelos de uso na AWS;
- Modernização de workloads na AWS.
[1] https://br.tereos.com/pt-pt/
[2] https://www.darede.com.br/
[3] https://aws.amazon.com/pt/appstream2/
[4] https://learn.microsoft.com/en-us/windows-server/remote/remote-desktop-services/welcome-to-rds
[5] https://www.senior.com.br/
[6] https://www.darede.com.br/monouso/
[7] https://www.monouso.com.br/
[9] https://www.microsoft.com/pt-br/evalcenter/evaluate-windows-server-2019
[10] https://aws.amazon.com/pt/iam/identity-center/
[11] https://docs.aws.amazon.com/pt_br/directoryservice/latest/admin-guide/directory_ad_connector.html
[12] https://aws.amazon.com/pt/ec2/
[13] https://docs.aws.amazon.com/appstream2/latest/developerguide/managing-stacks-fleets.html
[14] https://aws.amazon.com/appstream2/pricing/?nc1=h_ls