
리눅스 서버에 geth를 세팅하고, geth attach로 console에 접속해서 명령어를 쳐본 경험이 있을 것이다.geth attach geth.ipc해당 명령어로 자바스크립트 콘솔에 접속하게 되면 여러 개의 web3, eth 명령어를 통해 이더리움 네트워크와 상호작용할 수 있게 된다. geth attach 명렁어geth attach는 이미 실행 중인 이더리움 노드에 JavaScript 콘솔을 연결하는 데 사용된다. 노드의 상태를 확인하거나 개발 중인 dApp과 상호작용하거나, 블록체인과 직접적으로 상호작용하는 등 다양한 작업을 수행할 수 있다. consolecmd.go의 remoteConsole 함수는 사용자가 입력한 endpoint (대개는 IPC 파일 경로 혹은 HTTP endpoint)에 연..

Geth를 리눅스 서버에 세팅하고 동기화를 완료하게 되면, 다음과 같은 로그가 나오는 것을 확인할 수 있다. 이 로그는 우리가 올바르게 Geth를 세팅하고 블록체인과 동기화를 잘 진행하고 있다는 것을 알려준다. 하지만 이 로그들은 그저 빠르게 스크롤되는 글자들일뿐, 어떤 의미를 갖는지 이해하기 어려웠다. 따라서 이번 블로그 포스팅에서는 이 로그들이 어떤 정보를 담고 있는지, 그리고 우리가 이를 어떻게 해석하고 활용할 수 있는지에 대해 알아보려고 한다. 이를 위해 우리는 geth의 소스 코드를 직접 들여다보며 블록이 블록체인에 추가되는 과정에서 어떤 단계를 거치는지 그리고 이 과정에서 어떤 데이터가 로그로 남게 되는지 살펴보려고 한다. Imported new potential chain segment, C..

#!/usr/bin/env node const ethers = require('ethers'); const http = require('http'); require('dotenv').config(); const config = { host: process.env.ETH_RPC_HOST || 'localhost', rpc_port: process.env.ETH_RPC_PORT || 8545, network: process.env.ETH_NETWORK || 'homestead', local_port: process.env.ETH_MONITOR_PORT || 50000, max_difference: process.env.MAX_BLOCK_DIFFERENCE || 3, server_name: process.en..
이더리움은 탈중앙화된 블록체인 네트워크로 이더리움 클라이언트를 사용하여 이더리움 블록체인을 구현하고 실행할 수 있다. 이더리움 클라이언트는 블록체인에서 새로운 블록 생성 및 유효성 검증, 네트워크 보안, 검증자 관리, P2P 통신 등 다양한 역할을 수행한다. 이더리움 클라이언트란? 이더리움 클라이언트는 이더리움 블록체인 프로토콜을 구현하는 소프트웨어이다. 이더리움 클라이언트는 블록체인에서 새로운 블록 생성 및 유효성 검증, 네트워크 보안, 검증자 관리, P2P 통신 등 다양한 역할을 수행한다. 이더리움 클라이언트는 다양한 언어로 구현될 수 있으며 Rust, Go, Java 등 다양한 언어로 작성될 수 있다. 이더리움 클라이언트의 종류 이더리움 클라이언트에는 geth, Parity, OpenEthereum..

지난 포스팅에 이어 두 번째 내용입니다. [이더리움] Grafana와 Prometheus로 geth 모니터링 하기 - 1 geth healthcheck나 모니터링을 할 수 있는 툴에 대해서 알아보던 중 Grafana라는 모니터링 툴에 대해 알게 되었다. CPU, Memory, 트래픽과 Latest Block Header도 실시간으로 확인할 수 있어 geth를 모니터링하려 heun.tistory.com 대시보드 세팅하기 Grafana 브라우저 접속하기 로컬 브라우저에서 http://localhost:3000 또는 http://:3000을 연다.

geth healthcheck나 모니터링을 할 수 있는 툴에 대해서 알아보던 중 Grafana라는 모니터링 툴에 대해 알게 되었다. CPU, Memory, 트래픽과 Latest Block Header도 실시간으로 확인할 수 있어 geth를 모니터링하려는 사람들에게 도움이 될 것이라고 생각한다. 설정을 완료하게 되면 다음과 같은 화면이 나온다. Prometheus란? 우선 Grafana를 사용하기 위해서 Prometheus를 설치해야 한다. Prometheus는 이벤트 모니터링 및 경고에 사용되는 무료 소프트웨어 어플리케이션이다. Grafana와 Prometheus 설치 Prometheus, Prometheus node exporter 설치 sudo apt-get update sudo apt-get ins..

geth를 강제로 종료하거나 서버가 강제로 종료되었을 경우에 geth를 재실행하게 되면 로그에 "Head state missing, repairing" 라는 문구가 나오게 된다. 비정상적으로 종료되어 블록이 깨진 상태이고, Head가 누락되어 수리 중이라는 문구이다. 복구가 되어질 때까지 기다리면 되는데, geth를 실행 중인 환경에 따라서 시간은 달라질 수 있다. 필자의 경우 10분이내에 복구가 완료되었고 아래의 개발 환경을 보고 참고하여 문제 해결에 도움이 되었으면 좋겠다. 소요 시간 복구시간 : 10분 이내 서버종료시간 : 1일 이내 개발환경 cpu : AMD Ryzen 3 3200G cpu 코어 수 : 4 MemTotal : 14320340 kB geth version : 1.10.26-stabl..
geth 1.10.25 버전이상 세팅 중에 lighthouse beacon을 실행하면 해당 오류가 발생하는 경우가 있다. linux-5822557241 systemd[1]: lighthousebeacon.service: Main process exited, code=killed, status=4/ILL linux-5822557241 systemd[1]: lighthousebeacon.service: Failed with result 'signal'. github lighthouse releases 주소 Releases · sigp/lighthouse Ethereum consensus client in Rust. Contribute to sigp/lighthouse development by creatin..

2022.12.07 수정 geth 서비스 파일 내용 --cache=8192를 --cache=2048로 수정. 2023.02.27 수정 geth datadir /var/lib/geth => /data/ether/geth로 수정. Reference 카페에 가입 후 정보를 받아보는 것을 추천. Ethereum 2.0 Staking... : 네이버 카페 Ethereum 2.0 Staking 에 대해 정보를 공유하는 카페입니다. cafe.naver.com Ubuntu20.04에 geth(1.10.25 버전이상)와 lighthouse 세팅하기 우분투 환경 업데이트 sudo apt update -y && sudo apt upgrade -y && sudo apt dist-upgrade -y && sudo apt aut..