Introdução ao mundo OCI
Fala, pessoal!
Uma das tecnologias que está em alta e tende a crescer é a computação em nuvem, ou para os mais familiarizados, Cloud. E caso, assim como eu, esteja entrando neste novo mundo de alta disponibilidade agora, aqui vai um artigo para ajudar a se familiarizar à terminologia voltada para a Oracle Cloud Infrastructure (OCI).
Conceitos da Cloud:
- On-demand self-service (Autoatendimento sob demanda): Capacidade de prover capacidades de computação conforme necessário sem precisar de interação humana com o provedor de serviço.
- Broad network access (Amplo acesso à rede): O serviço de nuvem deve estar disponível por mecanismo padrão web (web console) através de acesso à rede.
- Resource pooling (Recursos agrupados): Os recursos são agrupados para atender vários clientes pelo modelo multi-tenant, com recursos diferentes dinamicamente atribuídos e transferidos de acordo com a demanda.
- Rapid elasticity (Elasticidade rápida): As capacidades podem ser maleavelmente provisionadas e liberadas, em alguns casos automaticamente, para escalar rapidamente exterior e para o interior dependendo da demanda.
- Measured service (Serviço a medida): Recursos podem ser monitorados, controlados e reportados, proporcionando transparência tanto para o provedor como para o cliente. Conceito de pay-as-you-go, ou precificação baseada no consumo, só paga pelo que foi utilizado.
Modelos de Serviços:
- On-Premises: É gerenciado de ponta a ponta todos os recursos, desde a infraestrutura até a aplicação.
- Infrastructure-as-a-Service (IaaS): Provedor cloud gerencia a parte do núcleo (core) da infraestrutura enquanto o cliente é responsável pelo sistema operacional até as aplicações.
- Platform-as-a-Service (PaaS): Além da infraestrutura, o provedor gerencia qual sistema operacional, middleware e tempo de execução, enquanto o cliente fica encarregado somente dos dados e aplicações.
- Software-as-a-Service (SaaS): O fornecedor entrega tudo como um serviço, todos os recursos são de responsabilidade do provedor.
Cloud Terminology (Terminologia Cloud):
- Fault Tolerance (Tolerância a Falhas): Descreve como um fornecedor de nuvem garante um mínimo de inatividade para seus próprios serviços.
- Scalability (Escalabilidade):
- Vertical Scaling (Escalação Vertical): Denominado também como scaling up, uma máquina sempre pode aumentar seu tamanho, da mesma forma que pode ser reduzida (scaling down).
- Horizontal Scaling (Escalação Horizontal): Também chamado de scaling out, é a adição de máquinas em um cluster, ou no caso de scaling in, é a remoção de máquinas em um cluster.
- Elasticity (Elasticidade): Capacidade de aumentar ou diminuir rapidamente os recursos, não apenas limitado a VMs, pode ser armazenamento, banco de dados, etc.
- High Availability (Alta Disponibilidade): Ambientes de computação configurados para fornecer disponibilidade quase em tempo integral são denominados de High Availability Systems (Sistemas de Alta Disponibilidade). Apresentam hardware e software redundantes que tornam o sistema disponível, apesar de qualquer tipo de falha. Sistemas de alta disponibilidade bem projetados evitam points-of-failure (pontos únicos de falha).
Arquitetura OCI:
- Regiões: É uma área geográfica localizada, composta por um ou mais Availability Domains (AD).
- Availability Domains (AD): São um ou mais centros de dados completamente tolerantes a falhas localizados dentro de uma região, mas conectados entre si por uma rede de baixa latência de alta banda larga.
- Fault Domains (FD): Dentro de um AD há Fault Domains (domínios de falhas), um agrupamento de hardware e infraestrutura para fornecer anti-afinidade. Podem ser referidos como Logical Data Center (centro de dados lógicos).
- Compartments (Compartimentos): Coleção lógica de recursos relacionados, ajuda a isolar e controlar o acesso aos recursos.
- Cada recurso pertence a um único compartimento.
- Recursos podem interagir com outros recursos em diferentes compartimentos.
- Recursos e compartimentos podem ser adicionados ou deletados a qualquer momento.
- Recursos podem ser movidos de um compartimento para outro.
- Recursos de várias regiões podem estar no mesmo compartimento, por ser uma construção global.
- Os compartimentos podem ser aninhados em até 6 camadas.
- Acesso ao compartimento para determinado grupo de usuários através de Policies (Políticas).
- Pode analisar custos e atribuir orçamento para recursos e compartimentos.
- Tenancy/Root compartment pode ter acesso a todos os recursos da cloud. Boa prática é criar compartments dedicados quando se precisa isolar recursos.
Disaster Recovery (Recuperação de Desastres):
Envolve um conjunto de políticas, ferramentas e procedimentos para permitir a recuperação ou continuação da sua infraestrutura e sistemas. Existem duas definições fundamentais:
- Recovery Point Objective (RPO): Significa quanto de perda de dados ou transações pode o seu negócio tolerar.
- Recovery Time Objective (RTO): Significa quanto tempo de inatividade o seu negócio pode tolerar.
Dito isso, finalizamos os conceitos básicos da terminologia da Oracle Cloud Insfrastructure! É bastante coisa, mas são características que são bem intuitivas!
Valeu por ter lido até o final e até a próxima!