Cụm ITX nhỏ Turing Pi 2 với RAM 32 GB

Cụm ITX nhỏ Turing Pi 2 với RAM 32 GB

Chúc mừng cộng đồng Habr! Gần đây tôi đã viết về bảng cụm phiên bản đầu tiên của chúng tôi [V1]. Và hôm nay tôi muốn cho bạn biết chúng tôi đã làm việc như thế nào trên phiên bản Turing V2 với 32GB bộ nhớ truy cập tạm thời.

Chúng tôi thích các máy chủ nhỏ có thể được sử dụng cho cả phát triển cục bộ và lưu trữ cục bộ. Không giống như máy tính để bàn hoặc máy tính xách tay, máy chủ của chúng tôi được thiết kế để hoạt động 24/7, chúng có thể được liên kết nhanh chóng, ví dụ: có 4 bộ xử lý trong một cụm và sau 5 phút có 16 bộ xử lý (không có thiết bị mạng bổ sung) và tất cả điều này trong một yếu tố hình thức nhỏ gọn im lặng và năng lượng hiệu quả.

Kiến trúc của các máy chủ của chúng tôi dựa trên nguyên tắc xây dựng cụm, tức là chúng tôi tạo ra các bảng cụm, sử dụng mạng ethernet trên bảng, kết nối một số mô-đun máy tính (bộ xử lý). Để đơn giản hóa, chúng tôi chưa tạo mô-đun điện toán của riêng mình mà sử dụng Mô-đun điện toán Raspberry Pi và chúng tôi thực sự hy vọng vào mô-đun CM4 mới. Tuy nhiên, mọi thứ đã đi ngược lại với kế hoạch với yếu tố hình thức mới của họ và tôi nghĩ rằng nhiều người đã thất vọng.

Tóm tắt cách chúng tôi chuyển từ V1 sang V2 và cách chúng tôi phải thoát ra với hệ số dạng Raspberry Pi CM4 mới.

Vì vậy, sau khi tạo một cụm cho 7 nút, câu hỏi đặt ra là - tiếp theo là gì? Làm thế nào để tăng giá trị của một sản phẩm? 8, 10 hay 16 nút? Nhà sản xuất mô-đun nào? Suy nghĩ về toàn bộ sản phẩm, chúng tôi nhận ra rằng điều chính ở đây không phải là số lượng nút hay nhà sản xuất là ai, mà là bản chất của các cụm như một khối xây dựng. Chúng ta cần tìm khối xây dựng tối thiểu mà

Việc đầu tiên, sẽ là một cụm và đồng thời có thể kết nối các đĩa và bảng mở rộng. Khối cụm phải là nút cơ sở tự túc và có nhiều tùy chọn mở rộng.

Thứ hai, sao cho các khối cụm tối thiểu có thể được kết nối với nhau bằng cách xây dựng các cụm có kích thước lớn hơn và sao cho hiệu quả về mặt ngân sách và tốc độ mở rộng quy mô. Tốc độ mở rộng phải nhanh hơn so với kết nối máy tính thông thường với mạng và rẻ hơn nhiều so với phần cứng máy chủ.

thứ ba, các đơn vị cụm tối thiểu phải đủ nhỏ gọn, di động, tiết kiệm năng lượng, tiết kiệm chi phí và không đòi hỏi về điều kiện hoạt động. Đây là một trong những điểm khác biệt chính so với giá đỡ máy chủ và mọi thứ được kết nối với chúng.

Chúng tôi bắt đầu bằng cách xác định số lượng nút.

Số nút

Với những phán đoán logic đơn giản, chúng tôi nhận ra rằng 4 nút là lựa chọn tốt nhất cho khối cụm tối thiểu. 1 nút không phải là một cụm, 2 nút là không đủ (1 chính 1 công nhân, không có khả năng mở rộng quy mô trong một khối, đặc biệt đối với các tùy chọn không đồng nhất), 3 nút có vẻ ổn, nhưng không phải là bội số của 2 và chia tỷ lệ trong phạm vi một khối bị giới hạn, 6 nút có giá gần bằng 7 nút (theo kinh nghiệm của chúng tôi, đây đã là một mức giá đắt đỏ), 8 là rất nhiều, không phù hợp với hệ số dạng ITX mini và một giải pháp PoC thậm chí còn đắt hơn.

Bốn nút trên mỗi khối được coi là giá trị trung bình vàng:

  • ít vật liệu hơn trên mỗi bảng cụm, do đó sản xuất rẻ hơn
  • bội số của 4, tổng cộng 4 khối cho 16 bộ xử lý vật lý
  • mạch ổn định 1 master và 3 worker
  • các biến thể không đồng nhất hơn, mô-đun tính toán chung + tính toán tăng tốc
  • hệ số dạng mini ITX với ổ SSD và thẻ mở rộng

mô-đun tính toán

Phiên bản thứ hai dựa trên CM4, chúng tôi nghĩ rằng nó sẽ được phát hành ở dạng SODIMM. Nhưng…
Chúng tôi đã quyết định tạo một bo mạch con SODIMM và lắp ráp trực tiếp CM4 thành các mô-đun để người dùng không phải suy nghĩ về CM4.

Cụm ITX nhỏ Turing Pi 2 với RAM 32 GB
Mô-đun điện toán Turing Pi hỗ trợ Raspberry Pi CM4

Nhìn chung, để tìm kiếm các mô-đun, toàn bộ thị trường mô-đun máy tính đã được mở ra từ các mô-đun nhỏ có RAM 128 MB đến RAM 8 GB. Các mô-đun có RAM 16 GB trở lên đang ở phía trước. Đối với dịch vụ lưu trữ ứng dụng biên dựa trên công nghệ gốc trên đám mây, RAM 1 GB là chưa đủ và sự xuất hiện gần đây của các mô-đun cho RAM 2, 4 và thậm chí 8 GB mang lại cơ hội phát triển tốt. Họ thậm chí đã xem xét các tùy chọn với các mô-đun FPGA cho các ứng dụng học máy, nhưng sự hỗ trợ của họ đã bị trì hoãn do hệ sinh thái phần mềm không được phát triển. Trong khi nghiên cứu thị trường mô-đun, chúng tôi đã nảy ra ý tưởng tạo một giao diện chung cho các mô-đun và trong V2, chúng tôi bắt đầu thống nhất giao diện của các mô-đun máy tính. Điều này sẽ cho phép chủ sở hữu phiên bản V2 kết nối các mô-đun từ các nhà sản xuất khác và kết hợp chúng cho các tác vụ cụ thể.

V2 hỗ trợ toàn bộ dòng Mô-đun điện toán Raspberry Pi 4 (CM4), bao gồm các phiên bản Lite và mô-đun RAM 8 GB

Cụm ITX nhỏ Turing Pi 2 với RAM 32 GB

Ngoại vi

Sau khi xác định nhà cung cấp mô-đun và số lượng nút, chúng tôi đã tiếp cận bus PCI nơi đặt các thiết bị ngoại vi. Bus PCI là tiêu chuẩn cho các thiết bị ngoại vi và được tìm thấy trong hầu hết các mô-đun máy tính. Chúng tôi có một số nút và lý tưởng nhất là mỗi nút có thể chia sẻ thiết bị PCI ở chế độ yêu cầu đồng thời. Ví dụ: nếu đó là một đĩa được kết nối với xe buýt, thì nó có sẵn cho tất cả các nút. Chúng tôi bắt đầu tìm kiếm các bộ chuyển mạch PCI có hỗ trợ nhiều máy chủ và nhận thấy rằng không có bộ chuyển mạch nào phù hợp với yêu cầu của chúng tôi. Tất cả các giải pháp này hầu hết chỉ giới hạn ở 1 máy chủ hoặc nhiều máy chủ, nhưng không có chế độ yêu cầu đồng thời tới các điểm cuối. Vấn đề thứ hai là chi phí cao từ 50 đô la trở lên cho mỗi con chip. Trong V2, chúng tôi quyết định hoãn các thử nghiệm với bộ chuyển mạch PCI (chúng tôi sẽ quay lại với chúng sau khi chúng tôi phát triển) và đi theo con đường chỉ định vai trò cho từng nút: hai nút đầu tiên hiển thị cổng PCI express mini trên mỗi nút, nút thứ ba tiếp xúc với bộ điều khiển SATA 2 cổng 6 Gbps . Để truy cập đĩa từ các nút khác, bạn có thể sử dụng hệ thống tệp mạng trong cụm. Tại sao không?

lén lút

Chúng tôi quyết định chia sẻ một số bản phác thảo về cách khối cụm tối thiểu đã phát triển theo thời gian thông qua thảo luận và phản ánh.

Cụm ITX nhỏ Turing Pi 2 với RAM 32 GBCụm ITX nhỏ Turing Pi 2 với RAM 32 GBCụm ITX nhỏ Turing Pi 2 với RAM 32 GB

Do đó, chúng tôi đã có một đơn vị cụm với 4 nút 260 chân, 2 cổng PCIe mini (Gen 2), 2 cổng SATA (Gen 3). Bo mạch có Công tắc được quản lý lớp 2 với hỗ trợ VLAN. Một cổng PCIe nhỏ đã bị xóa khỏi nút đầu tiên, trong đó bạn có thể cài đặt card mạng và nhận một cổng Ethernet hoặc modem 5G khác, đồng thời tạo bộ định tuyến cho mạng trên cụm và cổng Ethernet từ nút đầu tiên.

Cụm ITX nhỏ Turing Pi 2 với RAM 32 GB

Bus cụm có nhiều tính năng hơn, bao gồm khả năng flash các mô-đun trực tiếp qua tất cả các khe cắm và tất nhiên là các đầu nối FAN trên mỗi nút có điều khiển tốc độ.

ứng dụng

Cơ sở hạ tầng cạnh cho các ứng dụng và dịch vụ tự lưu trữ

Chúng tôi đã thiết kế V2 để trở thành khối xây dựng tối thiểu cho cơ sở hạ tầng biên cấp tiêu dùng/thương mại. Với V2, thật rẻ để bắt đầu bằng chứng về khái niệm và mở rộng quy mô khi bạn phát triển, dần dần chuyển các ứng dụng tiết kiệm chi phí và thiết thực hơn sang máy chủ biên. Các khối cụm có thể được kết nối với nhau để xây dựng các cụm lớn hơn. Điều này có thể được thực hiện dần dần mà không có nhiều rủi ro đối với
quy trình. Ngày nay đã có một số lượng lớn các ứng dụng cho doanh nghiệp, có thể được lưu trữ tại địa phương.

Máy trạm ARM

Với tối đa 32 GB RAM trên mỗi cụm, nút đầu tiên có thể được sử dụng cho phiên bản HĐH dành cho máy tính để bàn (ví dụ: Ubuntu Desktop 20.04 LTS) và 3 nút còn lại cho các tác vụ biên dịch, thử nghiệm và gỡ lỗi, phát triển các giải pháp gốc trên đám mây cho ARM cụm. Là một nút cho CI / CD trên cơ sở hạ tầng cạnh ARM trong sản phẩm.

Cụm Turing V2 với các mô-đun CM4 gần như giống hệt nhau về mặt kiến ​​trúc (sự khác biệt ở các phiên bản nhỏ của ARMv8) đối với cụm dựa trên các phiên bản AWS Graviton. Bộ xử lý mô-đun CM4 sử dụng kiến ​​trúc ARMv8 để bạn có thể xây dựng hình ảnh và ứng dụng cho các phiên bản AWS Graviton 1 và 2, được biết là rẻ hơn nhiều so với phiên bản x86.

Nguồn: www.habr.com