Chạy một node Nhà xác thực

Thiết lập một node Nhà xác thực trên Chiliz Chain

Node Nhà xác thực là gì?

Để trở thành nhà xác thực trên Chiliz Chain, bạn cần có thiết lập phần cứng cụ thể và có khả năng chạy một node Nhà xác thực. Một node là một hệ thống máy tính được thiết lập đặc biệt để xác thực các giao dịch trước khi cam kết chúng trên Chiliz Chain.

Khởi chạy Nhà xác thực

Để chạy một node Nhà xác thực, bạn cần thiết lập các tham số sau:

## TL;DR bạn cần chạy lệnh sau (đảm bảo cập nhật tham số nodekeyhex!)

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--mine \
--chiliz \
--datadir=/datadir \
--password=/datadir/password.txt \
--allow-insecure-unlock \
--unlock=f9100d364b45a8fdbd178ed1edfe632cc7eb2ecc \
--syncmode=full \
--gcmode=archive \
--miner.gaslimit=40000000 \
--miner.gasprice=5000000000 \
--miner.etherbase=REPLACE_WITH_VALIDATOR_ADDRESS
--nodekeyhex=2668f377e69de_EXAMPLE_REPLACE_WITH_YOUR_VALUE_c88bea3e337446ed73 \
--nat=extip:140.250.140.250 \
--verbosity=4

Điều kiện tiên quyết

Để chạy node nhà xác thực Chiliz Chain, bạn phải cài đặt Docker Engine trên máy tính hoặc máy chủ của mình.

Do đó, hãy hoàn thành cài đặt Docker trước khi tiếp tục.

Yêu cầu hệ thống

Bạn sẽ cần một máy chủ chuyên dụng để chạy node nhà xác thực của mình. Máy chủ này nên có ít nhất 4GB RAM, 2 lõi CPU và ổ đĩa thể rắn (SSD) để đạt hiệu suất tối ưu. Khuyến nghị có ít nhất 300 GB dung lượng đĩa trống để đồng bộ với chuỗi. Bạn có thể sử dụng nhà cung cấp dịch vụ đám mây như Amazon Web Services, Google Cloud Platform, hoặc Microsoft Azure, hoặc bạn có thể thiết lập máy chủ của riêng mình.

Ảnh Docker được xây dựng sẵn

Xem hoặc sử dụng các ảnh Docker được xây dựng sẵn từ kho lưu trữ công cộng Chiliz Chain 2.0 trên Docker hub cho Mainnet.

Khởi chạy một Nhà xác thực và bắt đầu đồng bộ

Điểm khởi đầu được khuyến nghị để chạy node nhà xác thực Chiliz Chain là với dữ liệu volume được gắn kết. Nếu phương pháp này được sử dụng để tái tạo một Docker container, dữ liệu sẽ được lưu trữ trong thư mục và có thể dễ dàng tái sử dụng hoặc sao chép sang nhà xác thực khác.

Tạo địa chỉ nhà xác thực

Tạo node nhà xác thực với lệnh sau:

docker run --rm -ti \
-v $(pwd)/keystore:/root/.ethereum/keystore/ \
chilizchain/ccv2-geth:latest \
--chiliz \
account new

Bạn sẽ cần nhập mật khẩu cho tệp khóa bí mật.

Kết quả của lệnh trước sẽ là:

  • Địa chỉ công khai của khóa: Trong khi chạy nhà xác thực, địa chỉ này sẽ được sử dụng để đặt tham số --unlock.

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--chiliz \
...
--unlock=F9100d364b45a8fdbd178ed1edfe632cc7eb2ecc # example
  • Đường dẫn của tệp khóa bí mật: Tệp này cần được di chuyển vào thư mục "keystore" bên trong datadir $(pwd)/my-datadir mà bạn đã tạo ở các bước trước, vì vậy đường dẫn cuối cùng của tệp sẽ là "$(pwd)/my-datadir/keystore/UTC–(TIMESTAMP)-(ADDRESS)". KHÔNG thay đổi tên của tệp.

  • Mật khẩu: Mật khẩu bạn đã nhập trong quá trình thực thi lệnh trước cần được lưu trữ trong một tệp: $(pwd)/my-datadir/password.txt Tệp này sẽ được sử dụng để đặt tham số --password trong khi chạy node nhà xác thực. Đừng quên rằng tất cả các tệp trong đường dẫn máy chủ $(pwd)/my-datadir sẽ nằm trong container trong thư mục /datadir, đó là lý do tại sao tham số mật khẩu nên được đặt như ví dụ sau:

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--chiliz \
...
--password=/datadir/password.txt
...

Điều rất quan trọng là bạn phải lưu ý các khuyến nghị sau:

  • Bạn có thể chia sẻ địa chỉ công khai của mình với bất kỳ ai. Người khác cần nó để tương tác với bạn.

  • Bạn KHÔNG BAO GIỜ được chia sẻ khóa bí mật với bất kỳ ai! Khóa kiểm soát quyền truy cập vào tài sản của bạn!

  • Bạn phải SAO LƯU tệp khóa của mình! Nếu không có khóa, không thể truy cập vào tài khoản của bạn!

  • Bạn phải NHỚ mật khẩu của mình! Nếu không có mật khẩu, không thể giải mã khóa!

Tạo khóa node nhà xác thực

Phần này là tùy chọn.

Khuyến nghị tạo một chuỗi hex ngẫu nhiên cho node. Điều này hữu ích cho việc theo dõi trong nhật ký và tránh các vấn đề kết nối với chuỗi.

Để làm điều này, bạn có thể sử dụng https://www.browserling.com/tools/random-hex và tạo một khóa hex với 64 ký tự cho mỗi node. Khi chạy node nhà xác thực, bạn có thể đặt --nodekeyhex với giá trị này. Điều này sẽ đảm bảo rằng khi bạn khởi động lại node, nó sẽ có cùng địa chỉ node (gọi là "địa chỉ enode") và sẽ giúp dễ dàng hơn cho việc gỡ lỗi hoặc tìm lỗi trong tương lai.

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--chiliz \
...
--nodekeyhex=2668f377e69de_EXAMPLE_REPLACE_WITH_YOUR_VALUE_c88bea3e337446ed73 # example
...

Thiết lập cơ chế ánh xạ cổng NAT

Theo tài liệu của Geth, tham số --nat có các tùy chọn khác nhau: any, none, upnp, pmpextip:<IP>. Mặc định là any.

Chúng tôi khuyến nghị sử dụng extip:<IP>, trong đó IP là địa chỉ IPv4 công khai nơi nhà xác thực được khởi chạy.

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--chiliz \
...
--nat=extip:140.250.140.250 # example
...

Thiết lập mức độ chi tiết của nhật ký

Để khắc phục sự cố sâu hơn, mức độ chi tiết của nhật ký có thể được thiết lập như sau:

  • 0=silent

  • 1=error

  • 2=warn

  • 3=info

  • 4=debug

  • 5=detail

Giá trị mặc định cho tham số --verbosity là 3. Chúng tôi khuyến nghị sử dụng 4.

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--chiliz \
...
--verbosity=4 #example
...

Last updated