Đánh giá đầy đủ từ lựa chọn thành phần đến cấu hình phần mềm cho hệ thống khai thác (khai thác) tiền điện tử Chia.
Chia là một loại tiền điện tử mới nhằm đạt được sự đồng thuận phi tập trung với mức tiêu thụ năng lượng trên mỗi giao dịch thấp hơn so với các loại tiền điện tử khác. Điều này đạt được thông qua một bằng chứng về thuật toán không gian thay vì bằng chứng làm việc.
Trong khi bằng chứng công việc dựa vào việc liên tục tính toán một bài toán (thường là các hàm băm chẳng hạn như SHA256) nhằm cố gắng tìm kết quả khớp với mẫu mong muốn, thì Chia lại dựa vào việc kiểm tra sự tồn tại của một số thuộc tính nhất định trong các tệp được tạo trước duy nhất được gọi là lô.
Điều này được thực hiện trong một quá trình hai bước được gọi là nông nghiệp bao gồm:
- Vẽ nơi tạo ra các tệp lớn duy nhất (thường là 101.6 GB).
- và thu hoạch trong đó các tệp đã tạo trước đó được kiểm tra để có cơ hội giành được phần thưởng của khối đó (hiện tại là 2 Chia).
Một nút càng có nhiều lô (dung lượng lưu trữ lớn hơn được sử dụng) thì cơ hội giành được phần thưởng của khối đó càng cao. Có 4608 cơ hội giành chiến thắng hàng ngày và xác suất giành được phần thưởng của khối đó chủ yếu dựa trên số lô mà một người sở hữu tương ứng với tổng quy mô mạng. Một máy tính thu nhập được cung cấp tại đây.
Vì vậy, để tối đa hóa phần thưởng, chúng tôi muốn có dung lượng lưu trữ lớn nhất có thể và đủ tài nguyên máy tính để lấp đầy bộ nhớ nói trên bằng các lô.
Giống như hầu hết các vấn đề về thiết kế, có vô số giải pháp hợp lý cho việc kết hợp các thiết bị có thể được sử dụng để trồng Chia. Để giúp thu hẹp các lựa chọn, tôi bắt đầu bằng cách quyết định một số hạn chế và ưu tiên:
- Chi phí tính bằng USD/TB phải được giảm thiểu mặc dù độ phức tạp tăng thêm (có lý do).
- Do thời gian dành cho dự án này của tôi có hạn nên hệ thống chủ yếu bao gồm các bộ phận có sẵn (không có PCB tùy chỉnh, khung tùy chỉnh, v.v.).
Vẽ đồ thị – Xử lý
Tùy thuộc vào thiết lập phần cứng, một sơ đồ có thể mất từ 4 đến 20 giờ để tạo. Do đó, việc chọn phần cứng vẽ đồ thị phù hợp có thể là sự khác biệt giữa việc lấp đầy toàn bộ trang trại của bạn trong vài ngày so với nhiều tháng.
Điều quan trọng là phải xem xét không chỉ tốc độ tạo mỗi ô mà còn cả số lượng ô đồng thời có thể được tạo. Ví dụ: thiết lập tạo 10 ô đồng thời trong 12 giờ, mỗi ô sẽ tạo ra 20 ô (~2TB/ngày) trong khi thiết lập tạo ra 1 ô đồng thời cứ sau 4 giờ sẽ chỉ tạo ra 6 ô mỗi ngày (0.6TB/ngày).
Để giảm thiểu chi phí, tôi quyết định tìm kiếm các máy chủ đã ngừng hoạt động. Những máy chủ này có một số thuộc tính thú vị có thể khiến chúng trở thành máy vẽ mạnh mẽ, bao gồm:
- Số lượng lõi lớn có thể cho phép thực hiện nhiều ô song song. Giai đoạn 1 (khoảng một nửa thời gian vẽ) là đa luồng (thường được cấu hình từ 2 đến 4 luồng), nhưng các giai đoạn còn lại là luồng đơn.
- RAM khả dụng thường vượt quá mức cần thiết để vẽ (~4GB/lô đồng thời).
- Được thiết kế để hoạt động ở mức tải cao trong thời gian dài.
Sau khi xem qua hàng tá tùy chọn và cấu hình khả thi, tôi quyết định chọn HP ProLiant DL380p Gen8 với 2x Intel E5–2670 và 192GB RAM DDR3. Với tính năng siêu phân luồng được kích hoạt, máy chủ này theo giả thuyết có thể hỗ trợ vẽ đồng thời lên tới 16 lô trong giai đoạn 1 với giá dưới 400 USD.
Vẽ sơ đồ - Lưu trữ tạm thời
Do tải trọng ghi cao trong quá trình tạo biểu đồ (khoảng 1.6TB được ghi cho biểu đồ ak=32), việc lựa chọn phương tiện lưu trữ tạm thời có thể có tác động đáng kể đến thời gian và chi phí lập biểu đồ. Một số điểm cần xem xét:
- Việc lưu trữ càng nhanh thì có thể tạo ra các ô càng nhanh. Chủ đề này thảo luận về thời gian vẽ đồ thị trong 4 giờ bằng RAMDISK (gắn thư mục vào RAM).
- Với khối lượng ghi lớn, điều quan trọng là phải xem xét độ bền của phương tiện. Ổ SSD NVMe 1TB dành cho người tiêu dùng thường có độ bền khoảng 600 TBW (terabyte được ghi) trước khi dự kiến sẽ hỏng, điều đó có nghĩa là nó có thể tạo ra khoảng 375 ô.
Cuối cùng tôi đã chọn mua HP StorageWorks D12 2600 khay với ổ SAS 15K 450GB. Với thiết lập này, tôi có thể vẽ biểu đồ đồng thời cho từng ổ đĩa mà không gặp rủi ro xung đột IO ở cấp độ ổ đĩa. Ổ đĩa JBOD + rẻ hơn đáng kể so với thiết lập tương đương với ổ NVMe (thậm chí không tính đến chi phí thay thế sau khi đã đạt đến TBW).
Trang trại — Lưu trữ dài hạn
Không giống như kho lưu trữ sơ đồ, kho lưu trữ thu hoạch không yêu cầu thông lượng hoặc IOP cao. Vì lý do này, việc giảm thiểu chi phí là ưu tiên hàng đầu.
Có một số thiết lập có thể có, một số trong đó sẽ được thảo luận tại đây. Tuy nhiên, sau khi tìm kiếm trên eBay các lựa chọn đồ cũ, một số điều trở nên rõ ràng:
- Ổ cứng 3.5 inch lớn hơn có xu hướng có chi phí thấp nhất. Điều này hợp lý vì hầu hết các thiết bị hiện nay đã chuyển sang kích thước 2.5 inch hoặc 1.8 inch nhỏ hơn.
- Ổ cứng SAS (không phải SSD) dường như có chi phí trên mỗi TB thấp nhất với một số lô thấp tới 10 USD/TB (tính đến tháng 2021 năm XNUMX). Các ổ SAS này không tương thích với bo mạch SATA (dành cho người tiêu dùng) và thường được bán trên eBay sau khi ngừng hoạt động khỏi trung tâm dữ liệu của công ty.
Khi tôi bắt đầu sử dụng ổ cứng 3.5 inch SAS, tôi cần tìm cách kết nối chúng thực sự với máy gặt/máy vẽ của mình. Do hạn chế của việc không chế tạo vỏ/bảng nối đa năng, tôi bắt đầu tìm kiếm các vỏ đã qua sử dụng có thể chứa các ổ đĩa này trong khi vẫn duy trì chi phí mỗi khoang thấp nhất.
Tôi đã xem qua một số lựa chọn trên eBay và cuối cùng mua một vài mẫu khác nhau bao gồm một chiếc HP 24PAR 3 khay và hai chiếc IBM DS12 3512 khay.
Danh sách đầy đủ
Danh sách cuối cùng của các thành phần được hiển thị dưới đây. Nó bao gồm các thành phần chính được thảo luận ở trên nhưng cũng có các bộ phận phụ trợ cần thiết để gắn kết hệ thống lại với nhau.
Một điều đáng nhắc đến là thẻ HBA. Thẻ PCIe sẽ hiển thị các đầu nối bên ngoài SAS mà cáp từ JBOD sẽ kết nối. Khi mua nó, hãy đảm bảo bạn đang nhận được thẻ chế độ mục tiêu khởi tạo (IT) để các ổ đĩa xuất hiện trực tiếp trên HĐH thay vì thẻ chế độ IR. Để có được một điều tuyệt vời, bạn có thể muốn cài đặt một thẻ có hệ điều hành mới hơn (phiên bản 20).
Việc thiết lập chủ yếu là trực quan. Cáp kết nối với các lỗ mà chúng phù hợp. Tuy nhiên, hệ thống cáp SAS kết nối JBOD và máy vẽ/thu hoạch có thể kết nối theo kiểu nối tiếp.
Trong trường hợp của tôi, tôi có hai dây cáp rời khỏi máy chủ (một dây trên mỗi cổng từ HBA). Một trong các cáp kết nối với đầu vào của mảng lưu trữ tạm thời (HP D2600) và đầu ra của mảng đó kết nối với mảng HP 3PAR. Cáp còn lại kết nối với mảng IBM đầu tiên và đầu ra của cáp đó kết nối với mảng IBM thứ hai. JBOD thường có cổng đầu vào (chính) và cổng đầu ra (thường được gắn nhãn bằng mũi tên hướng ra ngoài).
tôi đã cài đặt Ubuntu 20.04 LTS trên máy chủ vì đây là bản phân phối Linux được sử dụng rộng rãi, điều đó có nghĩa là sẽ dễ dàng tìm thấy các diễn đàn khắc phục sự cố hơn nếu có bất kỳ sự cố nào phát sinh. Các bước bên dưới phác thảo cấu hình còn lại.
Bước 1: Đảm bảo tất cả các ổ đĩa đều có sẵn
Bước đầu tiên là kiểm tra ổ đĩa nào đang được hệ điều hành phát hiện. Điều này có thể được thực hiện bằng cách chạy lsscsi
yêu cầu. Đầu ra được hiển thị dưới đây.
Lưu ý rằng lệnh trên không cung cấp thông tin về hệ thống tệp hoặc kích thước của ổ đĩa. Để làm được điều đó, hãy chạy lsblk
chỉ huy.
Quan trọng: Lưu ý rằng không phải tất cả các ổ đĩa đều xuất hiện dưới cả hai lệnh! Các ổ đĩa xuất hiện dưới lsscsi
nhưng không lsblk
có thể có một số điểm không tương thích khiến HĐH không cung cấp chúng để cài đặt, v.v. Một ví dụ về điều này là /dev/sdaw
.
Trong trường hợp của tôi, sự cố này xảy ra do kích thước cung là 520, không được nhân Linux đã cài đặt của tôi hỗ trợ (có thể tìm thấy cuộc thảo luận về chủ đề này tại đây và tại đây). Bạn có thể xác định xem đây có phải là trường hợp của bạn hay không bằng cách xem qua dmesg
nhật ký lệnh cho một thông báo lỗi như [sdaw] Unsupported sector size 520
.
Để giải quyết vấn đề này, tôi đã định dạng lại các ổ đĩa bằng kích thước khối 512 bằng lệnh sg_format -v --format --size=512 /dev/sdX
. Lệnh này có thể mất một khoảng thời gian đáng kể để chạy (vài giờ) và kết quả được hiển thị bên dưới.
Sau khi hoàn thành, ổ đĩa sẽ hiển thị trong lsblk
đầu ra.
Bước 2: Tạo hệ thống tệp trên ổ đĩa
Để định dạng ổ đĩa bằng ext4 hệ thống tập tin, tôi đã chạy lệnh sau: sudo mkfs -t ext4 — verbose /dev/sda
.
Bước 3: Gắn ổ đĩa
Bây giờ chúng ta có thể truy cập các ổ đĩa và chúng đã được định dạng bằng hệ thống tệp mong muốn, chúng ta có thể gắn kết những ổ đĩa này.
- Tạo các thư mục nơi chúng ta sẽ gắn ổ đĩa. Ví dụ:
/mnt/farm/00
đến/mnt/farm/23
cho các ổ đĩa sẽ lưu trữ các ô cuối cùng và/mnt/plot-tmp/00
đến/mnt/plot-tmp/11
cho các vị trí vẽ đồ thị tạm thời. - chạy
sudo blkid
để lấy ID duy nhất của ổ đĩa (hoặc phân vùng) của bạn. Nó sẽ xuất ra một số dòng như/dev/sdae: UUID=”29494f44–2f75–4c01-a766–18755eb583d7" TYPE=”ext4"
. - Chỉnh sửa tập tin fstab với
sudo vim /etc/fstab
và liên kết từng ổ đĩa với tương ứng của chúng/mnt/...
thư mục. Là cẩn thận không chỉnh sửa những dòng đầu tiên của tệp vì những dòng này được yêu cầu để gắn ổ đĩa gốc của hệ điều hành. Tập tin cuối cùng của tôi được hiển thị dưới đây. - chạy
sudo mount -a
để gắn kết tất cả các ổ đĩa được chỉ định trong tệp fstab. Nó sẽ chỉ gắn các ổ đĩa chưa được gắn nên an toàn khi chạy nhiều lần. - Đảm bảo người dùng có quyền truy cập vào ổ đĩa và tệp của nó bằng cách chạy sudo
chmod -R 777 /mnt/farm/00
.
Bước 4: Chạy phần mềm Chia Blockchain
- Thực hiện theo các hướng dẫn chính thức được chỉ định tại đây để cài đặt blockchain Chia (Tôi không cài đặt GUI).
- chạy
chia start farmer
để khởi động các daemon cho ví, máy gặt, v.v.
Bước 5: Thiết lập Plotman (Tùy chọn)
Người âm mưu là người quản lý sơ đồ sẽ đảm nhận việc tạo ra các công việc lập sơ đồ mới. Nó là một công cụ tiện lợi (không bắt buộc).
- Cài đặt Plotman theo hướng dẫn tại đây.
- Chỉnh sửa
plotman.yaml
theo thông số kỹ thuật của máy vẽ của bạn. Tập tin cuối cùng của tôi được hiển thị dưới đây.
giao diện người dùng:
use_stty_size: Đúng
thư mục:
nhật ký: /home/plotter/plotman-log
tmp:
- /mnt/plot-tmp/f00
- /mnt/plot-tmp/f01
- /mnt/plot-tmp/f02
- /mnt/plot-tmp/f03
- /mnt/plot-tmp/f04
- /mnt/plot-tmp/f05
- /mnt/plot-tmp/f06
- /mnt/plot-tmp/f07
- /mnt/plot-tmp/f08
- /mnt/plot-tmp/f09
- /mnt/plot-tmp/f10
- /mnt/plot-tmp/f11
dst:
#- /mnt/trang trại/00 ĐẦY ĐỦ
#- /mnt/trang trại/01 ĐẦY ĐỦ
#- /mnt/trang trại/02 ĐẦY ĐỦ
#- /mnt/trang trại/03 ĐẦY ĐỦ
#- /mnt/trang trại/04 ĐẦY ĐỦ
#- /mnt/trang trại/05 ĐẦY ĐỦ
#- /mnt/trang trại/06 ĐẦY ĐỦ
#- /mnt/trang trại/07 ĐẦY ĐỦ
#- /mnt/trang trại/08 ĐẦY ĐỦ
#- /mnt/trang trại/09 ĐẦY ĐỦ
#- /mnt/trang trại/10 ĐẦY ĐỦ
#- /mnt/trang trại/11 ĐẦY ĐỦ
- /mnt/trang trại/12
- /mnt/trang trại/13
- /mnt/trang trại/14
- /mnt/trang trại/15
- /mnt/trang trại/16
- /mnt/trang trại/17
- /mnt/trang trại/18
- /mnt/trang trại/19
- /mnt/trang trại/20
- /mnt/trang trại/21
- /mnt/trang trại/22
- /mnt/trang trại/23
lập kế hoạch:
tmpdir_stagger_phase_major: 2
tmpdir_stagger_phase_minor: 1
tmpdir_stagger_phase_limit: 1
tmpdir_max_jobs: 1
toàn cầu_max_jobs: 20
toàn cầu_stagger_m: 40
bỏ phiếu_time_s: 30
âm mưu:
k: 32
e: Sai # Sử dụng tùy chọn vẽ đồ thị -e
n_threads: 2 # Chủ đề cho mỗi công việc
n_buckets: 128 # Số lượng nhóm để chia dữ liệu thành
job_buffer: 8096 # Mỗi bộ nhớ công việc
Một số điểm đáng nói:
- Plotman không ngừng lập lịch cho các ổ đĩa trang trại (tính đến thời điểm viết bài này) khi ổ đĩa đã đầy. Vì vậy, bạn cần loại bỏ chúng (hoặc bình luận chúng như trên).
- Plotman sẽ tự động thêm ổ đĩa trang trại vào máy gặt chia.
- tôi sử dụng
tmpdir_max_jobs
bằng 1 vì tôi đang vẽ đồ thị trên các đĩa cứng không có hiệu suất tìm kiếm tốt so với SSD.
Bước 6: Chạy máy vẽ
Tại thời điểm này, tất cả những gì cần thiết để bắt đầu vẽ đồ thị là chạy plotman interactive
.
Lưu ý: Công việc lập kế hoạch chạy rất dài /dev/farm/usb2
là một quá trình gỡ lỗi không có nghĩa là chạy đến khi hoàn thành.
Hy vọng điều này có thể hữu ích trong việc cung cấp cho bạn ý tưởng về những gì cần thiết để nuôi Chia!
Tính đến thời điểm hiện tại, trang trại của tôi đã đầy 1/3 chặng đường và tôi dự định đăng thông tin cập nhật khi trang trại đầy và khi tôi bắt đầu lập kế hoạch lại cho các hồ bơi.
Đặc biệt cảm ơn Katie Gandomi để được giúp đỡ phát triển.
Chúc nông dân vui vẻ!
- truy cập
- thêm vào
- Tất cả
- xung quanh
- vịnh
- blockchain
- Xây dựng
- mua
- Mua
- gây ra
- tỷ lệ cược
- kiểm tra
- thành phần
- máy tính
- Sự đồng thuận
- người tiêu dùng
- tiêu thụ
- cryptocurrency
- dữ liệu
- ngày
- Phân quyền
- Thiết kế
- Phát triển
- Thiết bị (Devices)
- ĐÃ LÀM
- Thu nhập
- eBay
- năng lượng
- EU
- EV
- trang trại
- nông nghiệp
- Tên
- phù hợp với
- định dạng
- Full
- Cho
- tốt
- phần cứng
- Cao
- House
- hr
- HTTPS
- ia
- IBM
- ý tưởng
- Va chạm
- Bao gồm
- thông tin
- Intel
- IP
- IT
- Việc làm
- việc làm
- lớn
- Cấp
- Hạn chế
- linux
- Danh sách
- tải
- dài
- LP
- Trận đấu
- toán học
- trung bình
- Khai thác mỏ
- tháng
- mạng
- chính thức
- Các lựa chọn
- Nền tảng khác
- Họa tiết
- hiệu suất
- Hồ bơi
- dự án
- bằng chứng
- RAM
- Thông tin
- Kết quả
- xem xét
- Thưởng
- giàn khoan
- chạy
- chạy
- an toàn
- Tìm kiếm
- ý nghĩa
- Kích thước máy
- So
- Phần mềm
- bán
- Giải pháp
- động SOLVE
- Không gian
- tốc độ
- chia
- Bắt đầu
- bắt đầu
- là gắn
- hàng
- hỗ trợ
- Hỗ trợ
- hệ thống
- Mục tiêu
- tạm thời
- thời gian
- giao dịch
- Cập nhật
- Người sử dụng
- Versus
- khối lượng
- ví
- Là gì
- Wikipedia
- giành chiến thắng
- ở trong
- Công việc
- giá trị
- viết