Overview
randd
randcli
풀 노드 설치
검증인 노드 설치
난수 요청

풀 노드(Full Node) 설치

DecentRandom 풀노드를 운영하기 위해서는 randdrandcli가 필요합니다.

아래 설명은 초기화된 ubuntu 19.0.4를 원격 서버에서 기동 중인 상태를 기준으로 합니다.

계정 생성

데몬을 구동할 계정을 생성합니다.

$ adduser <계정아이디>
$ usermod -aG sudo <계정아이디>

ssh 키 파일을 통한 로그인을 설정하려면 아래 작업을 수행합니다.

$ cd /home/<계정아이디>/
$ mkdir .ssh
$ cd .ssh/
& touch authorized_keys
$ vi authorized_keys

편집기에 로그인에 사용할 ssh 공개키를 입력합니다.

DecentRandom 코어 파일 다운로드

새로 생성한 계정으로 ssh 접속합니다.

$ exit
$ ssh <계정아이디>@<서버 IP>

githubdecentrandom repository에서 linux용 가장 최근 릴리즈 파일을 다운로드합니다.

$ wget <리눅스 버전 파일경로>
$ tar -zxvf <tar.gz 파일명>

randdrandcli를 실행 디렉토리로 복사합니다.

$ sudo cp randd /usr/local/bin/
$ sudo cp randcli /usr/local/bin/

randd 초기화

초기화를 진행합니다.

$ randd init <노드이름>
$ randd unsafe-reset-all

제네시스 설정 파일(genesis.json)을 다운로드 합니다.

$ wget https://decentrandom.com/genesis.json
$ cp genesis.json ~/.randd/config/

설정 파일을 편집합니다.

$ vi ~/.randd/config/config.toml

외부 연결을 허용합니다.

# Address to advertise to peers for them to dial
# If empty, will use the same port as the laddr,
# and will introspect on the listener or use UPnP
# to figure out the address.
external_address = "tcp://<IP 주소>:26656"

시드를 설정합니다.

# Comma separated list of seed nodes to connect to
seeds = "f4215b2e40f6855a4372090f73f67ade07328681@157.230.222.192:26656"

외부에 시드를 공급하기 위해 시드 모드를 켭니다.

# Seed mode, in which node constantly crawls the network and looks for
# peers. If another node asks it for addresses, it responds and disconnects.
#
# Does not work if the peer-exchange reactor is disabled.
seed_mode = true

설정 파일을 저장합니다.

randd 실행

백그라운드 모드로 randd를 실행합니다.

$ nohup randd start &

정상적으로 작동 중인지 확인합니다.

$ cat ./nohup.out