VELAS Validator 노드 실행 가이드
이 가이드는 Velas 네트워크에서 검증자 노드를 시작하는 프로세스를 설명합니다. 노드는 네트워크 및 Unix Linux 시스템에 대한 약간의 기술 지식이 필요합니다. 시작하기 전에 다음과 같은 기본적이고 필요한 작업을 수행할 수 있는지 확인하십시오.
- Unix/Linux 시스템의 설치 및 구성
- 네트워크 구성(오픈 포트, 방화벽 구성, NAT 구성 등)
- 시스템 기능을 유지하고 업데이트하려는 의지
하드웨어 및 OS 요구 사항
전체 하드웨어 및 소프트웨어 요구 사항 설명은 이 페이지를 확인하십시오. 여기
- 자신의 설정을 만들고 필요한 라이브러리와 종속성을 설치하여 모든 Linux 플랫폼에서 소프트웨어를
- 실행할 수 있어야 합니다.
- 테스트에서 소프트웨어는 Ubuntu 20.04 및 RHEL 8에서 문제 없이 몇 주 동안 실행되었습니다.
OSX 또는 Windows에서 노드를 실행하는 것이 기술적으로 가능하지만 권장하지 않습니다.
GPU 및 CUDA 라이브러리
CPU 전용 노드는 초기 유휴 네트워크를 따라갈 수 있지만 트랜잭션 처리량이 증가하면 GPU가 필요합니다.
어떤 종류의 GPU입니까?
- Nvidia Turing 및 volta 제품군 GPU 1660ti ~ 2080ti 시리즈 소비자 GPU 또는 Tesla 시리즈 서버 GPU를 권장합니다.
- 우리는 현재 OpenCL을 지원하지 않으므로 AMD GPU를 지원하지 않습니다.
CUDA는 시스템에서 GPU를 사용하는 데 필요합니다. 제공된 Velas 릴리스 바이너리는 CUDA Toolkit 10.1 업데이트 1과 함께 Ubuntu 18.04에 구축되었습니다. 컴퓨터에서 다른 CUDA 버전을 사용하는 경우 소스에서 다시 빌드해야 합니다.
GPU 및 CUDA 버전 확인
GPU 및 CUDA Toolkit 10.1 업데이트 1에 필요한 그래픽 드라이버를 설치했으면 다음 명령을 사용하여 설치를 확인할 수 있습니다.
Nvidia-smi 명령을 사용하여 NVIDIA 그래픽 카드가 설치되고 작동하는지 확인하십시오. 출력은 다음과 같아야 합니다.
[velas@node ~]$ nvidia-smi
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.73.01 Driver Version: 460.73.01 CUDA Version: 11.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 GeForce RTX 2070 Off | 00000000:21:00.0 Off | N/A |
| 35% 52C P2 59W / 175W | 235MiB / 7982MiB | 92% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
CUDA 버전이 필요한 버전과 실제로 일치하는지 확인하십시오.
[velas@node ~]$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
Cuda compilation tools, release 10.1, V10.1.243
“참고: 노드 소프트웨어를 시작할 때 CUDA를 활성화할지 여부를 선택할 수 있습니다. 소프트웨어가 cuda 라이브러리를 사용하도록 하려면 실행 라인에 --cuda 인수를 추가하는 것을 잊지 마십시오.
예기치 않은 종료 또는 충돌이 발생하면 --cuda 인수를 제거하고 다른 문제를 배제하기 위해 인수 없이 소프트웨어를 실행해 보십시오."
1. 단계. Velas 도구 모음 설치
Github 페이지를 방문하여 사용 가능한 최신 릴리스를 확인하십시오. 이 가이드를 작성하는 시점은 다음 이미지에서 볼 수 있듯이 0.3.4입니다.
Velas 설치 도구 다운로드
[velas@node]$ wget https://github.com/velas/velas-chain/releases/download/v0.3.4/velas-install-init-x86_64-unknown-linux-gnu
실행 권한 할당
[velas@node$ chmod +x velas-install-init-x86_64-unknown-linux-gnu
|
릴리스 번호의 LATEST_RELEASE를 대체하여 마지막 릴리스를 설치합니다.
./velas-install-init-x86_64-unknown-linux-gnu LATEST_RELEASE
[velas@node]$ ./velas-install-init-x86_64-unknown-linux-gnu 0.3.4
|
"참고: 이 가이드를 작성하는 시점에서 최신 버전은 0.3.4입니다."
당신은 이것과 비슷한 출력을 얻을 것이다
Configuration: /home/velasnode/.config/velas/install/config.yml
Active release directory: /home/velasnode/.local/share/velas/install/active_release
* Release version: 0.3.4
* Release URL: https://github.com/velas/velas-chain/releases/download/v0.3.4/velas-release-x86_64-unknown-linux-gnu.tar.bz2
Update successful
Adding export PATH="/home/velasnode/.local/share/velas/install/active_release/bin:$PATH" to /home/velasnode/.bash_profile
Close and reopen your terminal to apply the PATH changes or run the following in your existing shell:
export PATH="/home/velasnode/.local/share/velas/install/active_release/bin:$PATH"
터미널이 제안하는 대로 export PATH 명령을 실행하십시오.
[velas@node]$ export PATH="/home/velasnode/.local/share/velasnode/install/active_release/bin:$PATH"
중요, 터미널에 표시되는 내보내기 명령은 사용자마다 다르기 때문에 사용하세요.
"velas" 명령을 사용하여 사용 가능한 모든 작업의 전체 목록을 확인합니다. 이는 소프트웨어를 성공적으로 설치했음을 나타냅니다.
CLI 사용과 관련된 추가 정보를 얻으려면 Wiki를 방문하십시오.
https://docs.velas.com/cli/conventions
2. 단계. Velas CLI 구성
velas config set 명령을 사용하여 Velas 메인넷과 CLI 연결
[velas@node]$ velas config set --url https://explorer.velas.com/rpc
Config File: /home/user/.config/velas/cli/config.yml
RPC URL: https://explorer.velas.com/rpc
WebSocket URL: wss://explorer.velas.com/rpc (computed)
Keypair Path: /home/user/.config/velas/id.json
Commitment: confirmed
클러스터에 연결할 수 있는지 확인하고 소프트웨어/클러스터 버전을 확인합니다.
[velas@node ~]$ velas transaction-count
17729450
[velas@node ~]$ velas --version
velas-cli 0.3.4
[velas@node ~]$ velas cluster-version
0.3.4
다음 명령을 사용하여 클러스터 버전과 다른 경우 버전을 업데이트할 수 있습니다.
벨라스 설치 초기화 VERSION_NUMBER
가십 네트워크에 가입하고 클러스터의 다른 모든 노드를 봅니다.
[velas@node~]$ velas-gossip spy --entrypoint bootstrap.velas.com:8001
터미널에 네트워크의 활성 노드 목록과 "스파이" 모드의 컴퓨터가 표시되어야 합니다.
STEP 3. 시스템 튜닝
UDP 버퍼 늘리기
[velas@node ~]$ sudo bash -c "cat >/etc/sysctl.d/20-velas-udp-buffers.conf <<EOF |
[velas@node ~]$ sudo sysctl -p /etc/sysctl.d/20-velas-udp-buffers.conf
[sudo] password for velasnode:
net.core.rmem_default = 134217728
net.core.rmem_max = 134217728
net.core.wmem_default = 134217728
net.core.wmem_max = 134217728
메모리 매핑 파일 제한 늘리기
[velas@node ~]$ sudo bash -c "cat >/etc/sysctl.d/20-velas-mmaps.conf <<EOF
> # Increase memory mapped files limit
> vm.max_map_count = 500000
> EOF"
LimitNOFILE=500000을 systemd 서비스 파일의 [Service] 섹션에 추가하고, 사용하는 경우에는 /etc/systemd/system.conf에 추가합니다.
[velas@node ~]$ sudo systemctl daemon-reload
[velas@node ~]$ sudo bash -c "cat >/etc/security/limits.d/90-velas-nofiles.conf <<EOF
> # Increase process file descriptor count limit
> * - nofile 500000
> EOF"
4. 단계. 신원 및 투표 계정 생성
시작하기 전에 이 두 계정의 기능을 이해합시다.
투표 계정
create-vote-account 명령으로 투표 계정을 생성할 수 있습니다. 투표 계정은 처음 생성할 때 또는 검증인이 실행된 후에 구성할 수 있습니다. 투표 계정의 모든 측면은 계정의 수명 동안 고정된 투표 계정 주소를 제외하고 변경할 수 있습니다. 이 계정은 노드가 설정한 커미션에서 보상을 받습니다.
자세한 내용은 투표 계정 관리 문서를 참조하세요.
검증인 신원
검증인 ID는 투표 계정에 제출된 모든 투표 거래 수수료를 지불하는 데 사용되는 시스템 계정입니다. 검증인은 수신한 대부분의 유효한 블록에 투표할 것으로 예상되기 때문에 검증인 ID 계정은 트랜잭션에 서명하고 수수료를 지불하는 경우가 많습니다(초당 여러 번 가능). 이러한 이유로 검증자 ID 키 쌍은 검증자 프로세스가 실행 중인 동일한 시스템의 키 쌍 파일에 "핫 월렛"으로 저장되어야 합니다. 핫 지갑은 일반적으로 오프라인 또는 "콜드" 지갑보다 덜 안전하기 때문에 검증인 운영자는 몇 주 또는 몇 달과 같은 제한된 시간 동안 투표 수수료를 충당할 수 있을 만큼 충분한 VLX만 신원 계정에 저장할 수 있습니다. 검증인 ID 계정은 더 안전한 지갑에서 주기적으로 채워질 수 있습니다.
이 방법은 유효성 검사기 노드의 디스크 또는 파일 시스템이 손상되거나 손상된 경우 자금 손실 위험을 줄일 수 있습니다.
투표 계정을 생성할 때 검증인 ID를 제공해야 합니다. 검증인 ID는 또한 vote-update-validator 명령을 사용하여 계정을 생성한 후 변경할 수 있습니다.
참고: ID와 투표 계정을 위해 두 시드를 모두 저장해야 합니다. 시드를 잃을 경우 계정을 제어할 수 없게 되므로 주의하십시오.
ID 생성
옵션 1. 시스템 키 쌍 - 다음을 실행하여 유효성 검사기에 대한 ID 키 쌍을 만듭니다.
[velas@node ~]$ velas-keygen new -o ~/validator-keypair.json
Generating a new keypair
For added security, enter a BIP39 passphrase
NOTE! This passphrase improves security of the recovery seed phrase NOT the
keypair file itself, which is stored as insecure plain text
BIP39 Passphrase (empty for none):
Wrote new keypair to /home/velasnode/validator-keypair.json
=========================================================================
pubkey: FncgcZc6QAo6utJyZvp5Cp9eNxXvG9T7yCFKdH6VdXin
=========================================================================
Save this seed phrase to recover your new keypair:
coach omit master vapor certain case powder stock swarm voice viable evil
=========================================================================
이제 다음을 실행하여 ID 공개 키를 볼 수 있습니다.
[velas@node ~]$ velas-keygen pubkey ~/validator-keypair.json
FncgcZc6QAo6utJyZvp5Cp9eNxXvG9T7yCFKdH6VdXin
기본적으로 validator-keypair.json은 " /home/user " 디렉토리에 저장됩니다. "~/"를 변경할 수 있습니다.
원하는 디렉토리를 사용합니다.
이제 키 쌍이 있으므로 다음 모든 명령에 대해 유효성 검사기 키 쌍을 사용하도록 Velas 구성을 설정합니다.
[velas@node~]$ velas config set --keypair ~/validator-keypair.json
onfig File: /home/velasnode/.config/velas/cli/config.yml
RPC URL: https://explorer.velas.com/rpc
WebSocket URL: wss://explorer.velas.com/rpc (computed)
Keypair Path: /home/velasnodevalidator-keypair.json
Commitment: confirmed
옵션 2. 종이 지갑 ID 키 쌍 파일을 디스크에 쓰는 대신 ID 파일에 대한 종이 지갑을 만들 수 있습니다.
[velas@node ~]$ velas-keygen new --no-outfile
이제 다음을 실행하여 해당 ID 공개 키를 볼 수 있습니다.
[velas@node ~]$ velas-keygen pubkey ASK
투표 계정 생성
투표 계정 키 쌍을 만들고 네트워크에서 투표 계정을 만듭니다.
[velas@node ~]$ velas-keygen new -o ~/vote-account-keypair.json
Generating a new keypair
For added security, enter a BIP39 passphrase
NOTE! This passphrase improves security of the recovery seed phrase NOT the
keypair file itself, which is stored as insecure plain text
BIP39 Passphrase (empty for none):
Wrote new keypair to /home/velasspanish/vote-account-keypair.json
=============================================================================
pubkey: FM8V7mFGtC7msjXZhn8gzfgXVGSVJyWrYno4tW5rNjCY
=============================================================================
Save this seed phrase to recover your new keypair:
loan illegal clip style electric use elevator repeat auto mule educate cotton
=============================================================================
이제 ID와 투표 계정을 만들었으므로 네트워크에서 자신을 식별하고 노드를 동기화할 수 있도록 연결할 차례입니다.
이렇게 하려면 신원 계정에 VLX 네이티브 자금이 필요하며 두 가지 기능을 제공합니다.
- 다음 단계에서 신원 계정과 투표 계정을 연결합니다(네트워크에서 투표 계정 생성).
- 노드가 참여하는 트랜잭션의 수수료를 지불합니다.
공개 주소를 기록해 두어야 합니다. 어떤 경우에도 다시 볼 수 있습니다.
[velas@node ~]$ velas-keygen pubkey ~/validator-keypair.json
FncgcZc6QAo6utJyZvp5Cp9eNxXvG9T7yCFKdH6VdXin
velas@node ~]$
다음 명령을 사용하여 계정에 얼마나 많은 잔액이 있는지 확인할 수 있습니다.
velas@node ~]$
velas balance FncgcZc6QAo6utJyZvp5Cp9eNxXvG9T7yCFKdH6VdXin
0
velas@node ~]$
Velas 지갑에서 일부 VLX 네이티브 보내기:
잔액을 확인하면 이제 ID 계정에 VLX 잔액이 표시됩니다.
velas@node ~]$
velas balance FncgcZc6QAo6utJyZvp5Cp9eNxXvG9T7yCFKdH6VdXin
1.5 VLX
velas@node ~]$
이제 ID 계정에 VLX가 있으므로 블록체인에서 투표 계정을 만들 차례입니다.
[velas@node ~]$ velas create-vote-account ~/vote-account-keypair.json ~/validator-keypair.json
Signature: 4Mo33Y6SNkBUjtCpdfdmCeBK5T7eMkAyRKQ7QZz12EDZx8qs6j2Tj9G26vBUBpjTbz95zUdhMEU3dV8TRsh6evNz
“참고: 컴퓨터의 Keypair 시스템 파일 대신 종이 지갑에 저장된 ID를 사용하는 경우 ~/validator-keypair.json을 ASK로 바꾸면 ID 계정에 해당하는 시드를 입력하라는 메시지가 표시됩니다.
키 쌍 파일은 컴퓨터에 저장되므로 보안이 손상된 경우 노출될 수 있습니다. 1-3개월 동안 수수료를 지불할 만큼 충분한 양의 VLX Native만 보내십시오. 100-300 VLX의 양이 있어야 합니다. 상당한 기간 동안 충분합니다."
5. 단계. 유효성 검사기 연결
노드 실행을 허용하는 명령은 "velas-validator"입니다. 콘솔에 작성하면 노드를 실행할 때 가능한 모든 인수와 옵션을 볼 수 있습니다.
- 컴퓨터에 GPU가 없거나 CUDA와 호환되지 않는 경우 명령줄에 --cuda를 추가하면 안 됩니다.
- 기본적으로 원장은 하드 드라이브에 더 이상 공간이 남지 않을 때까지 확장되며 arg --limit-ledger-size를 추가하면 파일이 최대 500GB로 제한됩니다.
- 노드가 연결하는 데 사용할 포트 범위를 제어할 수 있으며 기본적으로 포트 범위 8000-10000을 여는 것이 좋습니다.
- 시스템 시계가 동기화되어 있는지 확인하십시오.
호환되는 GPU 또는 CUDA가 없는 시스템
[velas@node ~]$ screen velas-validator --identity ~/validator-keypair.json --vote-account ~/vote-account-keypair.json --ledger /home/velasnode/ledger/ --rpc-port 8899 --dynamic-port-range 8000-8010 --entrypoint bootstrap.velas.com:8001 --limit-ledger-size --expected-shred-version 17211 --max-genesis-archive-unpacked-size 707374182 --log -
호환 가능한 GPU 또는 CUDA가 있는 시스템
[velas@node ~]$ screen velas-validator --cuda --identity ~/validator-keypair.json --vote-account ~/vote-account-keypair.json --ledger /home/velasnode/ledger/ --rpc-port 8899 --dynamic-port-range 8000-8010 --entrypoint bootstrap.velas.com:8001 --limit-ledger-size --expected-shred-version 17211 --max-genesis-archive-unpacked-size 707374182 --log -
사용자 지정 또는 선택적 설정
"--identity ASK" 및/또는 "--vote-account ASK" 시스템에서 키 쌍 대신 종이 지갑을 사용하는 경우 "ASK" 인수로 해당 파일의 경로를 변경해야 합니다.
“--limit-ledger-size <size>” 50000000에 대해 <size>를 대체하여 원장의 크기를 최대 100GB로 제한할 수 있으며 더 크면 다른 값을 지정할 수 있습니다.
STEP 6. 스테이크 위임
기본적으로 노드에는 위임된 잔액이 없으므로 노드가 리더 역할을 하고 검증에 대한 보상을 받기 위해서는 노드 소유자 자신 또는 다른 사람으로부터 항상 최소 100만 VLX를 위임해야 합니다. 에이전트 또는 둘의 합계. 코인을 위임하는 가장 쉬운 방법은 Velas 지갑 자체입니다.
Velas 웹 지갑 UI를 사용하여 VLX 위임
STEP 7. 노드 확인
활성 노드 목록에서 노드를 볼 수 있어야 하며 새 창에서 "velas-gossip spy"를 실행하여 투표 계정 및/또는 ID, 사용 중인 포트 목록 및 공용 IP로 식별할 수 있어야 합니다.
[velas@node ~]$ velas-gossip spy --entrypoint bootstrap.velas.com:8001
"htop" 명령을 실행하면 서버에서 열려 있는 프로세스도 볼 수 있습니다.
댓글
댓글 0개
댓글을 남기려면 로그인하세요.