Subutai: Uma nova maneira de pensar sobre nuvens

Subutai: Uma nova maneira de pensar sobre nuvens

A famosa “Cloud Computing”, a ideia de que todos os tipos de tecnologias podem ser entregues totalmente pela Internet está crescendo cada vez mais e mudando tudo! Isso afeta nossas vidas diretamente, pois você não precisa entrar no escritório para pegar um arquivo e entregar a outra pessoa, ao invés disso você pode compartilhar coisas com qualquer pessoa em qualquer dispositivo usando a cloud. Isso nos proporciona muita facilidade e reduz bilhões de dólares em gastos com TI, haja visto que as empresas estão passando a alugar o que precisam no período que precisam ao invés de comprá-las. Uma coisa que preocupa bastante gente quando se fala nesse assunto é “Onde os meus dados vão ficar?”. Pensando nisso, recentemente uma empresa chamada OptDyn disponibilizou uma solução de nuvem de código aberto, ponto a ponto (P2P) segura e estável chamada Subutai, o foco desse post é entender a um nível mais técnico como ela funciona e testá-la.

O Subutai cria ambientes de nuvem privada virtual (VPC) para os usuários finais que vão consumir recursos de peers do subutai, ou seja, alguém no mundo vai ceder seu recurso computacional para que você possa criar seu ambiente. Se você quiser se tornar um peer do subutai, basta instalar o agente em um notebook, desktop, VM ou qualquer recurso computacional e disponibilizar para o mundo, nesse peer você poderá cobrar pela hora utilizada.

Quando usando como cliente você pode escolher seus peers ao redor do mundo e agrupá-los em um “Environment”, esses Peers que você agrupou se autenticam mutuamente criando uma rede virtual (VPN). A partir do momento que a VPN está estabelecida, seu ambiente está criptografado, com isso você pode fazer deploy da sua aplicação e o subutai criará containers linux nesses peers, oferecendo então um modelo de containers como serviço (CaaS).

Eu sempre senti que o melhor tipo de negócio é aquele que resulta em uma situação do tipo “ganha-ganha-ganha”: a comunidade de fornecedores de projetos e produtos deveria ganhar, os fornecedores de projetos e produtos deveriam ganhar e, acima de tudo, o cliente (que é o usuário final) deveria ganhar… O OptDyn quer aumentar a rede Subutai, garantindo mais acesso aos recursos em todo o mundo e convidamos você a baixar o código e fazer parte da comunidade “Ganha-ganha-ganha”.

Jon “Maddog” Hall, Chief Executive Officer na OptDyn

Futuramente, os proprietários dos peers poderão estipular uma “cortesia” pela hora consumida, e isso será pago utilizando uma tecnologia de blockchain. Nesse momento, subiremos um peer do subutai em uma máquina virtual com a ajuda do vagrant, para entendermos como se tornar um peer (futuramente ganhar muitas cortesias) e como fazer um deploy rs

Se você não conhece o vagrant ou nunca usou, veja esse artigo antes de seguir Vagrant – Crie ambientes de desenvolvimento ágil. Com o vagrant (v2.0) instalado, podemos seguir.

Instalação do Subutai

Crie um ambiente para o subutai console.

 
  mkdir Subutai 
  cd Subutai 

Dentro desse ambiente, vamos criar um vagrantfile da box oficial do subutai.

vagrant init subutai/stretch

Já com o vagrantfile, podemos iniciar a VM e então ele fará download da Box.

vagrant up --provision

Antes de seguir uma observação importante. É esperado para o futuro próximo do Ubuntu que os pacotes Snappy sejam utilizados por padrão no lugar dos famosos “.deb”, para fomentar o uso dessa novidade e acelerar o desenvolvimento desses pacotes a Canonical lançou uma ferramenta chamada Snapcraft que já suporta desenvolvimento de pacotes snappy para Debian, Ubuntu, Arch entre outros. O subutai já nasceu com esse formato, então quando a máquina estiver subindo, você pode perceber que ele instala o snap chamado “subutai” para construir o “Subutai console”.

Torne-se um peer

Quando o provisionamento da VM finalizar, ele exibe na tela as instruções seguintes.

==> default: Want to convert this RH into a peer?

==> default: Step 1: Use ‘vagrant ssh’ to get into the RH

==> default: Step 2: Use ‘sudo /snap/bin/subutai import management’ to install the peer

Faça a conversão desse host em um peer, para isso acesse a VM.

 
vagrant ssh

Dentro da máquina, use o pacote que foi instalado pelo snap para fazer o setup do “console subutai”.

 
sudo /snap/bin/subutai import management

Após isso, ele disponibilizará um endereço para acesso ao console, então digite no navegador https://127.0.0.1:9999.

subutai

O primeiro login pode ser feito através do usuário e senha padrão (admin, secret). Logo em seguida será solicitado a alteração do mesmo.

subutai

Após o login, você estará no dashboard do seu peer do subutai! Onde estão disponível alguns gráficos sobre os recursos da sua máquina.

 

subutai

subutai

Do lado esquerdo, existem várias opções:

– Monitoring => Monitoramento de recursos dos peers e dos environments.

– Environment => Opção de criar ou remover environments, verificar e ou acessar containers e visualizar os inquilinos desse peer.

– Console => Ter acesso console ao seu peer físico (VM criada com vagrant) ou console nos containers que foram criados nos respectivos environments.

– User identity => Gerenciamento de usuários

– Remote peer => Adicionar mais peers caso voce queira.

– Resource Hosts => Visualizar e remover os seus hosts (VMS)

– Tracker => Ter um log detalhado de todas as ações que ocorreram nos seus peers.

– Bazaar => Onde você pode instalar plugin de ferramentas específicas (Ainda em desenvolvimento).

– System => Onde você pode obter informações avançadas do seu peer (Logs, Redes, Updates e etc.)

Antes de fazermos um deploy, faça um cadastro no Subutai Hub que é onde se tem acesso a todos os peers do mundo e onde se compartilham templates. O cadastro deve ser feito em https://hub.subut.ai/register, onde inicialmente é obrigatório o uso de alguma rede social (Facebook, Google ou Github) e futuramente terá uma página de cadastro mais abrangente. Após o cadastro, cadastre o seu peer (VM) no Subutai Hub clicando em “Register Peer”.

 

subutai

Onde ele vai solicitar o seu email e senha do Subutai Hub, nome desejado para o peer e se ele será publico (para que outras pessoas do mundo façam deploy nele e te retorne algumas “cortesias” em moedas virtuais).

subutai

Após isso, acesse a página home do subutai hub e seu peer estará disponível no Globo. 😀

subutai

 

Faça um deploy

Antes de fazermos deploy, adicione outros peers para serem usados no momento do deploy. Vá em “Peers”.

subutai

Escolhe o peer que deseja adicionar aos favoritos e clique em “Add to favorites”.

subutai

Nesse momento ele já estará disponível para uso na hora do deploy. Para fazer um deploy no seu peer local ou em outros peers do mundo, vá no Subutai Hub > Environments.

subutai

Crie o seu primeiro Environment, ao fazer isso ele vai solicitar a criação de uma chave PGP.

subutai

Clique em “Setup PGP key”, e abrirá a página de criação com suas informações.

subutai

Clique em salvar e ele irá gerar sua chave, com isso você poderá criar um Environment sem problemas. Ao clicar novamente em criar um environment ele irá mostrar um pop-up de ajuda (Veja a demonstração ou clique em “Skip”) e você poderá adicionar seus peers favoritos para esse environment, por padrão ele mostra os seu peers e os seus “Favoritos”, mas se preferir clique em “Find more peers” para adicionar outros peers como favoritos.

subutai

Adicionei o meu peer local e os peers da 4linux para esse deploy, após isso clique em “Next”. Nessa etapa, você deve escolher um template para usar no deploy, filtrando o mesmo do lado direito e depois arrastando para dentro dos peers.

subutai

Vamos fazer um deploy do Ubuntu 16.04, colocando um container de ubuntu em cada peer.

subutai

Feito isso, clique em “Save”, para finalizar a criação do environment com as instâncias de ubuntu. Logo em seguida defina um nome para esse environment.

subutai

Clicando em “Save” novamente, o Environment foi finalizado com sucesso! Podendo assim fazer o Build do mesmo. Clique em “Build”.

subutai

Enquanto o Build acontece, aparecerá um status amarelo “Under Modification”.

subutai

 

Após o Build do environment, acesse a aba “Containers” e terá acesso aos seus containers 😀

subutai

 

Para realizar um acesso SSH no container, instale a bandeja do Subutai para a sua distribuição! Ela está disponível em subutai.io. Com a bandeja instalada, basta clicar em “SSH-Keys Management”.

subutai

Nesse mesmo local da bandeja, gere um novo par de chaves ou use uma de sua preferência para acessar os  containers!

subutai

Clique em “Save Changes” e aguarde até que o Subutai adicione a chave pública em todos os containers. Após alguns instantes, faça o acesso SSH através da bandeja.

subutai

E Automaticamente você terá um terminal conectado via SSH no seu container!

subutai

Essa foi uma maneira de utilização do Subutai, onde foi feita a criação de máquinas simples usando recursos computacionais alheios, lembrando que o projeto está andando a todo o vapor e em breve novas versões sairão para correção de bugs e melhorias na ferramenta. Podemos ver no nosso dia a dia que muitas máquinas ficam ligadas por muito tempo ociosas, essas máquinas poderiam ser peers resultando no futuro em muitas “cortesias”.

Anterior Inventário de rede com OCS Inventory
Próxima Ambari: crie um cluster Hadoop em minutos

About author

Edgar Filho
Edgar Filho 4 posts

Edgar da Silva Costa Filho é um sysadmin apaixonado por Linux, com foco na cultura DevOps, Formado em Redes de Computadores pela FIAP. Com 4 anos de experiência profissional em Tecnologia da Informação, atualmente atuando com desenvolvimento em python, infra ágil(Docker, Puppet, Ansible, Git, Jenkins e Rundeck), NoSQL (MongoDB) e também atuando como instrutor, ministrando cursos de Linux e suas mais diversas tecnologias, capacitando equipes de TI em sistemas Linux e soluções Open Source.

View all posts by this author →

Você pode gostar também

Big Data

JSON e BSON no MongoDB: para iniciantes

Dando continuidade na série de MongoDB, nesse post farei uma Introdução ao formato “Javascript Object Notation” (JSON), ao BSON e aos primeiros passos com o MongoDB.

Infraestrutura

SpamAssassin Reverso: bloqueio eficiente de spams

Um dos maiores ou até mesmo o maior problema quando falamos de e-mail é o recebimento de spam e vírus, um incomodo enorme tanto para o cliente final como a

Infraestrutura

Conheça mais sobre os serviços de Gestão de Riscos e Testes de Intrusão

Tecnologia de informação está cada vez mais relacionada aos processos produtivos e já mudou a forma de fazer negócios. Se a evolução dos setores de TI possibilitou maior produtividade e