Pilha técnica

A plataforma Warren foi criada com novas tecnologias de código aberto
Pilha técnica prometheus - warren.io
Pilha técnica mesos - warren.io
Pilha técnica jupyter - warren.io
Pilha técnica nix - warren.io
Pilha técnica docker - warren.io
Pilha técnica tungsten - warren.io
Pilha técnica ceph - warren.io
A Warren foi criada a partir do zero seguindo princípios arquitetônicos contemporâneos sem nenhuma restrição de legado que possa criar dificuldades, ao mesmo tempo em que garante que a plataforma seja altamente disponível, escalável, confiável e de fácil manutenção.
Nossa abordagem arquitetônica geral para lidar com o desenvolvimento de tecnologia em rápida evolução e a demanda do mercado é o design modular e desacoplado dos produtos que nos permite manter a flexibilidade.

Todas as decisões de arquitetura são feitas tendo em mente a escalabilidade e a abordagem independente de hardware.

Os seguintes não incluem componentes “como serviço”, como Kubernetes, nem refletem a camada de comando e APIs internas e públicas.

Pilha técnica code - warren.io

Tecnologias utilizadas

Mesos

Mesos abstrai CPU, memória, armazenamento e outros recursos das máquinas (físicas ou virtuais), permitindo que sistemas distribuídos elásticos e tolerantes a falhas sejam facilmente criados e executados com eficiência.
Technical stack Mesos logo - warren.io

Jupyterlab

JupyterLab é a interface de usuário da próxima geração para o Projeto Jupyter. Ela oferece todos os blocos de desenvolvimento conhecidos do clássico Jupyter Notebook (bloco de notas, terminal, editor de texto, gerenciador de arquivos etc.) em uma interface de usuário flexível e poderosa.
Technical stack Jupyter logo - warren.io

KVM

Máquina Virtual baseada em Kernel (KVM) é um módulo de virtualização no kernel Linux que permite que este funcione como um hipervisor. A KVM fornece virtualização assistida por hardware para uma ampla variedade de sistemas operacionais convidados.
Technical stack kvm logo - warren.io

Prometheus

Prometheus é um software de código aberto usado para monitoramento e alerta de eventos. Ele registra métricas em tempo real em um banco de dados de séries temporais utilizando o método HTTP Pull, com consultas flexíveis e alertas em tempo real.
Technical stack prometheus horizontal logo - warren.io

Ceph

A base do Ceph é o Armazenamento Autônomo Confiável de Objetos Distribuídos (RADOS), que fornece aos seus aplicativos armazenamento de objetos, blocos e sistemas de arquivos em um cluster de armazenamento unificado — tornando o Ceph flexível, altamente confiável e fácil de gerenciar.
Technical stack ceph logo - warren.io

Docker

Docker é uma ferramenta projetada para facilitar a criação, implementação e execução de aplicativos usando contêineres. Os contêineres permitem que um desenvolvedor provisione um aplicativo com todas as partes necessárias — como bibliotecas e outras dependências — e envie tudo como um pacote.
Technical stack docker logo - warren.io

Tungsten Fabric

Tungsten Fabric fornece uma plataforma de networking virtual escalável que funciona com uma variedade de máquinas virtuais e orquestradores de contêineres e pode ser integrada a redes físicas e infraestrutura de computação. O Tungsten Fabric utiliza padrões da indústria de rede como plano de controle BGP EVPN e sobreposição VXLAN para conectar workloads sem interrupções em diferentes domínios do orquestrador.
Technical stack tungsten-fabric logo - warren.io

Nix (O Gerenciador de Pacotes Totalmente Funcional)

Nix é um gerenciador de pacotes para Linux e outros sistemas Unix que torna o gerenciamento de pacotes confiável e reproduzível. Ele fornece atualizações e reversões atômicas, instalação paralela de várias versões de um pacote, gerenciamento de pacote multiusuário e fácil configuração de ambientes de desenvolvimento.
Technical stack nixos logo - warren.io
A comunicação entre os componentes Warren é feita por meio da API REST de cada componente.
COMO FUNCIONA?
Os componentes se comunicam com chamadas REST no mesmo cluster ou entre clusters, o que possibilita diferentes tipos de configurações e clusters heterogêneos.
NOS BASTIDORES
Nos bastidores, a comunicação assíncrona — como respostas de operações concluídas, atualização de dados (princípio GALS), fornecimento e coleta de dados de monitoramento etc. — é realizada por meio do barramento de mensagens distribuído como fluxo.
Mais detalhes podem ser encontrados em documentação

Outros componentes de código aberto utilizados

Marathon, PostgreSQL, InfluxDB, Telegraf, Kong, Oauth, JupyterHub, NixOS, NixOps, Grafana.

Bibliotecas utilizadas

CNI, Libvirt, React, PhosphorJS, Spring, jOOQ, SQLAlchemy, Hug, Gunicorn.

Linguagens utilizadas

Primárias: Java, Python, TypeScript, C++ Secundárias: Go, JavaScript, SQL, Clojure, InfluxQL, Lua, Nix Expression Language.

Minimum hardware requirements

The hardware requirements enable an initial minimum setup to get Warren up and running and get you started as a public cloud provider.

Hardware configuration examples

Example of recommended hardware setups to scale from just a few nodes to several racks and multi-location deployments.
If you are interested in testing warren.io with your own data center please contact us.