Data: 29/06/22
Autores:
Realizar um estudo para conhecer melhor como seria o custo mensal para manter a infraestrutura de Desenvolvimento da SETIC em um ambiente Cloud
Com a necessidade de sempre melhorar a segurança do ambiente e das aplicações, além da alta disponibilidade dos sistemas se faz necessário realizar um estudo sobre os recursos e custos para manter o ambiente da SETIC na nuvem.
Dessa forma foi solicitado pela diretoria o estudo para tal necessidade.
Atualmente todo o ambiente de desenvolvimento está disponível em recursos on-premisse.
Servidores, VMs, Banco de Dados, Storage, Versionadores, Testadores, Orquestradores de containers, etc. em infraestrutura local disponibilizado para o Estado por um link de internet que por vezes fica indisponível ou com alta latência nos acessos às aplicações disponibilizadas pela SETIC.
Realizamos o levantamento das informações pertinentes da nossa infraestrutura de ambiente de desenvolvimento para fornecer as cotações de custos e tomadas de decisão.
Abaixo está toda a infraestrutura disponível para o ambiente de desenvolvimento mantida pelo time DevOps.
Orquestrador de Containers OCP - Openshift Container Platform
| OCP - OPENSHIFT CONTAINER PLATFORM 4.10.22, KUBERNETES V1.23 | - | - | - | - | - | - |
| SERVIDOR | SO | VCPU | RAM (GB) | DISCO (GB) | DISCO (TB) | MÉDIA DE IOPS |
| MASTER NODE 1 | Red Hat Enterprise linux CoreOS 4.10 | 4 | 16 | 120 | - | 76 |
| MASTER NODE 2 | Red Hat Enterprise linux CoreOS 4.10 | 4 | 16 | 120 | - | 78 |
| MASTER NODE 3 | Red Hat Enterprise linux CoreOS 4.10 | 4 | 16 | 120 | - | 73 |
| Routers + Logging + Monitoring + Registry | ||||||
| WORKER NODE 1 | Red Hat Enterprise linux CoreOS 4.10 | 8 | 32 | 120 | - | 7 |
| WORKER NODE 2 | Red Hat Enterprise linux CoreOS 4.10 | 8 | 32 | 120 | - | 6 |
| WORKER NODE 3 | Red Hat Enterprise linux CoreOS 4.10 | 8 | 32 | 120 | - | 6 |
| Aplicações Produção | ||||||
| WORKER NODE 1 | Red Hat Enterprise linux CoreOS 4.10 | 16 | 32 | 120 | - | 5 |
| WORKER NODE 2 | Red Hat Enterprise linux CoreOS 4.10 | 16 | 32 | 120 | - | 4 |
| WORKER NODE 3 | Red Hat Enterprise linux CoreOS 4.10 | 16 | 32 | 120 | - | 6 |
| WORKER NODE 4 | Red Hat Enterprise linux CoreOS 4.10 | 16 | 32 | 120 | - | 6 |
| Aplicações Homologação | ||||||
| WORKER NODE 1 | Red Hat Enterprise linux CoreOS 4.10 | 8 | 16 | 120 | - | 3 |
| WORKER NODE 2 | Red Hat Enterprise linux CoreOS 4.10 | 8 | 16 | 120 | - | 6 |
| Aplicações Desenvolvimento | ||||||
| WORKER NODE 1 | Red Hat Enterprise linux CoreOS 4.10 | 8 | 16 | 120 | - | 11 |
| WORKER NODE 2 | Red Hat Enterprise linux CoreOS 4.10 | 8 | 16 | 120 | - | 3 |
| Ferramentas de CI/CD | ||||||
| WORKER NODE 1 | Red Hat Enterprise linux CoreOS 4.10 | 8 | 16 | 120 | - | 1 |
| WORKER NODE 2 | Red Hat Enterprise linux CoreOS 4.10 | 8 | 16 | 120 | - | 1 |
| Storage Node (Nodes do OC) | ||||||
| STORAGE NODE 1 | Red Hat Enterprise linux CoreOS 4.10 | 10 | 32 | 120 | 10 | 232 |
| STORAGE NODE 2 | Red Hat Enterprise linux CoreOS 4.10 | 10 | 32 | 120 | 10 | 249 |
| STORAGE NODE 3 | Red Hat Enterprise linux CoreOS 4.10 | 10 | 32 | 120 | 10 | 247 |
| LOAD BALANCER 1 | Red Hat Enterprise linux CoreOS 4.10 | 4 | 8 | 40 | - | 0 |
| LOAD BALANCER 2 | Red Hat Enterprise linux CoreOS 4.10 | 4 | 8 | 40 | - | 1 |
Orquestrador de Containers OKD - Origin Kubernetes Distribution
| OKD - ORIGIN KUBERNETES DISTRIBUTION 3.11, KUBERNETES V1.11 | ||||||
| SERVIDOR | SO | VCPU | RAM (GB) | DISCO (GB) | DISCO (TB) | MÉDIA DE IOPS |
| Routers + Logging + Monitoring + Registry | MASTER NODE 1 | CentOS Linux 7 | 12 | 32 | 300 | 43 |
| MASTER NODE 2 + STORAGE NFS | CentOS Linux 7 | 12 | 32 | 300 | 1 | 151 |
| Development + Staging + Production | ||||||
| WORKER NODE 1 | CentOS Linux 7 | 16 | 32 | 120 | - | 6 |
| WORKER NODE 2 | CentOS Linux 7 | 16 | 32 | 120 | - | 8 |
| WORKER NODE 3 | CentOS Linux 7 | 16 | 32 | 120 | - | 29 |
| WORKER NODE 4 | CentOS Linux 7 | 16 | 32 | 120 | - | 11 |
| WORKER NODE 5 | CentOS Linux 7 | 16 | 32 | 120 | - | 14 |
| WORKER NODE 6 | CentOS Linux 7 | 16 | 32 | 120 | - | ?? |
| WORKER NODE 7 | CentOS Linux 7 | 16 | 32 | 120 | - | ?? |
| WORKER NODE 8 | CentOS Linux 7 | 16 | 32 | 120 | - | 1 |
| WORKER NODE 9 | CentOS Linux 7 | 16 | 32 | 120 | - | ?? |
| WORKER NODE 10 | CentOS Linux 7 | 16 | 32 | 120 | - | 1 |
Ceph Storage Cluster
| CEPH STORAGE CLUSTER 15.2.8 | ||||||
| SERVIDOR | SO | VCPU | RAM (GB) | DISCO (GB) | DISCO (TB) | MEDIA DE IOPS |
| MASTER + WORKER + STORAGE | CentOS Linux 8 | 16 | 32 | 300 | 1 | 25 |
| MASTER + WORKER + STORAGE | CentOS Linux 8 | 16 | 32 | 300 | 1 | 23 |
| MASTER + WORKER + STORAGE | CentOS Linux 8 | 16 | 32 | 300 | 1 | 18 |
| MASTER + WORKER + STORAGE | CentOS Linux 8 | 16 | 32 | 300 | 1 | 20 |
| MASTER + WORKER + STORAGE | CentOS Linux 8 | 16 | 32 | 300 | 1 | 17 |
| MASTER + WORKER + STORAGE | CentOS Linux 8 | 16 | 32 | 300 | 1 | 19 |
CI/CD - GITLAB
| CI/CD | ||||||
| SERVIDOR | SO | VCPU | RAM (GB) | DISCO (GB) | DISCO (TB) | MÉDIA DE IOPS |
| GITLAB - 15.1.3 | Arch Linux | 16 | 32 | 300 | 1 | 27 |
| GITLAB RUNNER 1 - 15.2.0 | Arch Linux | 16 | 32 | 300 | 42 | |
| GITLAB RUNNER 2 - 15.2.0 | Arch Linux | 16 | 32 | 300 | 23 |
Com o levantamento das informações concluídas. Entramos em contato com duas acessórias em Cloud e solicitamos orçamentos em uma infraestrutura baseada no nosso ambiente.
Com a solicitação pela diretoria de um orçamento nas principais plataformas clouds para saber o custo/mês mantendo o nosso ambiente DevOps e as aplicações na nuvem, foi realizado a solicitação de orçamentos para duas empresas especializadas no ramo além de consultas nas próprias plataformas através de suas calculadoras on-line.
Abaixo segue os orçamentos disponibilizados atendendo nosso atual ambiente.
| Demonstrativo de recurso computacional considerado, e custos estimados na AWS | |||||||||||
| Item | Estrutura atual | Ambientes | Modalidade | Reserva | Sob Demanda | Pico uso | Disco | Freq Snapshot | Mudança por Snapshot | DTO Mês(GB) | Valor Total R$ |
| 1 | OCP | Masters / EKS | Uso constante | — | — | ---- | — | — | — | — | 767,81 |
| 2 | OCP | Routers + Logging + Monitoring + Registry | Auto Scalling | 1yr | — | 5d/ semana, 8h/dia | 360 gb | 2x dia | 1 gb | 10 | 8.933,06 |
| 3 | OCP | Aplicações Produção | Auto Scalling | 1yr | — | 5d/ semana, 12h/dia | 480 gb | 2x dia | 1 gb | 200 | 19.818,76 |
| 4 | OCP | Aplicações Homologação, Aplicações Desenvolvimento e Ferramentas CI/CD | Sob demanda | 1yr | 40h/ semana | — | 720 gb | 1x dia | 1gb | 10 | 8.510,66 |
| 5 | OCP | Load Balancers | Uso constante | 1yr | — | — | 80 gb | 1x dia | 1gb | 300 | 2.780,93 |
| 6 | OCP | Storage (S3) | Variada | — | — | — | 30360 gb | — | — | — | 7.214,33 |
| 7 | OKD | Masters / EKS | Uso constante | — | — | — | — | — | — | 767,81 | — |
| 8 | OKD | Development + Staging + Production | Auto Scalling | 1yr | 5d/ semana, 12h/dia | 1200 gb | 2x dia | 10 gb | 300 | 62.447,67 | |
| 9 | OKD | Storage (S3) | Auto Scalling | — | — | — | 7800 gb | — | — | — | 2.201,50 |
| Total Geral Mensal | R$ 113.442,53 |
Observações gerais informadas pela assessoria:
Observações por ambiente:
Itens 1 e 7 – Escolha do uso de EKS para os masters do kubernetes, de forma gerenciada pela AWS
Itens 2, 5 e 10 – Pode ser feito estudo de uso de serviços nativos da AWS para as funções descritas, a partir de métricas detalhadas de cada um. A tendência é que fique mais barato, e gere menos esforço operacional para Setic manter estas funções, além de mais resiliente
Item 6 – Não é informado o tipo de storage aqui, e seguimos com estimativa de storage de objetos, levando em consideração que no item 9 a tecnologia é essa (CEPH)
Obviamente estas informações não constituem uma proposta comercial, e para finalizar deixarei alguns pontos a considerar como próximos passos:
Este é um estudo preliminar de custos
Podemos otimizar a arquitetura, mudar itens para melhorar os valores, e entregar evolução tecnológica
Como falamos em conferência, este seria o caminho com menos camadas de administração do kubernetes em AWS, mas também existem possibilidades com o Openshift gerenciado, Openshift instalado em instâncias de máquina virtual, e também dentro de uma estrutura VMWare na AWS
O envolvimento da AWS trará o benefício de créditos para testes, capacitação do time Setic, e incentivos para otimizar o custo do projeto
Em paralelo aos orçamentos realizados pelas empresas de assessoria, também foram realizados orçamentos pelos sites AWS, Azure e Google Cloud através das calculadoras on-line.
Foram cotadas instâncias referentes a cada VMs de acordo com suas configurações.
Não estão inclusos os serviços. Segue abaixo a informação dos valores em (US$ - Dólares)
OCP - OPENSHIFT CONTAINER PLATFORM,
| OCP - OPENSHIFT CONTAINER PLATFORM 4.10.22 | AWS | AZURE Série Bs | - | - | GCP | ||||
| SERVIDOR | VCPU | RAM (GB) | DISCO (GB) | DISCO (TB) | TOTAL ($) | VCPU | RAM (GB) | TOTAL ($) | TOTAL ($) |
| MASTER NODE 1 | 4 | 16 | 120 | 73,54 | 4 | 16 | 155,8 | 114,67 | |
| MASTER NODE 2 | 4 | 16 | 120 | 73,54 | 4 | 16 | 155,8 | 114,67 | |
| MASTER NODE 3 | 4 | 16 | 120 | 73,54 | 4 | 16 | 155,8 | 114,67 | |
| Routers + Logging + Monitoring + Registry | |||||||||
| WORKER NODE 1 | 8 | 32 | 120 | 135,08 | 8 | 32 | 301,07 | 217,34 | |
| WORKER NODE 2 | 8 | 32 | 120 | 135,08 | 8 | 32 | 301,07 | 217,34 | |
| WORKER NODE 3 | 8 | 32 | 120 | 135,08 | 8 | 32 | 301,07 | 217,34 | |
| Aplicações Produção | |||||||||
| WORKER NODE 1 | 16 | 32 | 120 | 199,61 | 16 | 32 | 593,07 | 351,02 | |
| WORKER NODE 2 | 16 | 32 | 120 | 199,61 | 16 | 32 | 593,07 | 351,02 | |
| WORKER NODE 3 | 16 | 32 | 120 | 199,61 | 16 | 32 | 593,07 | 351,02 | |
| WORKER NODE 4 | 16 | 32 | 120 | 199,61 | 16 | 32 | 593,07 | 351,02 | |
| Aplicações Homologação | |||||||||
| WORKER NODE 1 | 8 | 16 | 120 | 105,81 | 8 | 16 | 243,09 | 181,51 | |
| WORKER NODE 2 | 8 | 16 | 120 | 105,81 | 8 | 16 | 243,09 | 181,51 | |
| Aplicações Desenvolvimento | |||||||||
| WORKER NODE 1 | 8 | 16 | 120 | 105,81 | 4 | 16 | 155,8 | 181,51 | |
| WORKER NODE 2 | 8 | 16 | 120 | 105,81 | 4 | 16 | 155,8 | 181,51 | |
| Ferramentas de CI/CD | |||||||||
| WORKER NODE 1 | 8 | 16 | 120 | 105,81 | 8 | 16 | 243,09 | 181,51 | |
| WORKER NODE 2 | 8 | 16 | 120 | 105,81 | 8 | 16 | 243,09 | 181,51 | |
| Storage Node (Nodes do OC) | |||||||||
| STORAGE NODE 1 | 10 |
32
120
2 + 8
1.211,61
8
32
905,87
1.038,76
STORAGE NODE 2
10
32
120
2 + 8
1.211,61
8
32
905,87
1.038,76
STORAGE NODE 3
10
32
120
2 + 8
1.211,61
8
32
905,87
1.038,76
LOAD BALANCER 1
4
8
40
50,94
4
16
155,8
88,75
LOAD BALANCER 2
4
8
40
50,94
4
16
155,8
88,75
TOTAL
5795,87
8056,06
6.782,95
OKD - ORIGIN KUBERNETES DISTRIBUTION 3.11
| OKD - ORIGIN KUBERNETES DISTRIBUTION 3.11 | |||||||||
| SERVIDOR | VCPU | RAM (GB) | DISCO (GB) | DISCO (TB) | VCPU | RAM (GB) | - | - | - |
| Routers + Logging + Monitoring + Registry | |||||||||
| MASTER NODE 1 | 12 | 32 | 120 | 199,61 | 12 | 48 | 434,4 | 284,18 | |
| MASTER NODE 2 | 12 |
32
120
199,61
12
48
434,4
284,18
Development + Staging + Production
WORKER NODE 1
16
32
120
199,61
16
48
434,4
351,02
WORKER NODE 2
16
32
120
199,61
16
48
434,4
351,02
WORKER NODE 3
16
32
120
199,61
16
48
434,4
351,02
WORKER NODE 4
16
32
120
199,61
16
48
434,4
351,02
WORKER NODE 5
16
32
120
199,61
16
48
434,4
351,02
WORKER NODE 6
16
32
120
199,61
16
48
434,4
351,02
WORKER NODE 7
16
32
120
199,61
16
48
434,4
351,02
WORKER NODE 8
16
32
120
199,61
16
48
434,4
351,02
WORKER NODE 9
16
32
120
199,61
16
48
434,4
351,02
WORKER NODE 10
16
32
120
199,61
16
48
434,4
351,02
TOTAL
2395,32
5212,8
4078,56
Tal estudo inicial baseia-se nas informações fornecidas pelas assessorias e por consultas on-line, fornecendo informações sobre a nossa infraestrutura de desenvolvimento.
As empresas informaram que seria possível realizar testes iniciais de 1 a 3 meses com o ambiente em cloud com créditos fornecidos pela AWS para ter uma média do consumo necessário para manter todo o ambiente em nuvem.
Existe também a possibilidade de não migrar todo o ambiente para a nuvem, podemos ter um ambiente híbrido. Migrando apenas aplicações em produção e sistemas críticos para ter alta disponibilidade.
No levantamento pelas calculadoras on-line a comparação feita de todo o ambiente nas nuvens da AWS, Azure e GCP, o melhor custo benefício seria manter o ambiente na infraestrutura da AWS que possui o melhor preço entre as nuvens concorrentes.
Entrou no radar a possibilidade em migrar o ecossistema do Openshift para a cloud além dos containers e aplicações, mas as assessorias informaram que tal demanda acarretaria em um tarefa desnecessária porque as Clouds já possuem serviços nativos consolidados para orquestrar os containers como o Amazon ECS por exemplo, além no que acarretaria em um aumento excessivo no custo/mês para manter o Openshift na nuvem.