İçindekiler:

Raspberry Pi 3 "Bramble": 5 Adım
Raspberry Pi 3 "Bramble": 5 Adım

Video: Raspberry Pi 3 "Bramble": 5 Adım

Video: Raspberry Pi 3
Video: Assemble Bramble - Intro to Raspberry Pi-Cluster 2024, Ekim
Anonim
Ahududu Pi 3
Ahududu Pi 3

Bir HAProxy yük dengeleyici aracılığıyla ölçeklenebilir bir Raspberry Pi3 Model B "bramble" üzerinde Apache2 web sunucusu dağıtma!

Çok fazla web geliştirme yapıyorum ve coğrafi fazlalıkların ve yük dengeleyicilerin ayarlanması hakkında çok fazla okuma yaptım, bu yüzden hepsini kendim ayarlamak için bir şans vermenin zamanının geldiğini düşündüm. Bir sunucunun kapanmasından rahatsızlık duydum ve bunun gelecekte tekrar olmasını önlemek istedim!

Ayrıca, sadece havalı görünüyor.

1. Adım: Başlarken

** GÜNCELLEME **

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

Aslında bu Eğitilebilirliği biraz daha kolaylaştırdım. HAProxy yük dengeleyiciyi seçtiğiniz Pi'ye otomatik olarak kurmak, yapılandırmak ve dağıtmak için Github'daki depoyu yeniden düzenledim! Daha az kod, daha az düzenleme, daha az hata ve daha fazla eğlence şansı!

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

www.raspberrypi.org/downloads/raspbian/ adresine gidin ve Raspbian Stretch Lite'ın yeni bir kopyasını indirin.

. ZIP dosyasını çıkarın ve kümenizdeki her Pi için.img dosyasını her MicroSD karta yazın. OSX kullanıcıları, bunun için harika bir araç

.img dosyasını MicroSD karta kazıdıktan sonra, yeni bir Bulucu veya Dosya Gezgini penceresinde karta gidin - bu, varsayılan olarak önyükleme olarak adlandırılmalıdır. Bunun üzerine, SSH adında yeni bir dosya oluşturun. Dosya uzantısı için hiçbir şey koymadığınızdan emin olun. Bu, Rpi3'ünüzde SSH'yi etkinleştirecektir. Kartı çıkarın ve Pi'nize yerleştirin. Kalan 2 Pi (ya da ne kadar çok kullanırsanız kullanın) için bu adımı tekrarlayın.

2. Adım: Donanımınızı Kurma

Donanımınızı Kurma
Donanımınızı Kurma
Donanımınızı Kurma
Donanımınızı Kurma

Bu örnek, 3 düğümlü bir Rpi kümesini varsayar ve ekipman listesi aşağıdadır:

  1. 5 bağlantı noktalı Ethernet Anahtarı x 1

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

  2. 5 bağlantı noktalı USB Güç Adaptörü x 1 **

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

  3. Ethernet Kabloları x 4

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

  4. USB 2. Mikro USB B Güç Kablolarına x 3

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

  5. Raspberry Pi3 Model B x 3

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

  6. Soğutucu x 6

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

* Raspberry Pi'leri gereken minimum çalışma voltajı ile besleyebilen bir USB Güç Adaptörü kullanmanız önemlidir

  • Yönlendiricinizden gelen x1 Ethernet Kablosunu Ethernet Anahtarına bağlayın.
  • Ethernet Anahtarınızdan x1 Ethernet Kablosunu Pi'nizin her birine bağlayın
  • Pi'lerinizin her birinden USB Güç Adaptörüne x1 USB-MicroUSB bağlayın.
  • Hepsini takın ve yanıp sönen ışıklara bakın

Gerekli olmasa da, olabildiğince havalı görünmek ve her şeyi biraz daha düzenli tutmak istedim. Bu istiflenebilir kasalardan 3'ünü Amazon'dan almaya karar verdim. Teknik olarak gerekli olmadığı için bu talimata dahil etmedim, ancak estetik noktalar için biraz almanızı tavsiye ederim.

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

** Bonus puanlar **

Fazladan inek noktalarına gitmeyi seçtim ve hangi sunucuyla etkileşim kurduğumun daha iyi bir görsel göstergesini istedim. Etrafta biraz yedek protokol ve bir sürü LED ve direnç vardı, bu yüzden pi'nin GPIO pinlerinin üzerine yerleştirmek için bazı panoları çabucak bir araya getirdim. İdeal olarak, bazı dişi başlıklar kullanırdım, ancak sadece erkek başlıklarım vardı, bu yüzden bazı jumper kablolarını kesmem gerekiyordu.

Bu rotaya da gitmek istiyorsanız (çünkü LED'ler harikadır), bu öğreticiyi şu adresten takip etmek isteyeceksiniz:

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

3. Adım: Pi'lerinizi Yapılandırın

Yerel ağınızdaki Pi'lerin her birinin IP adreslerini bilmeniz gerekir. Eğer bir CLI ninjasıysanız, bu kolay ve kolay olmalı. Diğer herkes için SuperScan (OSX) gibi ücretsiz bir IP Tarayıcı kullanabilirsiniz. IP adreslerini aşağıya yazın.

Ardından, terminalinizden aşağıdaki komutu kullanarak SSH ortak anahtarınızı Pi'nizin her birine kopyalayın:

ssh-kopya-kimliği

Örnek::

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

SSH anahtarınız yok mu? Sorun değil! Sadece koş:

ssh-keygen

terminalinizde ve komutları izleyin. Neredeyse geldik!

Adım 4: Ansible'ı kurun

Buraya kadar yaptıysanız, tebrikler! Kendi dağıtılmış bilgi işlem ağınızı çalıştırmaktan sadece birkaç dakika uzaktasınız.

Yerel bilgisayarınızda/dizüstü bilgisayarınızda, komut satırından Ansible'ı kurmak isteyeceksiniz. Mac kullanıcıları için:

sudo pip yükleme ansible

Diğer herkes için, işletim sisteminiz için https://docs.ansible.com/ansible/latest/installat… adresine bakın.

Şimdi, bu depoyu bir klasöre kopyalamak VEYA. ZIP dosyasını indirip yerel makinenizdeki bir klasöre çıkarmak isteyeceksiniz.

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

Bu depoda bir hosts.ini dosyası göreceksiniz. Favori metin düzenleyicinizde (veya nano veya vim) açın:

[yük dengeleyici]

pi-headnode ansible_host=192.168.0.228 # <--- Bunu, HAProxy'yi açmak istediğiniz Pi'nin ip adresine değiştirin.

[düğümler]

node2 ansible_host=192.168.0.16 # <--- Bunu ikinci Pi'nizin ip adresine değiştirin

node3 ansible_host=192.168.0.58 # <--- Bunu üçüncü Pi'nizin ip adresine değiştirin

Bu kadar! Playbook'u çalıştırmak için temel repo klasörüne gidin ve terminalinize aşağıdakini yazın:

ansible-playbook playbook.yml

Adım 5: Tebrikler!

Image
Image
Tebrikler!!
Tebrikler!!

Az önce bilgisayar büyüsünü gerçekleştirdin. Tebrikler!

Bu sadece bir kavram kanıtıdır. Bu depoda, çalışma kitabı, çalışıp çalışmadığını görsel olarak ayıklayabilmeniz için düğümlerin her birine benzersiz bir index.html dosyası gönderir. Bir üretim sunucusu için, sitenizi dağıtmak için çalışma kitabını açıkça düzenlemek istersiniz.

Herhangi bir sorunuz veya yorumunuz varsa, onları duymayı çok isterim! Lütfen Github deposunu kontrol edin ve çatallayın! Ne bulduğunu görmeyi çok isterim.

Önerilen: