Índice:

Raspberry Pi 3 "Bramble": 5 etapas
Raspberry Pi 3 "Bramble": 5 etapas

Vídeo: Raspberry Pi 3 "Bramble": 5 etapas

Vídeo: Raspberry Pi 3
Vídeo: Assemble Bramble - Intro to Raspberry Pi-Cluster 2024, Novembro
Anonim
Raspberry Pi 3
Raspberry Pi 3

Implantando um servidor da web Apache2 em uma "amora" escalonável Raspberry Pi3 Modelo B por meio de um balanceador de carga HAProxy!

Eu faço muito desenvolvimento web e li muito sobre como configurar redundâncias geográficas e balanceadores de carga, então achei que era hora de tentar configurar tudo sozinho. Tive o desagrado de ver um servidor cair e queria evitar que isso acontecesse novamente no futuro!

Além disso, parece legal.

Etapa 1: primeiros passos

** ATUALIZAR **

**************************************************************************************************************************

Na verdade, tornei este Instructable um pouco mais fácil. Refatorei o repo no Github para instalar, configurar e implantar automaticamente o balanceador de carga HAProxy no Pi escolhido! Menos código, menos edição, menos chances de erro e mais chances de diversão!

**************************************************************************************************************************

Vá para https://www.raspberrypi.org/downloads/raspbian/ e baixe uma nova cópia do Raspbian Stretch Lite.

Extraia o arquivo. ZIP e escreva o.img em cada cartão MicroSD para cada Pi em seu cluster. Usuários OSX, uma ótima ferramenta para isso é

Depois de gravar o.img no cartão MicroSD, navegue até o cartão em uma nova janela do Finder ou do File Explorer - isso deve ser chamado de boot por padrão. Nele, crie um novo campo chamado SSH. Certifique-se de não colocar nada para uma extensão de arquivo. Isso habilitará o SSH em seu Rpi3. Ejete o cartão e coloque-o em seu Pi. Repita essa etapa para os 2 Pi's restantes (ou quantos você acabar usando).

Etapa 2: Configurando Seu Hardware

Configurando Seu Hardware
Configurando Seu Hardware
Configurando Seu Hardware
Configurando Seu Hardware

Este exemplo assume um cluster Rpi de 3 nós e a lista de equipamentos está abaixo:

  1. Switch Ethernet de 5 portas x 1

      https://www.amazon.ca/gp/product/B00QR6XFHQ/ref=oh…

  2. Adaptador de alimentação USB de 5 portas x 1 **

      https://www.amazon.ca/gp/product/B017R9IJTU/ref=oh…

  3. Cabos Ethernet x 4

      https://www.amazon.ca/gp/product/B01J8KFTB2/ref=oh…

  4. Cabos de alimentação USB 2. para Micro USB B x 3

      https://www.amazon.ca/gp/product/B019U0V75W/ref=oh…

  5. Raspberry Pi3 Modelo B x 3

      https://www.amazon.ca/gp/product/B01CD5VC92/ref=od…

  6. Dissipadores de calor x 6

      https://www.amazon.ca/gp/product/B010ER7UN8/ref=od_aui_detailpages00?ie=UTF8&psc=1

* É importante que você use um adaptador de alimentação USB que seja capaz de fornecer ao Raspberry Pi a voltagem operacional mínima exigida

  • Conecte o cabo Ethernet x1 do seu roteador ao switch Ethernet.
  • Conecte o cabo Ethernet x1 de seu switch Ethernet a cada um de seus Pi's
  • Conecte x1 USB-a-MicroUSB de cada um de seus Pi ao adaptador de alimentação USB.
  • Conecte tudo e olhe para as luzes que piscam

Embora não seja necessário, eu queria que a amoreira parecesse o mais legal possível e manter tudo um pouco mais organizado. Decidi comprar 3 dessas caixas empilháveis da Amazon. Eu não o incluí neste instrutível porque não é _tecnicamente_ necessário, mas por questões estéticas, eu recomendo pegar um pouco.

www.amazon.ca/gp/product/B07BNDFXN9/ref=oh…

** Pontos bônus **

Optei por pontos extras de nerd e queria uma melhor indicação visual de qual servidor estava interagindo. Eu tinha um protoboard sobressalente ao redor e um monte de LEDs e resistores, então eu rapidamente cortei algumas placas para colocar sobre os pinos GPIO do pi. Idealmente, eu teria usado alguns conectores femininos, mas só tinha masculinos, então precisei aparar alguns fios de jumper.

Se você quiser ir por esse caminho também (porque os LEDs são fantásticos), você vai querer seguir este tutorial em:

thepihut.com/blogs/raspberry-pi-tutorials/…

Etapa 3: Configure seus Pi's

Você precisará saber os endereços IP de cada um dos Pi's em sua rede local. Se você é um ninja CLI, isso deve ser fácil. Para todos os outros, você pode usar um scanner de IP gratuito, como o SuperScan (OSX). Anote os endereços IP.

Em seguida, copie sua chave pública SSH para cada um de seus Pi usando o seguinte comando de seu terminal:

ssh-copy-id

Exemplo::

ssh-copy-id -i ~ /.ssh / id_rsa.pub [email protected]

Não tem uma chave SSH? Sem problemas! Apenas corra:

ssh-keygen

em seu terminal e siga as instruções. Estamos quase lá!

Etapa 4: instale o Ansible

Se você chegou até aqui, parabéns! Você está a apenas alguns minutos de executar sua própria rede de computação distribuída.

Em seu computador / laptop local, você desejará instalar o Ansible a partir da linha de comando. Para usuários de Mac, é:

sudo pip install ansible

Para todos os outros, consulte https://docs.ansible.com/ansible/latest/installat… para o seu sistema operacional.

Agora, você deseja clonar este repositório em uma pasta OU baixar o. ZIP e extraí-lo em uma pasta em sua máquina local.

github.com/Jtilley84/ansible-apache2-webse…

Nesse repositório, você verá um arquivo hosts.ini. Abra-o em seu editor de texto favorito (ou nano ou vim):

[balanceador de carga]

pi-headnode ansible_host = 192.168.0.228 # <--- Altere para o endereço IP do Pi que você deseja ativar no HAProxy.

[nós]

node2 ansible_host = 192.168.0.16 # <--- Altere para o endereço IP do seu segundo Pi

node3 ansible_host = 192.168.0.58 # <--- Altere para o endereço IP do seu terceiro Pi

É isso! Para executar o manual, navegue até a pasta de repositório base e digite o seguinte em seu terminal:

ansible-playbook playbook.yml

Etapa 5: Parabéns

Image
Image
Parabéns!!
Parabéns!!

Você acabou de fazer a mágica do computador acontecer. Parabéns!

Esta é apenas uma prova de conceito. Nesse repositório, o manual envia um arquivo index.html exclusivo para cada um dos nós para que você possa depurar visualmente se ele está funcionando ou não. Para um servidor de produção, você deseja obviamente editar o manual para implantar seu site.

Se você tiver dúvidas ou comentários, adoraria ouvi-los! Por favor, verifique o repositório Github e garanta já! Adoraria ver o que você inventou.

Recomendado: