Kubernetes environment
Local K8S
-1 Control Plane : Ubuntu22.04 LTS, 5GB Memory, 50GB SSD
- 1 Woker : Ubuntu22.04 LTS, 25GB Memory, 100GB SSD
※[참고] 로컬 환경에서 쿠버네티스 설치는 아래 교안 참고
https://www.slideshare.net/slideshow/kubernetes-baremetal-installation-and-practice/269903559
본 besu 예제를 실행하기 위해서
Worker node 최소 메모리를 16GB로 가이드 되어 있음
(실제로는 20GB 이상 확보해야 무리 없이 진행 가능)
git clone
git clonehttps://github.com/Consensys/quorum-kubernetes
해당 git의 여러 프로젝트 중 playgroun의 kubectl 로 실행하는 예제 디렉토리로 이동
root@master:~/quorum-kubernetes/playground/kubectl/quorum-besu/ibft2# pwd
/root/quorum-kubernetes/playground/kubectl/quorum-besu/ibft2
source : https://github.com/Consensys/quorum-kubernetes/tree/master/playground/kubectl/quorum-besu/ibft2
Kubernetes environment
실행
(Public/Private Key를새로 발급 받아도 무방하나, 그냥 실행해도 됨(이미 config, secret등에 설정이 완료된 예제임)
./deploy.sh
실행 상태 확인 (fail -> crash 반복하다가 정상상태로 바뀜)
watch kubectl get all -n besu -o wide
source : https://github.com/Consensys/quorum-kubernetes/tree/master/playground/kubectl/quorum-besu/ibft2
Grafana로 확인 (이상상황 확인/조치)
블록 동기화가 안되는 상황인 경우 해당 컨테이너에서 아래의 로그가 출력됨
Unable to find sync target. Currently checking 0 peers for usefulness
일시적으로 통신이 안되는 상황으로 로컬 실습환경에서는
해당 pod만 삭제하면 k8s의 stateful에 의해 pod가 자동 재성성 되면서
오류가 자연히 해결됨