Съдържание:

Raspberry Pi 3 "Bramble": 5 стъпки
Raspberry Pi 3 "Bramble": 5 стъпки

Видео: Raspberry Pi 3 "Bramble": 5 стъпки

Видео: Raspberry Pi 3
Видео: Assemble Bramble - Intro to Raspberry Pi-Cluster 2024, Октомври
Anonim
Малина Пи 3
Малина Пи 3

Разполагане на Apache2 уеб сървър в мащабируем Raspberry Pi3 Модел B "bramble" чрез HAProxy балансиращ механизъм!

Занимавам се много с уеб разработка и съм чел много за настройването на гео-излишни и балансиращи натоварвания, така че реших, че е време да направя опит да настроя всичко сам. Имах недоволството да сривам сървър и исках да предотвратя това да се случи отново в бъдеще!

Плюс това, просто изглежда готино.

Стъпка 1: Първи стъпки

** АКТУАЛИЗИРАНЕ **

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

Всъщност направих този Instructable малко по -лесен. Преработих репото в Github за автоматично инсталиране, конфигуриране и разгръщане на HAProxy loadbalancer на избрания от вас Pi! По -малко код, по -малко редактиране, по -малко шансове за грешка и повече шанс за забавление!

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

Преминете към https://www.raspberrypi.org/downloads/raspbian/ и изтеглете ново копие на Raspbian Stretch Lite.

Извлечете. ZIP файла и запишете.img във всяка MicroSD карта за всеки Pi във вашия клъстер. Потребители на OSX, чудесен инструмент за това е

След като отпечатате.img към MicroSD картата, отидете до картата в нов прозорец Finder или File Explorer - това трябва да бъде наречено boot по подразбиране. В този случай създайте нов файл, наречен SSH. Уверете се, че не поставяте нищо за разширение на файл. Това ще активира SSH на вашия Rpi3. Извадете картата и я поставете във вашия Pi. Повторете тази стъпка за останалите 2 Pi (или колкото и много да използвате).

Стъпка 2: Настройка на хардуера

Настройка на вашия хардуер
Настройка на вашия хардуер
Настройка на вашия хардуер
Настройка на вашия хардуер

Този пример предполага 3 възел Rpi клъстер и списъкът на оборудването е по -долу:

  1. 5 порта Ethernet комутатор x 1

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

  2. 5 -портов USB захранващ адаптер x 1 **

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

  3. Ethernet кабели x 4

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

  4. USB 2. към Micro USB B захранващи кабели x 3

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

  5. Raspberry Pi3 Модел B x 3

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

  6. Радиатори х 6

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

* Важно е да използвате USB захранващ адаптер, който може да захрани Raspberry Pi с минималното необходимо работно напрежение

  • Свържете x1 Ethernet кабел от вашия рутер към Ethernet превключвателя.
  • Свържете x1 Ethernet кабел от вашия Ethernet Switch към всеки един от вашите Pi
  • Свържете x1 USB към MicroUSB от всеки ваш Pi към USB захранващия адаптер.
  • Включете всичко и погледнете мигащите светлини

Макар и да не е необходимо, но исках бръмча да изглежда възможно най -готино и да поддържа всичко малко по -спретнато. Реших да взема 3 от тези купчини за подреждане от Amazon. Не го включих в тази инструкция, тъй като _технически_ не се изисква, но за естетически точки бих препоръчал да вземете някои.

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

** Бонус точки **

Избрах да отида за допълнителни нервни точки и исках по -добра визуална индикация с кой сървър взаимодействам. Имах няколко резервни протоборда наоколо и куп светодиоди и резистори, така че бързо хакнах заедно няколко платки, за да лежа върху GPIO щифтовете на pi. В идеалния случай щях да използвам няколко женски заглавки, но имах само мъжки, така че трябваше да отрежа някои джъмперни проводници.

Ако искате да преминете и по този маршрут (защото светодиодите са страхотни), ще искате да следвате този урок на адрес:

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

Стъпка 3: Конфигурирайте вашите Pi

Ще трябва да знаете IP адресите на всеки от Pi в локалната ви мрежа. Ако сте нинджа на CLI, това трябва да е лесно. За всички останали можете да използвате безплатен IP скенер, като например SuperScan (OSX). Запишете IP адресите.

След това копирайте своя SSH публичен ключ във всеки от вашите Pi, като използвате следната команда от вашия терминал:

ssh-copy-id

Пример::

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

Нямате SSH ключ? Няма проблем! Просто бягай:

ssh-keygen

във вашия терминал и следвайте подканите. Почти сме готови!

Стъпка 4: Инсталирайте Ansible

Ако сте стигнали дотук, поздравления! Само на няколко минути сте от управлението на собствената си разпределена изчислителна мрежа.

На вашия локален компютър / лаптоп ще искате да инсталирате Ansible от командния ред. За потребителите на Mac това е:

sudo pip install ansible

За всички останали вижте https://docs.ansible.com/ansible/latest/installat… за вашата ОС.

Сега ще искате да клонирате това репо в папка ИЛИ да изтеглите. ZIP и да го извлечете в папка на вашата локална машина.

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

В това репо ще видите файл hosts.ini. Отворете го в любимия си текстов редактор (или nano или vim):

[loadbalancer]

pi-headnode ansible_host = 192.168.0.228 # <--- Променете това на ip адреса на Pi, на който искате да HAProxy.

[възли]

node2 ansible_host = 192.168.0.16 # <--- Променете това на ip адреса на вашия втори Pi

node3 ansible_host = 192.168.0.58 # <--- Променете това на ip адреса на вашия трети Pi

Това е! За да стартирате книгата за игра, отворете основната папка за репо и въведете следното във вашия терминал:

ansible-playbook playbook.yml

Стъпка 5: Поздравления

Image
Image
Честито!!
Честито!!

Току -що направихте компютърната магия. Честито!

Това е просто доказателство за концепцията. В това репо, книгата за възпроизвеждане избутва уникален файл index.html към всеки от възлите, така че да можете визуално да отстранявате грешки дали работи или не. За производствен сървър бихте искали очевидно да редактирате книгата за игра, за да внедрите вашия сайт.

Ако имате въпроси или коментари, ще се радвам да ги чуя! Моля, разгледайте репото на Github и го разклонете! Ще се радвам да видя какво измисляте.

Препоръчано: