admin
Klaytn 노드를 제어하는 API입니다.
admin
namespace는 몇몇 비표준 RPC 메서드에 접근할 수 있게 합니다. 이를 통해 네트워크 피어와 RPC 엔드포인트 관리 등 Klaytn 인스턴스를 세밀하게 제어할 수 있습니다.
admin_nodeInfo
nodeInfo
관리 속성을 조회하여 실행 중인 Klaytn 노드에 대해 알려진 모든 정보를 네트워크 수준에서 확인할 수 있습니다. devp2p P2P 오버레이 프로토콜에 참여하는 노드 자체의 일반적인 정보 및 klay
와 같은 실행 중인 애플리케이션 프로토콜에 의해 추가된 세부적인 정보 또한 확인할 수 있습니다.
콘솔
admin.nodeInfo
RPC
{"method": "admin_nodeInfo"}
파라미터
없음
리턴값
JSON 문자열
노드에 대한 정보입니다.
예시
Console
HTTP RPC
admin_datadir
datadir
관리 속성을 조회하여 실행 중인 Klaytn 노드가 현재 모든 데이터베이스를 저장하는 데에 사용하는 절대 경로를 확인할 수 있습니다. 기본으로 설정된 경로는 노드 타입(kcn, kpn, ken)과 운영체제에 따라 다릅니다.
Console
admin.datadir
RPC
{"method": "admin_datadir"}
Parameters
None
Return Value
string
datadir
의 경로입니다.
Example
Console
HTTP RPC
admin_peers
peers
관리 속성은 연결된 원격 노드에 대해 알려진 모든 정보를 네트워크 수준에서 조회할 수 있습니다. devp2p P2P 오버레이 프로토콜에 참여하는 노드 자체의 일반적인 정보 및 개별 실행 중인 애플리케이션 프로토콜에 의해 추가된 세부적인 정보 또한 확인할 수 있습니다.
Console
admin.peers
RPC
{"method": "admin_peers"}
Parameters
None
Return Value
JSON string
연결된 모든 피어에 대한 정보입니다.
Example
Console
HTTP RPC
참고: 아래 IP 주소는 예시입니다. 실행 환경에서의 실제 IP 주소로 바꿔주세요.
admin_addPeer
addPeer
는 추적된 정적 노드들의 목록에 새로운 원격 노드를 추가하도록 요청하는 관리 메서드입니다. 각 노드는 목록의 노드들과의 연결을 항상 유지하고자 하고, 원격 연결이 간혹 끊어지면 다시 연결합니다.
이 메서드는 한 매개변수 kni(Klaytn Network Identifier)만을 입력으로 받습니다. 이는 geth의 enode
개념과 유사합니다. 추적할 원격 피어의 URL이며, 해당 피어의 추적이 허용되었는지 또는 어떤 오류가 발생했는지에 따라 BOOL
을 반환합니다.
Console
admin.addPeer(url)
RPC
{"method": "admin_addPeer", "params": [url]}
Parameters
url
string
피어의 kni
URL입니다.
Return Value
bool
피어 추적이 허용되면 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
Example
Console
HTTP RPC
admin_removePeer
removePeer
는 추적된 정적 노드들의 목록에서 한 노드를 제거하도록 요청하는 관리 메서드입니다.
The method accepts a single argument kni, which means "Klaytn Network Identifier". It is similar to the enode
concept in the geth. 목록에서 제거될 원격 피어의 URL이며, 피어가 성공적으로 제거되었거나 어떤 에러가 발생했는지 알려주기 위해 BOOL
을 반환합니다.
Console
admin.removePeer(url)
RPC
{"method": "admin_removePeer", "params": [url]}
Parameters
url
string
Peer's kni
URL.
Return Value
bool
true
if the peer was accepted, false
otherwise.
Example
Console
HTTP RPC
admin_startHTTP
참고: 이 API는 admin_startRPC
를 대체합니다. admin_startRPC
는 곧 사용이 중지됩니다.
startRPC
는 HTTP 기반의 JSON RPC API 웹서버를 시작하여 클라이언트 요청을 처리하도록 하는 관리 메서드입니다.
이 메서드는 HTTP RPC 리스너가 열려있는지 여부를 나타내는 불리언 플래그를 반환합니다. 동시에 하나의 HTTP 엔드포인트만이 활성화될 수 있음을 참고해주세요.
Console
admin.startHTTP(host, port, cors, apis)
RPC
{"method": "admin_startHTTP", "params": [host, port, cors, apis]}
Parameters
host
string
(선택 사항) 리스너 소켓이 열려있는 네트워크 인터페이스입니다. (기본 설정: "localhost"
)
port
int
(선택 사항) 리스너 소켓이 열려있는 네트워크 포트입니다. (기본 설정: 8551
)
apis
string
(선택 사항) 이 인터페이스를 통해 제공할 API 모듈입니다. (기본 설정: "klay,net,rpc"
)
Return Value
bool
HTTP RPC 리스너가 열리면 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
Example
Console
HTTP RPC
admin_stopHTTP
참고: 이 API는 admin_stopRPC
를 대체합니다. admin_stopRPC
는 곧 사용이 중지됩니다.
stopRPC
는 현재 열려있는 HTTP RPC 엔드포인트를 닫는 관리 메서드입니다. 노드는 하나의 HTTP 엔드포인트를 실행할 수 있기 때문에 이 메서드에 매개변수는 필요하지 않으며, 엔드포인트가 닫혔는지 여부에 따라 불리언으로 결과를 반환합니다.
Console
admin.stopHTTP()
RPC
{"method": "admin_stopHTTP"}
Parameters
None
Return Value
bool
엔드포인트가 닫히면 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
Example
Console
HTTP RPC
admin_startWS
startWS
는 웹소켓 기반의 JSON RPC API 웹서버를 시작하여 클라이언트 요청을 처리하도록 하는 관리 메서드입니다.
이 메서드는 웹소켓 RPC 리스너가 열려있는지 여부를 나타내는 불리언 플래그를 반환합니다. 동시에 하나의 웹소켓 엔드포인트만이 활성화될 수 있음을 참고해주세요.
Console
admin.startWS(host, port, cors, apis)
RPC
{"method": "admin_startWS", "params": [host, port, cors, apis]}
Parameters
host
string
(optional) network interface to open the listener socket on (default: "localhost"
).
port
int
(선택 사항) 리스너 소켓을 열기 위한 네트워크 포트입니다. (기본 설정: 8552
)
apis
string
(선택 사항) 이 인터페이스를 통해 제공할 API 모듈입니다. (기본 설정: "klay,net,personal"
)
Return Value
bool
웹소켓 RPC 리스너가 열리면 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
Example
Console
HTTP RPC
admin_stopWS
stopWS
관리 메서드는 현재 열려있는 웹소켓 RPC 엔드포인트를 닫습니다. 노드는 하나의 웹소켓 엔드포인트를 실행할 수 있기 때문에 이 메서드에 매개변수는 필요하지 않으며, 엔드포인트가 닫혔는지 여부에 따라 불리언으로 결과를 반환합니다.
Console
admin.stopWS()
RPC
{"method": "admin_stopWS"}
Parameters
None
Return Value
bool
true
if the endpoint was closed, false
if not.
Example
Console
HTTP RPC
admin_exportChain
exportChain
관리 메서드는 블록체인을 파일로 내보냅니다.
Console
admin.exportChain(fileName)
RPC
{"method": "admin_exportChain"}, "params": [fileName, startBlockNum, endBlockNum]}
Parameters
fileName
string
블록체인을 내보낼 파일의 명확한 경로입니다.
startBlockNum
int
(optional) The first block number of the range to export.
endBlockNum
int
(optional) The last block number of the range.
Return Value
bool
블록체인을 내보내면 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
Example
Console
HTTP RPC
admin_importChain
importChain
관리 메서드는 내보낸 블록체인을 파일에서 노드로 가져옵니다. 이 메서드는 Klaytn 노드에 존재하지 않았던 블록만을 가져옵니다. 이 메서드는 기존 체인에서 아무 데이터도 삭제하지 않습니다.
Console
admin.importChain(fileName)
RPC
{"method": "admin_importChain"}, "params": [fileName]}
Parameters
fileName
string
가져올 블록체인을 담고 있는 파일의 명확한 경로입니다.
Return Value
bool
블록체인을 가져오면 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
Example
Console
HTTP RPC
admin_importChainFromString
importChainFromString
는 블록들을 RLP 인코딩한 문자열을 사용해 체인을 Klaytn 노드에 가져오는 관리 메서드입니다. 이 메서드는 Klaytn 노드에 체인이 없을 때에만 정상적으로 동작합니다. This method does not delete any data of the existing chain.
Console
admin.importChainFromString(blockRlp)
RPC
{"method": "admin_importChainFromString"}, "params": [<blockRlp>]}
Parameters
blockRlp
string
불러올 블록들을 RLP 인코딩한 문자열입니다. (debug.getBlockRlp
의 리턴값과 동일)
Return Value
bool
블록체인을 가져오면 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
Example
Console
HTTP RPC
admin_startStateMigration
startStateMigration
관리 메서드는 상태 마이그레이션을 시작하고 이전 상태/스토리지 트리 노드를 제거합니다. 이 메서드는 Klaytn 노드의 스토리지 사용량을 절약할 수 있습니다. 이 메서드는 상태 마이그레이션을 시작하는 데에 실패하면 에러를 반환하고, 상태 마이그레이션을 시작하는 데에 성공하면 null
를 반환합니다. 참고: 상태 마이그레이션 후에는, 예전 상태들을 기준으로 API를 호출할 수 없습니다.
Console
admin.startStateMigration()
RPC
{"method": "admin_startStateMigration"}
Parameters
None
Return Value
에러
상태 마이그레이션을 성공적으로 시작했다면 null
을 반환하고, 그렇지 않으면 에러를 반환합니다.
Example
Console
HTTP RPC
admin_stopStateMigration
stopStateMigration
는 현재 실행중인 상태 마이그레이션 작업을 중단하는 관리 메서드입니다. 이 메서드는 파라미터를 받지 않으며, 상태 마이그레이션 작업이 중단되었는지에 따라 null
또는 에러를 반환합니다.
Console
admin.stopStateMigration()
RPC
{"method": "admin_stopStateMigration"}
Parameters
None
Return Value
Error
상태 마이그레이션이 중단되었다면 null
을 반환하고, 그렇지 않으면 에러를 반환합니다.
Example
Console
HTTP RPC
admin_stateMigrationStatus
stateMigrationStatus
관리 메서드는 상태 마이그레이션 작업 정보를 반환합니다. 이 메서드는 파라미터를 받지 않으며, 현재 진행중인 상태 마이그레이션 작업에 대한 정보를 반환합니다.
Console
admin.stateMigrationStatus
RPC
{"method": "admin_stateMigrationStatus"}
Parameters
None
Return Value
committed
int
committed
는 상태 마이그레이션 작업에 의해 복제된 트리 노드들의 개수입니다.
err
Error
상태 마이그레이션이 성공적으로 완료되었다면 null
을 반환하고, 그렇지 않으면 에러를 반환합니다.
isMigration
bool
상태 마이그레이션이 진행중이면 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
migrationBlockNumber
uint64
상태 마이그레이션이 시작된 블록 번호입니다. (상태 마이그레이션이 진행중이 아니라면 0
.)
pending
int
pending
은 상태 마이그레이션이 처리하지 않은 트리 노드 개수입니다.
progress
float64
progress
는 퍼센트(%)로 표현한 상태 마이그레이션 진행 정도입니다.
read
int
read
는 상태 마이그레이션이 읽어 들인 트리 노드 개수입니다.
Example
Console
HTTP RPC
admin_saveTrieNodeCacheToDisk
saveTrieNodeToDisk
는 노드가 재시작될 시 캐시된 트리 노드를 재사용하기 위해 디스크에 저장하기 시작하는 관리 메서드입니다. $DATA_DIR/fastcache
는 캐시된 트리 노드 테이터가 저장되고 또 로드되는 곳입니다. 저장 프로세스가 이미 실행 되었거나 트리 노드 캐시가 비활성화되었을 경우 이 메서드는 에러를 반환합니다. 이 기능은 Klaytn 1.5.3. 부터 지원됩니다.
Console
admin.saveTrieNodeCacheToDisk()
RPC
{"method": "admin_saveTrieNodeCacheToDisk"}
Parameters
None
Return Value
Error
트리 노드 저장이 성공적으로 시작되었다면 null
을 반환하고, 그렇지 않으면 에러를 반환합니다.
Example
Console
HTTP RPC
admin_setMaxSubscriptionPerWSConn
setMaxSubscriptionPerWSConn
는 하나의 웹소켓 연결에 허용된 최대 구독 수를 설정하는 관리 메서드입니다. 예를 들어, 최대 구독 수가 5로 설정되어 있는데 사용자가 klay_subscribe
API를 통해 5개 이상을 요청할 시, "하나의 웹소켓 연결당 5개의 구독이 허용됩니다"라는 에러 메시지가 나타납니다. 이 기능은 Klaytn 1.6.0. 부터 지원됩니다.
Console
admin.setMaxSubscriptionPerWSConn(limit)
RPC
{"method": "admin_setMaxSubscriptionPerWSConn"}
Parameters
limit
int
하나의 WebSocket 연결 당 허용된 최대 구독 수
Return Value
Error
한계가 성공적으로 설정될 시 null
를, 그렇지 않을 시 에러 메시지가 나타납니다.
Example
Console
HTTP RPC
Last updated