Filecoin Lotus 노드를 설정하고 원격으로 연결하는 방법


WFIL(WFIL)에서 우리는 이더리움에서 처음으로 Filecoin으로 포장된 기호화폐를 개발하고 있다.우리의 목표를 실현하기 위해서는 Filecoin의 블록체인을 상세하게 탐색하고 분석할 수 있어야 한다.
이더리움 사용에 익숙해지면 우리는 몇 가지 도구를 빨리 생각해서 이 점을 실현할 수 있지만, 현재는 Fielecoin이 매우 초기 단계에 있기 때문에 이런 도구는 아직 사용할 수 없다.
따라서 자체 Lotus 노드를 설정하고 백엔드 API에서 JSON RPC 메소드를 호출할 수 있도록 구성하기로 결정했습니다.우리가 따르는 주요 설명은 다음과 같다. Filecoin Lotus Installation docs 그러나 우리는 몇 가지 절차를 수정해야 하기 때문에 우리는 공유할 가치가 있고 같은 문제가 있는 모든 사람을 도울 수 있다고 생각한다.

1. 가상 서버를 시작하고 SSH를 통해 연결


우리의 예에서 우리는 AWS를 클라우드 공급자로 사용하기 때문에 m5ad 유형의 EC2를 설정했다.두 배 크다.Ubuntu Server 20.04 LTS를 선택하는 것은 Lotus and Go를 설치하는 데 필요한 모든 도구와 라이브러리를 Amazon Linux 시스템에서 사용할 수 없기 때문에 중요합니다.
SSH를 통해 AWS 인스턴스에 연결하려면 포트 22를 통한 원격 액세스를 허용하도록 보안 그룹이 구성되어 있는지 확인합니다.그런 다음 인스턴스를 시작할 때 생성된 PEM 인증서를 사용해야 하지만 우선 올바른 사용 권한을 설정합니다.
chmod 400 <path-to-pem-file>
이제 EC2 인스턴스에 연결할 수 있습니다.
ssh -i <path-to-pem-file> ubuntu@<ip-of-your-instance>

2. 종속성, Go 및 Rust 설치


이 슬라이드에서는 Filecoin 웹 사이트의 지침에 따라 수행할 수 있습니다.
종속성:
sudo apt install mesa-opencl-icd ocl-icd-opencl-dev gcc git bzr jq pkg-config curl clang build-essential libhwloc-dev -y && sudo apt upgrade -y
라스토프:
curl --proto '=https' --tlsv1.2 -sSf [https://sh.rustup.rs](https://sh.rustup.rs) | sh
시작:
wget -c [https://dl.google.com/go/go1.14.7.linux-amd64.tar.gz](https://dl.google.com/go/go1.14.7.linux-amd64.tar.gz) -O - | sudo tar -xz -C /usr/local

3. 환경 변수 구성


이 단계는 문서에 좋은 설명이 없다. 만약 당신이 이런 소프트웨어를 처리하는 데 익숙하지 않다면, 이것은 아마도 까다로운 부분일 것이다.
우선 환경 설정에 변수를 추가해야 합니다.bash 개요 파일을 엽니다:
nano ~/.bashrc
파일 끝에 다음 줄을 추가하여 go 및 rust 변수를 추가합니다.
export PATH=$PATH:/usr/local/go/bin
export PATH=$PATH:/home/ubuntu/.cargo/bin
소스 파일 또는 터미널 재부팅:
source ~/.bashrc

4. Lotus 데몬 설치 및 시작


예전과 마찬가지로 우리는 주어진 명령만 집행한다.
클론 저장소:
git clone [https://github.com/filecoin-project/lotus.git](https://github.com/filecoin-project/lotus.git)
선택한 지점 (mainnet 또는 어떤testnet) 을 서명하십시오.테스트넷이 mainnet을 가장 잘 모의하기 때문에 calibration을 선택했습니다.
git checkout ntwk-calibration
구축 및 설치
make clean all
sudo make install
버전 확인:
lotus --version #should output something like lotus version 1.1.0+git.b039f44a

5. 원격 연결 허용


로마스 설정 ~/을 엽니다.lotus/config.톰.설정할 수 있는 값의 예시를 설정하기 위해 다른 부분을 볼 수 있습니다.ListendAddress와 RemoteListendAddress 값의 API 부분에 관심이 있습니다.의견을 삭제하고 각 의견에 대해 다음 값을 설정합니다.
ListenAddress = "/ip4/0.0.0.0/tcp/4001/http"
RemoteListenAddress = "/ip4/xxx.xxx.xxx.xxx/tcp/4001/http"
반드시 xxx를 교체해야 합니다.xxx.xxx.xxx는 실례와 공용 IP를 연결하고 당신에게 가장 적합한 포트를 설정합니다. (이 포트도 EC2 실례의 보안 그룹에서 열어야 합니다.)
데몬을 시작하려면:
lotus daemon
원격으로 접근할 수 있는 영패를 만듭니다. (즉 관리자로서)
lotus auth create-token --perm admin
토큰을 사용하여 다른 컴퓨터에서 인스턴스를 호출하고 다음 작업을 테스트합니다.
curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer <the-token-you-just-generated>" --data '{ "jsonrpc": "2.0", "method": "Filecoin.Version", "params": [], "id": 1 }' '[http://xxx.xxx.xxx.xxx:4001/rpc/v0'](http://54.216.161.54:5000/rpc/v0')
출력은 다음과 같이 JSON 응답이어야 합니다.
{"jsonrpc":"2.0","result":{"Version":"1.1.0+git.b039f44a","APIVersion":4352,"BlockDelay":30},"id":1}

6.[보상]pm2를 설정하여 데몬을 항상 시작


만약 실례가 다시 시작되거나 수호 프로세스가 멈춘다면, 우리는 그것을 알고 실례에 연결한 다음 수호 프로세스를 다시 시작해야 한다.pm2 같은 라이브러리를 가지고 있으면 이러한 상황에서 많은 번거로움을 절약하고 필요할 때 수호 프로그램을 다시 시작할 수 있습니다.
구성하려면 NodeJS, NPM 및 pm2를 설치해야 합니다.
sudo apt install nodejs
sudo apt install npm
npm install pm2@latest -g
그리고 수호 프로세스를 시작하려면pm2를 설정하고 시작할 수 있도록 셸 스크립트를 만들어야 합니다.
echo lotus daemon >> start-lotus-daemon.sh
sudo env PATH=$PATH:/usr/bin /usr/local/lib/node_modules/pm2/bin/pm2 startup systemd -u ubuntu --hp /home/ubuntu/start-lotus-daemon.sh
pm2에서 데몬 시작
pm2 start start-lotus-daemon.sh
언제든지 모니터링:
pm2 monit

결론


자신의 Lotus node를 구축하는 것은 보기에는 어렵지만 Filecoin 블록체인에서 얻은 데이터를 완전히 제어하는 것은 확실히 가치가 있다.
언제든지 체크아웃WFIL dapp하고 귀하의 생각을 알려 주십시오.우리는 정말 지역 사회와 손잡고 이태방에서 첫 번째 Filecoin 포장 기호화폐를 구축하기를 희망한다.
특히 이 과정에서 주신 모든 도움에 감사하고 감사드립니다.

읽다

  • 최고Hardware wallet
  • 좋은 웹페이지 즐겨찾기