Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados

Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados

Turing Pi é unha solución para aplicacións autoaloxadas construída sobre o principio de racks nun centro de datos, só nunha placa base compacta. A solución céntrase na construción dunha infraestrutura local para o desenvolvemento local e aloxamento de aplicacións e servizos. En xeral, é como AWS EC2 só para edge.

Nós, un pequeno equipo de desenvolvedores, decidimos crear unha solución para a construción de clústeres metálicos en edge e chamamos ao proxecto Turing Pi. O produto comezou como un proxecto scratch, pero agora, para probar os seus conceptos, foi encargado polos departamentos de desenvolvemento de Red Hat, Rancher (SUSE), Toyota Connected, Sony, Electrolux, Facebook e un público de desenvolvedores menores de 10K. sendo recrutado.

Pero todo comezou co descubrimento.

Descubrimento de produtos

Érase unha vez o descubrimento de que non inventamos nada. Descubrimos todas as cousas que existen neste mundo. Descubrimos que algunhas partes pódense combinar entre si, obtendo novas propiedades dos produtos, ou descubrimos leis e despois combinalas de novo. Non podes chegar a nada, pero podes descubrilo durante a investigación. Na miña opinión, un invento é o resultado dunha constante observación, experimentación e busca + unha combinación de coñecemento.

Durante a última década, vin como o movemento homelab afeccionado cobraba impulso (recurso subreddit), autoaloxado (recursos subreddit и incrible autoaloxado), ordenadores de placa única, a medida que crece o interese por executar contedores en ordenadores de placa única como o Raspberry Pi, hai un movemento crecente para montar grupos de ordenadores de placa única. A idea de Kubernetes vaise movendo alí pouco a pouco. Xa apareceu a súa versión lixeira, k3s, centrada en Edge/IoT. A gran cadea de comida rápida Chick-fil-A é unha das primeiras do mundo en implantar clústeres de Kubernetes nas súas cociñas kubectl faime un bocadillo.

Véxoo como unha bola de neve, xa que unha tecnoloxía envolve outra, creando un sistema máis complexo. Ao mesmo tempo, non hai caos, máis ben como un fractal da tecnoloxía. Nun dos momentos bastante difíciles da miña vida para min, vin o valor dos clústeres que os desenvolvedores afeccionados ensamblan a partir de ordenadores dunha placa única e comecei a traballar na creación dunha placa de clúster.

Hoxe o noso panel de clúster é moi sinxelo e está dirixido principalmente a aqueles que aman as tecnoloxías nativas na nube, aprenden cousas novas e experimentan.

Bloques de construción

Entón, cal é a solución, cal é a esencia. A cuestión é proporcionar un construtor, bloques de construción (Building Blocks) a partir dos cales pode montar unha infraestrutura de punta máis barata que nos servidores clásicos, móbil sen caixas metálicas voluminosas, que non esixe condicións especiais de funcionamento como salas de servidores, eficientes enerxéticamente, estandarizados en termos. de módulos e coa capacidade de escalar rapidamente a través de decenas e centos de nodos informáticos (procesadores).

Clústerboard

A placa Mini ITX conecta varios módulos informáticos mediante unha rede integrada, proporciona interfaces periféricas e control sobre os módulos

Módulo de computación

Unha placa no formato SO-DIMM que contén un procesador e memoria RAM, opcionalmente memoria flash para almacenar o sistema operativo

Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados
Unha das configuracións proxectadas para Turing V2

Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados

Ao combinar unha placa de clúster e módulos informáticos, é fácil crear unha infraestrutura para, por exemplo, máis de 20 procesadores (exemplos a continuación), silenciosos e con baixo consumo de enerxía. A propia placa de clúster aumenta a eficiencia do volume utilizado. Exemplos de clusters para comparar

Baseado en SBC*
Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados
24 CPU
Publicado por Afkham Azeez

Baseado en Turing Pi
Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados
21 CPU
Autor th3st0rmtr00p3r

* SBC - Ordenador de placa única

O cofundador de Rancher Labs e o autor de k3s non foi indiferente a este enfoque.

Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados

Lea máis sobre os bloques de construción a continuación.

Módulo de computación

Para a proba de concepto, escollemos o módulo de cálculo Raspberry Pi: esta é a configuración ideal para comezar. A comunidade RPi está activa, non hai problemas co software, o módulo en si está en formato SO-DIMM (6 x 3 cm), é accesible, contén a bordo unha CPU de 4 núcleos, 1 GB de RAM e memoria flash opcional de 8, 16 ou 32 GB para o sistema operativo e outras necesidades do sistema. Este factor de forma úsase a miúdo en solucións industriais de IoT.

Módulo de cálculo Raspberry Pi 1/3/3+

Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados

Pero o modelo CM3 tamén ten serias limitacións: máx. 1 GB de RAM e Ethernet mediante HUB USB cunha velocidade máxima de ata 100 Mbps. Polo tanto, a segunda versión de Turing admitirá Raspberry Pi 4 e ata 8 GB de RAM por módulo. A continuación móstrase un exemplo de módulos de Nvidia Jetson para tarefas de computación acelerada. Quizais sexan compatibles na segunda versión, se resolvemos algúns problemas técnicos, entón podemos mesturar módulos.

Módulos de computación Nvidia Jetson

Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados

Os módulos conteñen a característica máis importante, que non é obvia a primeira vista. A capacidade de crear outros módulos nun factor de forma similar cun conxunto diferente de CPU, RAM e eMMC, para diferentes tipos de tarefas, desde informática xeral ata informática intensiva en aprendizaxe automática. Isto é moi semellante ás instancias de AWS EC2, pero só para edge. Neste caso, a placa do clúster permanece sen cambios ou con cambios menores.

Clústerboard

Tamén se pode chamar placa base ou placa base, unha dirección bastante nova e hoxe en día non hai moitos fabricantes deste tipo de solucións e aínda están bastante no nivel de entrada, entre eles Pine64, MiniNodes, Clover Pi, Bitscope Blade, PicoCluster (clústeres SBC). ). A placa de clúster conecta os módulos cunha rede, proporciona enerxía e proporciona un bus de xestión de clústeres (Bus de xestión de clústeres), polo menos decidimos engadir este bus e parece que se arraigou.

Fronte
Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados

de volta
Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados

Ancho de banda do backplane 12 Gbps
Ranuras SD para módulos sen eMMC, por exemplo, podes manter un par de módulos con SD para acceder rapidamente aos datos do nodo

A placa do clúster baséase nun chip de conmutación para garantir a conexión á rede dos módulos e o acceso a unha rede externa. Na versión actual usamos un interruptor non xestionado porque Non houbo tempo para realizar unha I+D completa, pero para a segunda versión escollemos un interruptor ben xestionado. É posible configuralo no modo 'nodo mestre como enrutador' para distribuír a rede na placa; isto é se é necesario un maior nivel de seguridade e illamento dos traballadores do acceso externo, caso en que tamén é necesario manter un servidor DHCP no nodo mestre.

Aplicación

A versión actual é experimental e posicionámola como unha solución de nivel de entrada para coñecer o que son os clusters, traballar co software, ou como probar hipóteses nas organizacións, buscar novas ideas, en xeral, trátase dunha versión Lite.

Para comezar, recomendamos unha serie do marabilloso Jeff Girling, que leu sobre nós en Y Combinator e é o autor do libro máis vendido Ansible para DevOps. Estaba tan inspirado que fixo unha revisión de 6 partes, partindo da idea de agrupar en xeral ata exemplos prácticos de traballar co taboleiro, estudar Kubernetes e que software se pode instalar.

Serie sobre a instalación de k3s nun clúster

En xeral, recomendo ver dende o primeiro, aí en xeral sobre clustering e Kubernetes nunha linguaxe accesible. E algunhas imaxes da comunidade

Turing Pi é unha placa de clúster para aplicacións e servizos autoaloxados

Cal é o próximo?

En primeiro lugar, espero que fose interesante. Trátase dun contido absolutamente orixinal, un intento de mirar máis aló do horizonte. En segundo lugar, penso escribir unha segunda parte sobre o deseño de Turing V2. Como se produciu a busca do produto, xuízos lóxicos, busca das principais propiedades importantes. O artigo conterá bosquexos de produtos desde os primeiros ata os finais. O segundo artigo será de especial interese para os científicos de produtos, que son responsables dos produtos e do seu desenvolvemento nas empresas.

E moi probablemente haxa unha lectura moi longa.

Fonte: www.habr.com

Engadir un comentario