Mục lục:

Raspberry Pi 3 "Bramble": 5 bước
Raspberry Pi 3 "Bramble": 5 bước

Video: Raspberry Pi 3 "Bramble": 5 bước

Video: Raspberry Pi 3
Video: KHU RỪNG MA QUÁI #3 END: ĐÁNH BẠI GÃ TRÙM CUỐI BẠO TÀN !!! - Bramble: The Mountain King 2024, Tháng Mười
Anonim
Raspberry Pi 3
Raspberry Pi 3

Triển khai máy chủ web Apache2 trên "bramble" Raspberry Pi3 Model B có thể mở rộng thông qua bộ cân bằng tải HAProxy!

Tôi làm rất nhiều công việc phát triển web và đã đọc rất nhiều về cách thiết lập dư thừa địa lý và bộ cân bằng tải, vì vậy tôi nghĩ rằng đã đến lúc tôi tự thiết lập tất cả. Tôi đã không hài lòng khi máy chủ gặp sự cố và muốn ngăn điều đó xảy ra một lần nữa trong tương lai!

Thêm vào đó, nó trông rất tuyệt.

Bước 1: Bắt đầu

** CẬP NHẬT **

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

Tôi thực sự đã làm cho điều này dễ dàng hơn một chút. Tôi đã cấu trúc lại repo trên Github để tự động cài đặt, định cấu hình và triển khai trình cân bằng tải HAProxy trên Pi đã chọn của bạn! Ít mã hơn, ít chỉnh sửa hơn, ít cơ hội lỗi hơn và nhiều cơ hội vui hơn!

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

Truy cập https://www.raspberrypi.org/downloads/raspbian/ và tải xuống bản sao mới của Raspbian Stretch Lite.

Giải nén tệp. ZIP và ghi.img vào mỗi thẻ MicroSD cho mỗi Pi trong cụm của bạn. Người dùng OSX, một công cụ tuyệt vời cho việc này là

Sau khi bạn khắc.img vào thẻ MicroSD, hãy điều hướng đến thẻ trong cửa sổ Finder hoặc File Explorer mới - tùy chọn này sẽ được đặt tên là boot theo mặc định. Trên đó, tạo một tệp mới có tên SSH. Đảm bảo rằng bạn không đặt bất kỳ thứ gì cho phần mở rộng tệp. Điều này sẽ kích hoạt SSH trên Rpi3 của bạn. Đẩy thẻ ra và đặt nó vào số Pi của bạn. Lặp lại bước này cho 2 số Pi còn lại (hoặc bất kỳ số Pi nào bạn sử dụng).

Bước 2: Thiết lập phần cứng của bạn

Thiết lập phần cứng của bạn
Thiết lập phần cứng của bạn
Thiết lập phần cứng của bạn
Thiết lập phần cứng của bạn

Ví dụ này giả định một cụm 3 nút Rpi và danh sách thiết bị bên dưới:

  1. 5 cổng Ethernet Switch x 1

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

  2. Bộ đổi nguồn 5 cổng USB x 1 **

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

  3. Cáp Ethernet x 4

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

  4. Cáp nguồn USB 2. sang Micro USB B x 3

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

  5. Raspberry Pi3 Mẫu B x 3

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

  6. Bộ tản nhiệt x 6

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

* Điều quan trọng là bạn phải sử dụng Bộ chuyển đổi nguồn USB có khả năng cung cấp cho Raspberry Pi điện áp hoạt động yêu cầu tối thiểu của chúng

  • Kết nối Cáp Ethernet x1 từ bộ định tuyến của bạn với Bộ chuyển mạch Ethernet.
  • Kết nối Cáp Ethernet x1 từ Bộ chuyển mạch Ethernet của bạn với mỗi chiếc Pi của bạn
  • Kết nối x1 USB-to-MicroUSB từ mỗi Pi của bạn với Bộ chuyển đổi nguồn USB.
  • Cắm tất cả vào và nhìn vào đèn nhấp nháy

Mặc dù không cần thiết, nhưng tôi muốn bộ đồ để trông càng ngầu càng tốt và giữ mọi thứ gọn gàng hơn một chút. Tôi quyết định chọn 3 trong số các trường hợp có thể xếp chồng này từ Amazon. Tôi đã không bao gồm nó trong hướng dẫn này vì nó _techical_ không bắt buộc, nhưng đối với các điểm thẩm mỹ, tôi khuyên bạn nên chọn một số.

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

** Điểm thưởng **

Tôi đã chọn tìm kiếm thêm điểm mọt sách và muốn có chỉ báo trực quan tốt hơn về máy chủ mà tôi đang tương tác. Tôi có một số bảng mạch dự phòng đặt xung quanh và một loạt đèn LED và điện trở, vì vậy tôi nhanh chóng kết hợp một số bảng để đặt trên các chân GPIO của pi. Tốt nhất, tôi sẽ sử dụng một số tiêu đề nữ, nhưng tôi chỉ có nam giới nên tôi cần phải cắt bớt một số dây nhảy.

Nếu bạn cũng muốn đi theo con đường đó (vì đèn LED rất tuyệt vời), bạn sẽ muốn làm theo hướng dẫn này tại:

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

Bước 3: Định cấu hình số Pi của bạn

Bạn sẽ cần biết địa chỉ IP của từng Pi trên mạng cục bộ của mình. Nếu bạn là một ninja CLI, điều này sẽ dễ dàng xảy ra. Đối với những người khác, bạn có thể sử dụng Trình quét IP miễn phí, chẳng hạn như SuperScan (OSX). Viết các địa chỉ IP xuống.

Tiếp theo, sao chép khóa công khai SSH của bạn vào từng số Pi của bạn bằng cách sử dụng lệnh sau từ thiết bị đầu cuối của bạn:

ssh-copy-id

Thí dụ::

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

Không có khóa SSH? Không vấn đề gì! Chỉ cần chạy:

ssh-keygen

trong thiết bị đầu cuối của bạn và làm theo lời nhắc. Chúng ta gần đến rồi!

Bước 4: Cài đặt Ansible

Nếu bạn đã làm được điều đó đến nay, xin chúc mừng! Bạn chỉ mất vài phút để chạy mạng máy tính phân tán của riêng mình.

Trên máy tính / máy tính xách tay cục bộ của bạn, bạn sẽ muốn cài đặt Ansible từ dòng lệnh. Đối với người dùng Mac, đó là:

sudo pip cài đặt ansible

Đối với những người khác, hãy tham khảo https://docs.ansible.com/ansible/latest/installat… cho hệ điều hành của bạn.

Bây giờ, bạn sẽ muốn sao chép repo này vào một thư mục HOẶC tải xuống. ZIP và giải nén nó vào một thư mục trên máy cục bộ của bạn.

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

Trong repo đó, bạn sẽ thấy một tệp hosts.ini. Mở nó trong trình soạn thảo văn bản yêu thích của bạn (hoặc nano hoặc vim):

[cân bằng tải]

pi-headnode ansible_host = 192.168.0.228 # <--- Thay đổi địa chỉ này thành địa chỉ ip của Pi mà bạn muốn sử dụng HAProxy.

[điểm giao]

node2 ansible_host = 192.168.0.16 # <--- Thay đổi điều này thành địa chỉ ip của Pi thứ hai của bạn

node3 ansible_host = 192.168.0.58 # <--- Thay đổi điều này thành địa chỉ ip của Pi thứ ba của bạn

Đó là nó! Để chạy playbook, hãy điều hướng đến thư mục repo cơ sở và nhập nội dung sau vào thiết bị đầu cuối của bạn:

ansible-playbook playbook.yml

Bước 5: Xin chúc mừng !

Image
Image
Xin chúc mừng!!
Xin chúc mừng!!

Bạn vừa làm cho phép thuật máy tính xảy ra. Xin chúc mừng!

Đây chỉ là một bằng chứng về khái niệm. Trong repo này, playbook đẩy một tệp index.html duy nhất đến từng nút để bạn có thể gỡ lỗi một cách trực quan xem nó có đang hoạt động hay không. Đối với máy chủ sản xuất, rõ ràng bạn muốn chỉnh sửa playbook để triển khai trang web của mình.

Nếu bạn có bất kỳ câu hỏi hoặc nhận xét nào, tôi rất muốn nghe chúng! Vui lòng kiểm tra repo Github và tách ra! Tôi muốn xem những gì bạn nghĩ ra.

Đề xuất: