Cloud Computing

26 jan, 2017

Tornando o complexo organismo Jelastic em algo simples

Publicidade

Jelastic é uma plataforma de software para desenvolvedores oferecida como pública, privada, híbrida ou multi-nuvem em infraestrutura de provedores de hospedagem em todo o mundo ou on-premise. Estando totalmente focado nas necessidades dos clientes, o Jelastic consolidou PaaS, CaaS, orquestrador de contêineres Docker e ofertas Elastic VPS em um produto em nuvem com um único painel de gerenciamento. Então, hoje nós gostaríamos de descrever como este organismo complexo é construído para tornar o desenvolvimento e o gerenciamento de aplicativos fáceis e suaves.

Cloudlet

O menor componente Jelastic é o cloudlet. É uma unidade de recurso especial que equivale a 128 MiB de RAM e 400 MHz de potência de CPU, simultaneamente. Essa alta granularidade de recursos permite que o sistema aloque a capacidade exatamente requerida para cada instância no ambiente. Isso garante o preço justo baseado no uso justo para que você pague apenas pelos recursos realmente consumidos.

Existem dois tipos de cloudlet no Jelastic:

  • Cloudlets Reservados são quantidades fixas de recursos reservados com antecedência e cobrados, independentemente do seu uso real. Este é um modelo de preços comum oferecido pela maioria dos fornecedores de nuvens, onde você paga pelos limites definidos.
  • Cloudlets Dinâmicos são adicionados e removidos automaticamente de acordo com a quantidade de recursos que é requerida pelo seu aplicativo em um determinado momento (atribuído quando a carga sobe e é removido assim que ela cai). Como resultado, você paga com base no uso real de recursos dentro do limite de escala.

Ao calcular o uso do cloudlet, o sistema considera apenas o maior uso de RAM ou CPU a cada hora (não ambos combinados). Por exemplo, se durante uma hora o seu uso médio de CPU é 2400 MHz (6 cloudlets) e seu uso máximo de RAM é 1024 MiB (8 cloudlets), você paga por 8 cloudlets – não o total combinado (14 cloudlets).

Os cloudlets reservados são mais baratos do que os dinâmicos e recomendados para serem usados quando a carga da aplicação é permanente. Ao mesmo tempo, os cloudlets dinâmicos economizam dinheiro com seu modelo de tarifação baseado em uso para as aplicações com carga variável ou que não pode ser prevista com antecedência. Ambos os cloudlets fornecem descontos automáticos para o volume de uso – quanto mais você usa, mais barato é o preço base.

Contêiner

O Container é uma instância virtualizada isolada (servidor) provisionada para as pilhas de software (como servidores de aplicações, bancos de dados, balanceadores de carga, etc.) e colocada em um node de hardware específico. O Jelastic pode suportar vários contêineres em um único servidor físico usando a virtualização ao nível do sistema operacional.

A plataforma fornece contêineres certificados para Java, PHP, Ruby, Node.js, Python e .NET e a capacidade de implantar contêineres Docker personalizados. Cada contêiner tem seu próprio IP privado e registro DNS exclusivo. O IP público pode ser facilmente anexado dentro do painel de controle da interface do usuário ou via API.

A Jelastic é famosa por sua capacidade de dimensionar automaticamente qualquer contêiner, tanto vertical como horizontalmente, tornando a hospedagem de aplicativos verdadeiramente flexível. Isso simplifica o dimensionamento de microserviços, bem como elimina a necessidade de alterações arquitetônicas ao dimensionar aplicativos legados.

Layer (Grupo de Nodes)         

A Layer Jelastic é um grupo de contêineres similares em um único ambiente. Há um conjunto de layers predefinidas no assistente de topologia Jelastic para contêineres certificados, como Balancing, Application Servers (nodes de computação), Bancos de Dado SQL e NoSQL, Cache, Storage, Build Nodes e VPS. Layers personalizadas podem ser adicionadas para ambientes baseados em Docker.

As Layers são projetadas para executar ações diferentes com o mesmo tipo de contêineres ao mesmo tempo. Por exemplo, os nodes podem ser reiniciados ou redistribuídos simultaneamente, bem como escalonados horizontalmente via UI, API, CLI ou com base nos disparadores de carga. Além disso, você pode verificar os logs e estatísticas comuns ou fazer as configurações necessárias por meio do gerenciador de arquivos para todos os contêineres em uma layer.

Além disso, os contêineres de uma layer são distribuídos em diferentes servidores de hardware usando regras anti-afinidade, garantindo ainda mais confiabilidade e alta disponibilidade para aplicativos hospedados.

Ambiente

Ambiente é uma coleção de recipientes isolados com pilhas de software específicas que são responsáveis pela execução de determinados serviços de um aplicativo. O Jelastic fornece ferramentas internas para a configuração, monitoramento e solução de problemas do ambiente. Há uma série de ações que podem ser executadas em todo o ambiente, como parar, iniciar, clonar, migrar para outra região de hardware ou até mesmo outro centro de dados, compartilhar com os membros da equipe para o trabalho colaborativo, monitorar o consumo de recursos e assim por diante.

Cada ambiente tem seu próprio nome de domínio de nível 3 interno por padrão. Um domínio externo personalizado pode ser facilmente ligado via CNAME ou registro A e depois trocado entre ambientes para redirecionamento de tráfego.

Aplicação

O aplicativo é uma combinação de ambientes para executar um projeto. Um aplicativo simples com uma ou duas pilhas pode ser executado dentro de um ambiente. E aplicações com topologias mais complexas geralmente exigem mais flexibilidade durante a implantação ou atualização de processos, por isso é melhor distribuir suas pilhas em vários ambientes para poder mantê-las independentemente.

O código-fonte do aplicativo ou os binários construídos podem ser implantados e atualizados automaticamente usando o GIT/SVN, enviados como arquivos locais (zip, war, ear, etc.) via painel de interface de usuário ou FTP ou implantados como parte de contêineres Docker personalizados. Um conjunto de aplicativos já pré-embalados são oferecidos no Jelastic Marketplace.

Node de hardware

Os nodes de hardware são servidores físicos ou grandes máquinas virtuais (virtualizadas através do KVM, ESXi, Hyper-V, etc.) de dois tipos:

  • Node de infraestrutura
  • Node de usuário

Node de infraestrutura (orquestrador) é um conjunto de componentes internos para gerenciar modelos de recursos e contêineres, processar solicitações de usuários, monitorar e suportar a instalação de cluster Jelastic.

Nodes de usuário são cortados em pequenos contêineres isolados que são usados para os ambientes. Este corte fornece o multitenancy líder do setor, bem como alta densidade e utilização de recursos inteligentes com a ajuda da distribuição de contêineres de acordo com a carga através de nodes de hardware.

Em caso de manutenção de hardware específico ou todos os contêineres podem ser migrados para outro servidor físico em um modo live sem tempo de downtime de aplicativos de usuários finais.

Região de hardware

Região de hardware é um conjunto de nodes de usuário com um tipo de hardware em rede isolada. Cada região de hardware tem sua própria capacidade em um centro de dados específico, pool predefinido de endereços IP privados e públicos e preço de recurso correspondente. A capacidade de uma região pode ser facilmente estendida adicionando mais nodes de hardware.

Uma região pode ser compartilhada entre muitos usuários como uma Nuvem Pública ou dedicada a um cliente específico como uma Nuvem Privada Virtual.

Cluster

O cluster Jelastic é um grupo de regiões de hardware e orquestrador que atuam como um único sistema, fornecendo a capacidade de desenvolver, implantar, testar, executar, depurar e manter aplicativos hospedados na nuvem.

Um único cluster pode agregar vários tipos de regiões de hardware de diferentes locais. Como resultado, os usuários finais obtêm um centro de dados múltiplo ou até mesmo uma solução multi-nuvem para executar seus aplicativos dentro de um painel. Cada cluster é mantido por um provedor de serviços de hospedagem separado com sua equipe de suporte local.

Cloud Union

A Jelastic tem um modelo de negócio exclusivo para distribuir seu produto em nuvem através de provedores de hospedagem em todo o mundo. Portanto, há uma rica escolha de fornecedores de nuvem Jelastic regulados pelo governo local e suas leis. Em outras palavras, nossos parceiros de hospedagem falam seu idioma e compreendem suas necessidades específicas.

A Jelastic Cloud Union já inclui 46 centros de dados disponíveis em 29 países (mais do que os oferecidos por gigantes da nuvem). Essa comunidade de parceiros oferece a liberdade de escolha ao hospedar seu aplicativo sem bloqueio do fornecedor e sem comprometimento na localização, no nível de suporte, no desempenho ou no preço do centro de dados.

Agora que você conhece a estrutura do organismo Jelastic, é um bom momento para testar como funciona! Basta escolher o provedor de hospedagem preferido e iniciar sua viagem na nuvem.

***

Tetiana Fydorenchyk faz parte do time de colunistas internacionais do iMasters. A tradução do artigo é feita pela redação iMasters, com autorização do autor, e você pode acompanhar o artigo em inglês no link: http://blog.jelastic.com/2017/01/11/jelastic-complex-organism-in-simple-words/