Starcoin Scan 区块浏览器
简介
本文主要介绍starcoin区块浏览器的维护,及其后台索引的维护,主要由以下几个部分组成
Elasticsearch 服务,主要负责数据存储和查询。
Postgres DB,负责存储一些统计信息
Java 服务端 https://github.com/starcoinorg/starcoin-search
starcoin-scan-api ,负责为前端拉取数据时的服务
starcoin-indexer,负责从链上拉取数据到ElasticSearch服务
Requirements
需要预先安装阿里云k8s环境
维护
查看
~ kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
actions-runner-system actions-runner-controller-6bfcf564f5-98zph 2/2 Running 1 561d
actions-runner-system actions-runner-controller-github-webhook-server-7b5ddf6f49l4d2m 2/2 Running 0 561d
cert-manager cert-manager-76b7c557d5-g46x9 1/1 Running 0 567d
cert-manager cert-manager-cainjector-655d695d74-8rfzh 1/1 Running 1 561d
cert-manager cert-manager-webhook-78bd968fbf-g4pkx 1/1 Running 0 567d
default scan-api-deployment-6fcb97d6-rrrtx 1/1 Running 0 554d
default starcoin-db 1/1 Running 0 15d
default swap-stat-api-deployment-7d7577c885-8l6nf 1/1 Running 0 248d
...
starcoin-barnard starcoin-indexer-deployment-544fcc458b-r76sk 1/1 Running 0 59d
starcoin-halley starcoin-indexer-deployment-755d6f68d6-9nc9s 1/1 Running 0 29m
starcoin-main starcoin-indexer-deployment-84b59b787b-pbf42 1/1 Running 0 29d
starcoin-main starcoin-indexer-swap-deployment-7fdc4f88c9-26gmj 1/1 Running 0 526d
starcoin-proxima starcoin-indexer-deployment-8447c644-9blvk 1/1 Running 0 137d
上述starcoin-indexer
开头的pods为indexer部分,scan-api
开头的Pods为Scan-API
PostgreSQL数据库维护
一般情况下,不需要对数据库登录操作,如果需要登录,则需要按照以下方式来进行
需要以starcoin-db作为跳板机来连接线上数据库,找到上面名为
starcoin-db
的数据库,执行命令进入,如果这个Pods已经没有了,需要执行第二条命令再创建一下,维持时间可以自己设置# Run starcoin db pods $ kubectl exec starcoin-db --stdin --tty -- sh $ kubectl run starcoin-db --image=alpine --restart=Never -- sleep 1d
执行命令安装PostgreSQL(下简称pg)客户端
apk add postgresql-client
此处需要数据库连接密码,则需要通过密钥管理服务获取,执行下列命令获取密码
连接即可
ES服务维护
修复
当线上测试网络,如halley、barnard、proxima网络需要重置,以及数据回滚时,会产生区块回滚,进而产生分叉,当产生分叉后就需要对数据进行修复,参考文档:barnard 回滚区块浏览器数据清理步骤