Quais são as medidas de tamanho e complexidade da infraestrutura de TI

7

Como posso comparar uma infraestrutura diferente em relação ao tamanho e complexidade. O que posso medir e comparar, por exemplo, número de nós, número de servidores, arquiteturas etc.

Como essas medidas e variáveis ​​diferem no que elas comparam? Qual deles faz sentido comparar e qual é a cardinalidade na qual existe uma diferença real no tipo de trabalho realizado, em vez de apenas um pouco de trabalho extra.

O que me permite decidir que " essa infraestrutura é muito grande " ou " essa infraestrutura é muito complexa " e qual é a diferença?

Niklas
fonte

Respostas:

7

TL; DR: As medidas de tamanho podem ser divididas aproximadamente em três categorias diferentes que eu definiria como profundidade no que você gerencia versus no que terceiriza ou consome como serviço, amplitude de serviços suportados e altura em número de instâncias, servidores e clientes . As medidas de complexidade dependem amplamente da arquitetura de sistemas selecionados , da estrutura organizacional das pessoas que a suportam e do conjunto de habilidades necessárias. Onde os conjuntos de profundidade e habilidade andam de mãos dadas, adicionando tamanho e complexidade.

Mesures de tamanho

Nota: A maioria dos requisitos de tamanho a seguir também pode aumentar a complexidade por meio da arquitetura de sistemas, conjuntos de habilidades e necessidades da estrutura organizacional.

Profundidade da infraestrutura

Quanto da infraestrutura você terceiriza para outras pessoas em níveis aumentados de profundidade:

  1. Você simplesmente usa o Software como Serviço para tudo o que faz?
  2. Você opera totalmente em nuvem pública, nuvem privada ou híbrida ou usando algum PaaS?
  3. Você usa infraestrutura como serviço?
  4. Você usa a infraestrutura hospedada e gerenciada no espaço de DC alugado?
    • Você possui ou aluga o hardware?
    • O provedor gerencia o monitoramento da infraestrutura?
    • O provedor gerencia a administração básica do sistema?
    • O provedor gerencia falhas e manutenção de hardware?
    • O provedor gerencia a instalação de rack e servidor?
    • O provedor gerencia redes internas?
    • O provedor gerencia a conectividade e o roteamento da Internet?
  5. Você tem apenas data centers com mãos remotas contratadas?
  6. Você hospeda tudo no local ou em seus próprios datacenters?

Largura da infraestrutura

Quais são os diferentes tipos de serviços que você suporta?

  • Recursos de computação
    • Servidores bare metal
    • Camada de virtualização (VMWare)
    • Camada do contêiner (janela de encaixe, k8, mesos)
    • Camada sem servidor (lambda, funções)
  • Recursos de armazenamento
    • Aparelhos de armazenamento autônomos
    • RAID em servidores
    • Clusters de banco de dados relacionais independentes grandes
    • Bancos de dados de séries temporais
    • Clusters de armazenamento de objetos
  • Recursos de rede
  • Recursos de Observabilidade
    • Servidores de Log do Sistema
    • Sistemas de métricas e gráficos
    • Clusters de pesquisa
  • Recursos de automação
  • Recursos de backup / recuperação
  • Serviços compostos complexos
    • ELK, Hadoop, etc.

Altura da infraestrutura

  • Qual é a escala para cada recurso que você precisa? Você opera os serviços em um único servidor / instância ou precisa usar clusters de máquinas?
  • Qual é o nível de redundância necessário?
  • Quais são os seus requisitos de disponibilidade?
  • Quais são os seus requisitos para latência e taxa de transferência de serviços?
  • Você precisa de infraestrutura distribuída geograficamente? (negócios internacionais, requisitos de latência ou conformidade com regulamentos, como GDPR, leis de localização de dados etc.)
  • Você precisa de vários datacenters em cada região geográfica?

Medidas de complexidade

Apenas muito brevemente ...

Arquitetura do sistema

No que diz respeito à complexidade da infraestrutura, ela segue de perto a complexidade dos sistemas distribuídos suportados pela infraestrutura. Você precisa levar em consideração dois tipos de sistemas:

  1. Sistemas distribuídos que suportam serviços individuais.
  2. Sistema distribuído criado por interdependências dos serviços.

Complexidade de Sistemas Distribuídos

Todos os serviços que sua infraestrutura suporta podem ter, por si só, um nível diferente de complexidade, com níveis variados de requisitos na infraestrutura. Os serviços de suporte de sistemas podem variar através de:

  • Single threaded.
  • Multiencadeado (memória compartilhada, disco compartilhado)
  • Sistemas paralelos com sharding de dados
  • Failover de HA (Principal / Em espera) (Frio, Quente, Quente)
  • Cluster de HA (N + M)
  • Clusters em tempo real

Interdependência de Serviços

Deixe-me começar com um exemplo. Digamos que seus relatórios de infraestrutura testem os resultados no cluster ElasticSearch. Seu pager depende dos dados de monitoramento e teste fornecidos pelo ElasticSearch. A distribuição geográfica do cluster ElasticSearch faz com que dependa da conectividade de rede do seu datacenter. Agora, um de seus provedores de internet decidiu fazer uma manutenção sem aviso prévio no sábado à noite, a taxa de transferência cai, seu tráfego é redirecionado para o provedor de backup, o monitoramento de tráfego é priorizado para o tráfego de dados do cliente, a ingestão de eventos de monitoramento diminui e seu pager fica louco.

Sempre que dois serviços, duas partes da infraestrutura dependem um do outro, eles criam um novo sistema distribuído único, cuja complexidade deve ser julgada independentemente. Essa dependência pode ser removida ou reduzida. Lembre-se de que o sistema é tão redundante e disponível quanto a interseção de todos os serviços dos quais depende.

Outros exemplos de fatores que aumentam a complexidade:

  • Dependências de serviços externos.
  • Tentativas de atenuar a falha da dependência de serviço.
    • Vários provedores
    • Armazenamento em cache de dados

Estrutura organizacional

Este é um capítulo em si ... as pessoas geralmente são negligenciadas como parte do sistema geral da infraestrutura de TI. Raramente pensamos em fatores de redundância, disponibilidade e latência quando se trata de pessoas, mas, assim como nos computadores, esses mesmos problemas afetam as organizações que mantêm a infraestrutura e a complexidade dela às vezes pode facilmente superar a complexidade dos sistemas de computadores. As pessoas envolvidas na manutenção de sua infraestrutura podem abranger vários fusos horários, idiomas, localizações geográficas, empresas, escalas de pagamento e códigos legais. Qualquer um desses fatores são sinais de aumento de complexidade.

Jiri Klouda
fonte
11
Tentei uma rápida tentativa de resposta aqui. Tentarei editar no futuro, mas aceito sugestões e edições.
Jiri Klouda 16/09
2
bom, eu iria considerar as inter-conexões como um importante fator de complexidade
Giulio Vian