develop custom_top_html:no
default debug random = 0 / type = READ / detected = READ / doc_Srl = 6004090

일렉트로니움 마이닝풀 운영을 위한 설치 가이드 입니다.

 

ETN 마이닝 풀 서버 설치를 해보려고 했는데 node 버전 문제로 여러번의 실패로 우분투를 재설치하면서

여러번의 삽질을 하여 성공하고 작성한 설치 가이드 입니다.  (2018년 1월 기준)

최초 O/S 설치부터 블록체인 동기화에서 웹서버 추가 설정까지 모든 과정을 설명하였습니다.
실제 운영을 위해서는 SSL 설정 및 SSL 보안 인증서 설치까지 해야 하는데 해당 부분은 생략하였습니다.

 

참고로 ETN 마이닝풀서버를 구축하고 내부적으로 3대 정도 투입하여 채굴을 했는데 5일만에 블록을 발견하여

7천개 채굴에 성공하였습니다. ^^;;

그동안 GTX1050ti 8way , GTX1080, P106 2way 짬뽕 채굴기 2대로  두달 넘게 채굴한게 7천개정도인데

허접한 PC에 마이닝 풀 서버 구축하고 5일만에 두달 채굴량을 달성하였습니다.

다만 그이후로는 15일 넘게 더이상 블록 발견이 안되서 서버 운영을 중지하였습니다. (학습 목적 구축)

참고 소스  https://github.com/electroneum/electroneum-pool

 

* 마이닝풀 서버로 사용한 PC 사양

   옥션에서 구입한 HP 중고PC :   i5-750, RAM 4GB, 500GB HDD => 23만원짜리 중고 구입


1) 우분투 서버 설치 - 16.04 64비트 서버 ISO 다운로드 받아서 USB 설치
- 기본 설정으로 모두 설치 
- 설치 팩키지 선택시 SSHD Server 선택하여 설치 (ssh 접속용)
- 네트웍도 동적IP 기본 설정으로 설치 (설치 완료후 고정IP로 변경)

2) 우분투 설치 완료후 재부팅후 등록한 ID로 로그인하여 고정IP 설정  
   (Putty 와 같은 ssh 터미널 접속 프로그램으로  원격 접속)
- 동적IP를 고정IP로 변경하기
  ifconfig 로 현재 할당된 IP및 기타 정보를 확인하여 고정IP로 변경
  gateway나 기타 네트웍 설정도 본인의 환경에 맞게 수정하시기 바랍니다.

sudo vi /etc/network/interfaces

auto enp2s0                 <== 랜카드 네트워크 할당명 확인하여 해당 명칭으로 변경 요망 
iface 
enp2s0 inet static 
address 
192.168.0.11   <== 내부 할당된 서버 고정IP / 또는 할당받은 공인IP 입력
netmask 255.255.255.0 
gateway 192.168.0.1 
network 192.168.0.0 
broadcast 192.168.0.255 

dns-nameservers 8.8.8.8  164.124.101.2

enp2s0 명칭은 PC 환경에 따라 달라지니 본인이 설치한 서버에 할당된 명칭으로 변경해야 합니다.

* 추가한 내용 저장하고 편집기 종료하고 네트워크 재시작 명령어를 실행합니다.
$ sudo /etc/init.d/networking restart

3) 우분투 업데이트 설치
$sudo apt-get update  <==  몇분내로 업데이트 완료 
$sudo apt-get dist-upgrade  <== 업데이트 시간이 좀 오래 걸림 (Y/n ==> Y)

* SWAP 파티션 설정하기 (8GB 설정)

$sudo dd if=/dev/zero of=/mnt/myswap.swap bs=1M count=8000 
$sudo mkswap /mnt/myswap.swap 
$sudo swapon /mnt/myswap.swap 


$sudo vi /etc/fstab 
/mnt/myswap.swap none swap sw 0 0
* 추가  내용 저장하고 편집기  빠져나오기

* 서버를 리붓하여 추가한 사용자 계정으로 로그인

$sudo reboot now



4) 일렉 코인 빌드에 필요한 추가 팩키지 설치하기
$sudo apt-get install build-essential libtool autotools-dev autoconf pkg-config libssl-dev 
$sudo apt-get install libboost-all-dev git npm nodejs nodejs-legacy libminiupnpc-dev redis-server 
$sudo add-apt-repository ppa:bitcoin/bitcoin 
$sudo apt-get update 
$sudo apt-get install libdb4.8-dev libdb4.8++-dev


5) 일렉트로니움 데몬/지갑 컴파일/빌드 하기
* 현재 계정 하위에 electroneum 디렉토리에 github의 소스를 복제하여 빌드
$git clone https://github.com/electroneum/electroneum 
$cd electroneum
$sudo apt-get update 
$sudo apt-get install build-essential cmake pkg-config libboost-all-dev libunbound-dev libminiupnpc-dev 

$sudo apt-get install libunwind8-dev libldns-dev libexpat1-dev libgtest-dev doxygen graphviz 

$sudo cmake .
$sudo make   <== 컴파일 및 링크 빌드 작업 (시간이 좀 소요됨)

* 빌드가 정상적으로 끝나면  bin 디렉토리에 실행 파일이 생성됨
$cd bin
$ls
* 아래와 같은 파일이 생성되어 있으면 빌드가 성공한 것입니다.
electroneumd
electroneum-wallet-rpc
electroneum-wallet-cli
electroneum-blockchain-import
electroneum-blockchain-export

* 지갑 생성및 데몬 실행 (블록체인 업데이트)
* 블록체인 동기화는 5~8시간 걸림 (이 작업이 끝나야 다른 작업이 가능)
* 실행 파일 소유권을 로그인 사용자 ID로 변경
$sudo chown 로그인사용자ID -R ../bin/* 
$sudo chgrp  
로그인사용자ID -R ../bin/* 
 

* 블록체인 동기화를 백그라운드로 실행하기 
$screen -S daemon 
$./electroneumd             
<-- 백그라운드로  데몬 실행 / 블록체인 동기화 실행 (6시간~8시간 소요)

CTRL + a then CTRL + d  <-- 현재 screen 백그라운드로 실행되게 빠져나오기

6) 지갑만들기 및 RPC 서버 실행하기  (블록체인 동기화가 모두 완료되고 나서 진행)
* 블록체인 동기화가 끝난것을 확인하고 지갑 만들기
$screen -S wallet 
$./electroneum-wallet-cli   
<== 지갑만들기 (지갑파일명, 비밀번호 설정)

 

* API 연동을 위한 RPC서버 실행
$./electroneum-wallet-rpc --wallet-file 지갑파일명 --password 지갑비밀번호 --rpc-bind-port 26969 --disable-rpc-login
CTRL + a then CTRL + d


7) 마이닝풀 설치에 필요한 npm 설치
$ cd ~
$wget https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh 
$chmod +x *.sh 
$./install.sh 
$source ~/.profile 
$nvm install 0.10.48 

$nvm use 0.10.48          
$nvm alias default 0.10.48 
  <== 이것  필수로 해야 버전 문제 안 생김 (이부분을 제대로 설명한 설치가이드가 없음)
$nvm use default                  <== 이것 제대로 설명한 풀 설치 가이드가 없음

8) 마이닝풀 설치
$cd ~ 
$git clone https://github.com/electroneum/electroneum-pool.git pool 
$cd 
pool 
$npm update  <== node 빌드 실행으로 시간이 많이 걸림


* 마이닝풀 설치가 모두 끝나면  풀 전용 지갑 생성및 설정 진행

9) 마이닝 풀 설정하기
$cd ~
$cd pool
$cp config_example.json config.json
* 본인 설정에 맞게 config.json 파일 내용을 수정한다. (풀피나 기타 설정값 변경)
..
   "poolServer": { 
        "enabled": true, 
        "clusterForks": "auto", 
        "poolAddress": "WALLETADDRESSHERE",  
<== 위에서 생성한 풀 전용 지갑 주소를 입력
..

* 마이닝 풀에서 사용하는 포트 설명
마이닝용 포트 : 3333,5555,7777
API  : 8117
Redis : 6379
wallet : 26969
daemon : 26968

* 웹서버 설정및 기타 작업 필요

10) 마이닝풀 실행
(코인 데몬과 코인 RPC 서버 먼저 실행후 진행해야 에러가 발생하지 않음)

$cd ~
$cd pool

$screen -S pool
$node init.js              <== 마이닝 풀 서버가 제대로 실행이 되는지 확인
CTRL + a then CTRL + d    <== 제대로 실행되면 빠져나오기


11) 마이닝 풀 서버 자동실행 설정하기  (나중에 설정해도 됨 - 참고용)
$npm install forever -g
$forever start init.js

12) 웹서버 프론트엔드 설정하기 (nginx 설치하여 설정) 

* nginx를 먼저 설치하고 진행해야 합니다.

$cd /var/www/html  <-- 웹서버 홈디렉토리로 이동
$ cp -R /home/pool/pool/website_sample/* .  <-- 풀 프론트엔드 샘플 웹페이지를 모두 복사

$vi website_example/config.js
var api = "http://풀서버IP주소:8117";


* nginx 설정파일에 API 연동을 위한  프록시 설정파일 추가

/etc/nginx/sites-available/default 파일에 API 프록시 설정 추가 

$sudo vi /etc/nginx/sites-available/default   
<-- 아래 설정내용을 추가

server { 
         server_name api.localhost; 

         location / { 
             proxy_pass_header Server; 
             proxy_set_header Host $http_host; 
             proxy_set_header X-Real-IP $remote_addr; 
             proxy_set_header X-Scheme $scheme; 
             proxy_pass 
http://풀서버주소:8117; 
         } 
 } 

* 수정한 내용 저장하고 vi 에디터 끝내기
*  웹서버 재시작 
$sudo /etc/init.d/nginx restart
 

13) 마이닝풀 운영 테스트

* 마이너 프로그램 서버 설정을 내 서버로 수정하여 로그인하고 채굴이 되는지 확인

* 마이닝 풀 웹서버로 접속하여 마이닝풀 서버 페이지가 정상적으로 표시되는지 확인

 

14) 참고사항 
* 리눅스 screen 명령어 사용하여 백그라운드 실행하기
  (screen 명령어가 설치가 안되어 있을경우 추가 설치 필요)

screen -S daemond  <--- Use to run the daemond 
screen -S rpc            <---- Use to run rpc 
screen -S website     < --- use to run website 
screen -list                <---- List screens 
screen -x website    
<--- reconnect to screen website (해당 screen으로 다시 접속시 이용)
CTRL + a then CTRL + d <----- detatch from a screen 

 

 

ETN 마이닝풀 설치를 쉽게 생각하고 설치하다가 제대로 설치를 못해서 몇주를 허비하고

관련 풀 설치가이드에는 기본적인 가이드만 있고  알고보니 대단한 문제도 아닌데 문제가 되는 부분에 대한

설명이 누락되어 설치에 여러번 실패를 하였습니다.

설치 성공하고 정리한 내용을 설치에 어려움을 겪는 분들에게 조금이나마 도움이 되길 바라며 

설치가이드를 공개하니 마이닝풀 서버 설치및 운영에 관심 있으신 분들은 참고하시기 바랍니다.

 

-------------------------------------

꼬리말

* 게시글 내용 삭제레벨 강등

* 질문은 각 주제별 게시판에.

 

비트코인 암호화화폐 커뮤니티 땡글~ 땡글~

-------------------------------------

173
댓글 60
  • profile
    차카게살자66 2018.02.28 21:53
    etn코인 풀제작이면 클립토 계열 다른 풀도 제작 가능하겠네요 .신생코인 채굴풀하나 의뢰 하고 싶습니다^^ 대단하십니다
  • ?
    번트마이너 2018.02.28 23:08
    @차카게살자66
    모네로 계열 코인은 풀 구축 방법이 거의 비슷합니다.
    코어부분인 코인 지갑, 코인 데몬, 코인 지갑 RPC 서비스 부분 프로그램만 다르고 마이닝풀은 환경설정만 약간 바꾸면 거의 공통으로 이용할 수 있습니다.
  • profile
    차카게살자66 2018.02.28 23:23
    네 모네로 계열 풀 서버 한두개 테스트 하고 싶은데 직접할려니 엄두가 안나네요^^
  • ?
    번트마이너 2018.03.04 12:29
    @차카게살자66
    죄송하지만 따로 의뢰받아서 구축하는건 안합니다~ ^^;;
    유지보수 문제나 기타 문제 발생시 대처등으로 주변에 리눅스 하시는 분 있으면 의뢰하시는게 나을겁니다.
    위 자료를 참고하면 리눅스 조금 공부해서 기본적인 리눅스 서버 관리할 수준이면 쉽게 구축 가능합니다.
  • ?
    망고오 2018.03.09 18:25
    윈도우즈 마이닝풀 구축 어떻게 하나요?
  • ?
    번트마이너 2018.03.10 15:27
    @망고오
    아래와 같이 하면 될 거 같은데 직접 해보지는 않았습니다.

    1) ETN 코인 데몬 실행 및 블록체인 동기화 - 동기화 완료후 다음 단계 진행
    electroneumd.exe
    2) 지갑 RPC 서버 데몬 실행 - API 연동
    electroneum-wallet-rpc.exe --wallet-file 지갑파일명 --password 지갑비밀번호 --rpc-bind-port 26969 --disable-rpc-login
    3) Node.js 설치및 Node.js 마이닝풀 설치 실행 / 웹서버 연동 설정

    참고만 하시기 바랍니다.
  • profile
    명견실버 2018.06.12 11:39
    혹시 활동 하시면 질문 하나해도 될까요? node init.js 실행 할 때 error가 발생합니다. fs : missing callback Error : EACCES , open 'logs/api_info.log'라고 뜨네요..포트는 다 열었습니다.다만 궁금한게 config.json보면 password부분에 어떤 패스워드를 필요로 하는지..
  • ?
    번트마이너 2018.06.15 17:06
    @명견실버
    일렉 테스트 풀 이용안하고 삭제한지가 오래되서 기억이 안 나는데 예전 자료를 보니 password 항목은 설정값 없이 처리했네요.

    "api": {
    "enabled": true,
    "hashrateWindow": 600,
    "updateInterval": 3,
    "port": 8117,
    "blocks": 30,
    "payments": 30,
    "password": ""
    }

    참고하세요~
  • ?
    헬로월드 2018.07.01 07:23
    8) 마이닝풀 설치
    $cd ~
    $git clone https://github.com/electroneum/electroneum-pool.git pool
    $cd pool
    $npm update <== node 빌드 실행으로 시간이 많이 걸림

    * 마이닝풀 설치가 모두 끝나면 풀 전용 지갑 생성및 설정 진행

    이부분에서
    * 마이닝풀 설치가 모두 끝나면 풀 전용 지갑 생성및 설정 진행
    에 대해 조금만 더 설명해주실수 있을까요?
  • ?
    수뎅 2019.03.22 08:26
    감사합니다. 도전 !

List of Articles
번호 분류 제목 추천 수 조회 수 글쓴이 날짜
공지 [땡글운영위] 이사진 구성원 변경 공지 9 file 14 1283
땡글운영위
2019.09.03
공지 로그인이 안되시는 분은 문의해주시기 바랍니다. 4 4 2089
땡글개발자
2019.08.21
공지 개인 정보 유출에 따른 사과문 55 file 8 4256
땡글개발자
2019.08.21
920 개발 빗썸 ticker api에서 현재값 또 에러 나네요 빗썸 ticker api 현재값 또 에러 나네요 오늘 오전 오후 계속 말썽 이네요   시스템 매매 하시눈 분들 조심 하세요 3 691
둔산
2018.02.13
919 개발 개발자를 위한 세대별 블록체인 소개 1세대 블록체인 비트코인 2세대 블록체인 이더리움 - 계속 변화하고 있지만, 한계가 있긴하네요. 3세대 블록체인(Hashgraph) 4세대 블록체인(Openhash)   아래 주소를 누르고 오른쪽 리스트를 쭉보세요. (15번째부터 ... 4 2911
nicola
2018.02.13
918 개발 스마트컨트랙트 공부중인데 node.js 공부할 필요가 있나요?     node, npm이런 부분들이 나오는데 처음 접해보는 것입니다. 따로 node강좌를 간단하게 듣는것을 추천하나요? npm쪽에서 좀 막히기는 하는데, node강좌를 들으면 도움이 될까요 https://opentutorials.org/course/... 6 1 1163
호야핑
2018.02.13
917 개발 7시쯤부터 빗썸 ticker 이상하네요;;; 지금 보니 빗썸 ticker api에서 계속 같은값만 오고 있는데요. 다들 그러신가요??? 빗썸 진짜 답이 없네요;;;;;                   ------------------------------------- 꼬리말 * 게시글 내용 삭제시 레벨 강등 * ... 7 881
superplain
2018.02.13
916 개발 solidity-browser 에서 계약 실행 후 로그 부분 질문드려요     안녕하세요, 코린이입니다. 이더리움 개발 공부를 하면서 궁금한 점이 있어 글을 적습니다..   위 사진은 계약을 실행 하고 난 뒤 로그(Details) 부분이에요..   여기서 궁금한 점은 아래와 같습니다!   contract... file 513
바보쿠우
2018.02.13
915 개발 이더리움과 이더제로 소스코드 비교 이더리움 소스코드와 이더제로 소스코드를 간단히 비교해보았습니다.   https://steemit.com/kr/@hackyminer/difference-between-ethereum-and-etherzero-souce-code   요약하자면,   - 리브렌딩 등 전체 변경된 파일... 6 9 3678
ethminer
2018.02.13
914 개발 개발완료된 코인이 있습니다.   현재 코인 개발은 완료 되었으며 채굴중에 있습니다.   ico 나 거래소 상장도 가능하지만 우선적으로는 저희가 개발한 코인을 활용한 2차   서비스 제공을 목적으로 서버 구축중에 있습니다.   홍보/투자/ico/상장 ... 1 1742
cryptomonkey
2018.02.13
913 개발 코인개발부터 상용화까지 팀꾸려봅니다. 안녕하세요 코인개발자 및 보안관련개발자 , 거래소구축개발자등등 코인관련해서 팀을 꾸려보고싶습니다. 코인개발관련 전문지식 없습니다 저는 단지 거래가능한 코인과 거래소만 있으면 거래 활성화시킬 홍보루트를 ... 3 1616
땁두가
2018.02.12
912 개발 이더리움과 스마트 컨트랙(1) 안녕하세요. 파이리입니다. 이더리움과 스마트 컨트랙이라는 주제로 글을 써보려고 합니다. 어디까지 쓰게 될지는 모르겠지만, 나중에 묶어서 책이 되었으면 하는 작은 소망이 있네요.   이더리움에 대해서는 땡글에 ... 11 file 12 5470
파이리
2018.02.12
911 개발 HD wallet 을 사용하는 거래소 지갑?   안녕하세요,  뒤늦게(?) 비트코인을 공부하고 있는 1인입니다.   bitcoin core를 PC에 설치해 보니, 지갑이 자동생성되고 상태바에 HD enable 됐다고 표시되더라구요. testnet에서 새로운 지갑주소를 2개 더 생성하... 3 1983
샤브라니
2018.02.12
910 개발 상승장에서만 투자하는 봇     아래쪽에 이런 캡쳐를 올렸더랬습니다.       크로스에서 사고 팔게 로봇을 구현했더니... 저 사각형 왼쪽위에서 사서, 오른쪽 아래에서 팔더군요. ㅜㅜ     그래서 몇번의 수정을 (손실을 보면서... ㅜㅜ) 거쳐... 17 file 2 2471
jaypark
2018.02.12
909 개발 바이낸스 api 질문이요^^ 빗썸같은 경우에는 서로 다른 계정으로 api키를 발급받고 한 컴퓨터에서 봇을 각각 실행하면 12초 딜레이가 걸리는데   혹시 바이낸스 아시는 분있나요? 보통 1분에 1200회, 1초에 10개 오더로 허용을 해주는데 빗썸... 3 1819
시니가미
2018.02.12
908 개발 이더리움 강의가 유튜브에 있었네요   땡글에서 '민빠' 라는 닉네임으로 활동하시는 분께서    강의를 진행하셨네요. 쌍둥아빠님 유튜브 계정에 올려져 있습니다.   https://www.youtube.com/watch?v=ddZ4wBfHGIo     이정도 깊이로 들어간 한글 자료가 ... 4 5 2238
트라트
2018.02.12
907 개발 파이썬 봇 중간에 멈춰버림 해결어떻게 하나요... 파이썬3을 사용하여 폴로닉스 트레이딩봇을 제작중입니다 별건아니고 while True:문으로 시세를 감시하다가 상황봐서 분할매수 분할 매도를 하는 프로그램인데요 cmd창에서 실행도중 그냥 멈춰버립니다 이게 어떤 오... 9 999
squid
2018.02.11
개발 누구나 따라할 수 있는 ETN 마이닝 풀 구축 가이드 입니다. 일렉트로니움 마이닝풀 운영을 위한 설치 가이드 입니다.   ETN 마이닝 풀 서버 설치를 해보려고 했는데 node 버전 문제로 여러번의 실패로 우분투를 재설치하면서 여러번의 삽질을 하여 성공하고 작성한 설치 가이드... 60 60 11323
번트마이너
2018.02.11
905 개발 빗썸 분봉 캔들값 관련 문의입니다. 안녕하셔요.. 오늘도 질문 드려봅니다^^   bithumb 거래소 거래 체결 완료 내역 API를 가져와서 DB에 쌓아놓고 1분씩 잘라서 1분봉 캔들의 값을 구해보고 있는데요..   트레이딩뷰나 빗썸메인의 1분봉 차트를 보면 아... 7 file 1309
비만타쿠미
2018.02.11
904 개발 빗썸 api로 ZEC 출금시 되다 말다 하네요 빗썸 api로 ZEC 출금시 되다 말다 하네요 현재 5번 중 3번은 자동으로 취소처리 되네요 다른 코인은 잘 됩니다. 사용 해보신분 있나요?                       ------------------------------------- 꼬리말 * 게시... 813
둔산
2018.02.11
903 개발 바이낸스 전용 오토 매매 를 제작중입니다 .     국내 거래소랑 여기저기 보고 있는대 .. 바이낸스가 API는 체계적으로 잘 제공해 주네요 ...   국내보다 더 잘 되어 있어서 살짝 ? 놀랐네요   3월초면 베타 테스트 해볼수 있을거같네요 시중에 알려준 차트기반... 8 3 1653
바이낸스
2018.02.11
902 개발 [질문]AMD GPU 상태 조회 command line tool 안녕하세요   채굴기 모니터링 프로그램을 개발중입니다. NVIDIA의 경우에는 nvidia-smi 라는 command line tool이 제공되는 데요, AMD는 검색해 보아도 시원한게 답변을 찾을 수 가 없네요 혹시 AMD GPU상태를 조회... 601
inireland
2018.02.10
901 개발 erc20 토큰 질문드려요..   안녕하세요. 코린이입니다.    이더리움 개발 입문 책을 보며 궁금한점이 생겨서 질문드려요. 답변 해주시면 감사하겠습니다.   거래내역이  있어야 블럭을 만들기위한 작업증명(채굴)을 하는것으로 알고 있는데요.... 6 1477
바보쿠우
2018.02.10
Board Pagination Prev 1 ... 35 36 37 38 39 40 41 42 43 44 ... 85 Next
/ 85