testnet
GitHub EN

로컬 다중 검증인 테스트넷 설정하기

beginner getting-started 20 min

다중 검증인이 있는 로컬 마루 테스트넷을 생성하고, 네트워크를 시작하며, 잔액 확인 및 트랜잭션 전송을 통해 상호작용하는 방법에 대한 전체 가이드입니다.

학습 목표

  • `marood testnet`을 사용하여 4-노드 테스트넷 설정 생성 방법.
  • 모든 검증인 노드를 동시에 시작하는 방법.
  • 사전 자금이 충전된 검증인 계정의 잔액을 조회하는 방법.
  • 한 검증인에서 다른 검증인으로 토큰을 전송하는 방법.

사전 요구사항

  • 소스 코드로부터 `marood` 바이너리를 성공적으로 컴파일했습니다.

필요 도구

Go (1.21+)Maroo source code
이 튜토리얼에서는 강력한 marood testnet 명령어를 사용하여 완전한 로컬 마루 블록체인을 실행합니다. 이는 스마트 컨트랙트와 애플리케이션을 테스트하기 위한 개발 환경을 가장 빠르게 실행하는 방법입니다.
1

1. 테스트넷 파일 생성

먼저, 4-검증인 네트워크를 위한 설정을 생성합니다. 이 단일 명령어는 4개의 노드 디렉토리를 생성하며, 각 디렉토리에는 자체 키와 설정이 있고, 각 검증인에게 자금을 지원하고 블록 1부터 네트워크에 등록하는 공유 제네시스 파일이 포함됩니다.
terminal bash
marood testnet -v 4 -o ./my-local-testnet --starting-ip-address 127.0.0.1
참고: 이 명령어는 4개 검증인 계정의 주소와 니모닉을 출력합니다. 나중에 필요하므로 저장해두세요. 출력 파일은 `./my-local-testnet` 디렉토리에 있습니다.
2

2. 네트워크 시작

이제 설정이 생성되었으므로, 4개의 노드를 각각 시작해야 합니다. 4개의 별도 터미널 창을 엽니다. 각 터미널에서 올바른 노드 디렉토리를 가리키는 start 명령어를 실행합니다.
terminal bash
marood start --home ./my-local-testnet/node0
terminal bash
marood start --home ./my-local-testnet/node1
terminal bash
marood start --home ./my-local-testnet/node2
terminal bash
marood start --home ./my-local-testnet/node3
팁: 각 터미널에서 블록이 생성되고 있음을 나타내는 로그를 볼 수 있습니다. 이는 로컬 네트워크가 실행 중임을 확인시켜 줍니다!
3

3. 계정 잔액 조회

검증인 계정이 올바르게 자금을 받았는지 확인해 봅시다. 1단계에서 출력된 검증인 주소 중 하나를 선택합니다(maroo1...로 시작). 이 주소를 query bank balances 명령어와 함께 사용합니다. 실행 중인 노드 중 하나의 RPC 엔드포인트를 지정해야 합니다.
terminal bash
# maroo1...을 node0의 실제 주소로 바꾸세요
marood query bank balances maroo1... --node tcp://127.0.0.1:26657
4

4. 트랜잭션 전송

마지막으로, 검증인 0에서 검증인 1로 일부 aokrw를 전송하여 상태 변경을 수행해 봅시다. 두 검증인의 주소가 모두 필요합니다. testnet 명령어는 각 검증인에 대한 로컬 키 이름(validator0, validator1 등)도 생성했으며, 이를 발신자로 사용할 수 있습니다.
terminal bash
# maroo1...을 node1의 실제 주소로 바꾸세요
# chain-id는 testnet 출력의 'test-chain-...' 입니다
marood tx bank send validator0 maroo1... 100aokrw \
  --from validator0 \
  --keyring-backend test \
  --home ./my-local-testnet/node0 \
  --chain-id <your-chain-id> \
  --node tcp://127.0.0.1:26657 -y
주의: `testnet` 명령어는 단순성을 위해 `test` 키링 백엔드를 사용합니다. 이 계정에서 트랜잭션을 보낼 때는 반드시 `--keyring-backend test`를 지정해야 합니다.

마무리

축하합니다! 로컬 다중 검증인 마루 테스트넷을 성공적으로 생성, 시작 및 상호작용했습니다. 이제 마루에서 탈중앙화 애플리케이션을 개발하고 테스트하기 위한 안정적이고 현실적인 환경을 갖추게 되었습니다.
소스: maroo
ESC
검색어를 입력하세요