5. 长安链管理台

本产品定位为供开源社区区块链开发者,区块链产品经理使用,以便在初步接触长安链时,通过本平台可单机快速部署长安链用于产品体验和测试,并对长安链的技术架构,功能模块有一个初步了解。

本产品支持私有化部署,详细部署流程参考安装指南。

5.1. 安装指南

5.1.1. 版本支持

目前支持长安链v1.2.4v2.0.0v2.1.0版本,因长安链1.X版本和2.X版本底层数据结构不同,目前相互之间不兼容。

5.1.2. 环境依赖

docker

docker版本为20.10.7或以上 docker-compose版本为1.29.2或以上

下载地址:

若已安装,请通过命令查看版本:

  $ docker -v
  $ docker-compose -v

5.1.3. 账号依赖

当前管理平台的代码仓库为私有仓库,需要先到https://git.chainmaker.org.cn/users/sign_up 进行账号注册,才能同步代码。

5.1.4. 部署

管理平台主要由前端、后端及数据库三部分组成。通过docker的方式部署。

5.1.4.1. 代码下载

下载地址: https://git.chainmaker.org.cn/chainmaker/management-backend 下载代码:

$ git clone -b v2.1.0_alpha https://git.chainmaker.org.cn/chainmaker/management-backend.git

5.1.4.2. 启动容器

下载后端代码后,进入management-backend目录,执行以下命令

$ docker-compose up

启动成功后,浏览器访问loaclhost即可,如果发现启动过程中有端口被占用的情况,请修改docker-compose.yml文件中的端口

5.2. 整体流程说明

5.2.1. 从零部署链

如果您还未部署过链,可通过本平台部署长安链,主要流程如下。

1、首先需要在证书管理模块申请相关的组织证书、节点证书、用户证书。

2、接着在区块链管理模块,配置链的相关信息,包含共识策略、参与组织与节点、区块基本配置等,生成链的配置文件。

3、将配置文件下载到本地,并在linux服务器上,执行平台提供的脚本,一键启动链。

4、部署成功后,在管理平台上订阅链,使管理平台与链上某一节点建立联系,获得链上信息。

5、订阅成功后,您可以通过管理平台部署管理合约,发送交易,通过区块链浏览器查看链上信息。

5.2.2. 导入已有链

如果您已经有正在运行中的链,可将之导入到本管理台进行管理,主要流程如下

1、需要在证书管理先将该链上的某一组织、节点、用户证书导入到本管理台。

2、在区块链管理模块,使用所导入的组织、节点、用户信息订阅链。

3、订阅成功后,您可以通过所配置的节点与链建立联系,并且支持在管理台上部署管理合约,发送交易,通过浏览器查看链上信息

5.3. 平台账户说明

5.3.1. 登录

  • 私有化部署本平台时会生成的对应的admin账号,默认密码为a123456。如需新增其他账号,可通过admin账号,在平台账户管理处新增。

5.3.2. 账户管理

5.3.2.1. 平台账号列表

  • 可在平台账号管理处,新增账号,禁用/启用账号。

  • 如果忘记密码,管理员可将某一账户的密码重置为a123456

  • 在右上角账号位置,可以修改密码和退出登录。

5.3.2.2. 新增账号

  • 输入姓名,用户名,登录密码新增账号,其中用户名不可以重复。

5.4. 证书管理

5.4.1. 组织证书

5.4.1.1. 查看组织证书列表

  • 此处可查看已申请到的组织证书列表,并可以申请新的证书,导入外部证书,查看并下载证书。

  • 如果您是首次部署链,前先申请证书。如果您想导入正在运行中的链,可以导入该链对应的证书后,在区块链管理-订阅链模块直接订阅。

5.4.1.2. 申请组织证书

  • 填写组织ID,组织名称申请组织证书。

  • 注意组织ID不能重复申请。

5.4.1.3. 导入组织证书

  • 如果您已经通过长安链的ca服务,生成过证书,则可以将证书直接导入使用。

  • 目前暂不支持导入长安链体系外的ca证书

5.4.1.4. 查看下载组织证书

  • 可以直接查看,并下载组织证书。

5.4.2. 节点证书

5.4.2.1. 查看节点证书列表

  • 此处可查看已申请到的节点证书列表,并可以申请新的证书,导入外部证书,查看并下载证书。

5.4.2.2. 申请节点证书

  • 节点证书是由上级组织机构签发的,故而申请节点证书前,请先确保已申请/导入相应的组织证书。

  • 目前节点证书角色分为共识节点和同步节点两种。

  • 通过填写节点名称、组织信息,节点角色,节点ip和端口申请节点证书。

  • 注意为了后续生成链的配置文件以及订阅链时能简化操作,此处需要预填写节点最终会被部署的ip和端口。 请确保端口不要被占用。

5.4.2.3. 导入节点证书

  • 如果您已经通过长安链的ca服务,生成过节点证书,则可以将证书直接导入使用。

  • 注意导入节点证书前需要先导入节点证书签发组织的组织证书,并且导入节点证书时所选择的组织信息,必须与本节点证书签发的组织保持一致。

  • 目前暂不支持导入长安链体系外的ca证书。

5.4.2.4. 查看下载节点证书

  • 可以直接查看,并下载节点证书。

5.4.3. 用户证书

5.4.3.1. 查看用户证书列表

  • 此处可查看已申请到的用户证书列表,并且可以申请新的证书,导入外部证书,查看并下载证书。

5.4.3.2. 申请用户证书

  • 用户证书是由上级组织机构签发的,故而申请用户证书前,请先确保已申请/导入相应的组织证书。

  • 目前用户证书角色分为adminclient两种。

  • 通过填写用户名称、组织信息,用户角色申请用户证书。

5.4.3.3. 导入用户证书

  • 如果您已经通过长安链的ca服务,生成过用户证书,则可以将证书直接导入使用。

  • 注意导入用户证书前需要先导入用户证书签发组织的组织证书,并且导入用户证书时所选择的组织信息,必须与本用户证书签发的组织保持一致。

  • 目前暂不支持导入长安链体系外的ca证书。

5.4.3.4. 下载用户证书

  • 可以直接查看,并下载用户证书。

5.5. 区块链管理

5.5.1. 区块链概览

5.5.1.1. 查看区块链列表

  • 此处展示已跟本平台建立联系的区块链,其中如果点击未订阅的链,会跳转到下载链配置文件页面。如果已经订阅,则点击会进入链管理页面。

  • 支持新增区块链配置文件,通过配置文件执行部署脚本可以快速部署链。

  • 支持订阅已经部署运行的区块链。

5.5.1.2. 新增区块链

  • 链配置文件参数设定

    • 此处用于新增链配置文件,目前支持自定义链的id、名称、区块最大容量,出块间隔、交易过期时长,以及共识配置。

    • 目前支持配置TBFTRAFTSOLOHOTSTUFF等共识。

    • 申请链配置文件前,请先确保,所需的组织和节点证书已经申请/导入本管理平台。

    • 如果开启报错日志采集服务,则在您部署到链运行过程中如果发生异常,管理台会收集报错日志,并汇总展示,方便定位问题。如果您开启了参与长安链改进计划,则采集到的报错日志,将自动上传给长安链官方团队,方便团队持续改进产品。

  • 部署区块链

    • 设置完配置文件后,会自动生成链配置文件,并将配置文件和部署脚本以压缩包的形式提供,请下载压缩包文件。

    • 请将下载后的包,移动到要部署的机器上,执行release目录下的start.sh脚本即可启动链,命令如下:

    ./start.sh
    
    • 在本地部署完链后,需要在管理台的订阅链模块,订阅所部署的链,以建立区块链与本管理台的联系。

5.5.1.3. 订阅区块链

  • 如果您已经在服务器部署完区块链后,可在此处订阅区块链。

  • 在后续的多签投票流程中,需要用到组织证书。

  • 此处设置的节点,用于监听对应链的信息,以及通过该节点,往链上发送消息。

  • 此处设置的用户,将在后续对链上发起交易请求时,用于签名。

  • 故注意订阅前,请先确保所订阅的区块链的相关组织证书,节点证书,用户证书,均已导入本管理平台内。

5.5.1.4. 修改区块链配置

  • 支持在链部署完成后,修改链的配置信息。

5.5.1.5. 链权限配置信息查询

  • 支持查看链相应的管理权限,包括所属权限的投票规则,以及参与方。

  • 目前支持查看:新增节点权限,更新区块配置权限,升级合约权限,冻结合约权限,解冻合约权限,注销合约权限。

5.5.2. 合约管理

5.5.2.1. 查看合约列表

  • 此处展示本区块链已经部署的合约信息。支持新增合约,升级合约,冻结合约,解冻合约,注销合约,编辑查看合约等。

5.5.2.2. 部署合约

  • 注意合约名称必须保证唯一。

  • 目前支持的合约虚拟机类型为:WASMEREVMWXVMGASM

  • 需要上传编译后的合约文件。

  • 如果在链权限配置处,设置了部署合约需要多签,则此处可填写部署理由,提交部署后,会生成投票议案,通过后会部署上链。

  • 部署合约时,支持预设该合约的额外参数信息。

  • 部署合约时,如果是EVM合约会根据abi文件自动解析出合约调用方法,其他类型的合约支持手动录入调用方法,以便后面引用。

  • 合约调用方法为选填项,此处录入只是方便管理台其他地方可以引用,就算不录入也不影响直接调用合约。

  • 发起部署合约后,将会用订阅链时所选择的用户来构建交易,并进行交易签名。

5.5.2.3. 升级合约

  • 升级时,所填写的合约版本号,必须大于升级前的版本号。升级完成后,原合约将无法使用。

  • 其余情况与部署合约类似。

5.5.2.4. 编辑合约

  • 支持编辑合约调用方法,此处编辑的合约方法只是为链管理台上链管理功能处引用方便,并不影响链上合约代码。

  • 请正确的填写合约调用方法,如果一个方法涉及多个入参,可以用逗号分隔。

5.5.2.5. 其他操作

  • 处于正常状态下的合约,可以进行冻结操作。冻结行为需要经过多签投票后,才能执行。冻结后合约将暂时无法使用。

  • 处于冻结状态下的合约,可以进行解冻操作,解冻行为需要经过多签投票后,才能执行。解冻后合约将恢复正常使用。

  • 如果不需要使用该合约,可以将该合约注销,注销行为需要经过多签投票后,才能执行。注销后合约将永久无法使用。

5.5.3. 上链管理

5.5.3.1. 查看已上链记录列表

  • 此处展示上链记录列表,可以继续发起上链交易,或者查看已经上链的交易详情。

5.5.3.2. 发起上链

  • EVM合约通过解析abi文件可以自动获取合约调用方法,其他类型的合约目前需要手动录入调用方法。

  • 此处选择链上合约后,如果在合约管理处已经录入过合约方法,则将自动引入,填写相关的value值即可发起合约调用(上链)操作。

  • 同时支持手动输入调用方法,并填写相应的入参,发起合约调用(上链)操作。

  • 发起上链请求后,将会用订阅链时所选择的用户来构建交易,并进行交易签名。

5.5.4. 投票管理

5.5.4.1. 查看投票列表

  • 此处展示需要投票的投票议案,包括已投票议案的和未投票的议案。

  • 可以在链权限配置里查看哪些事件,需要哪些组织参与投票。

  • 此处可通过切换组织,查看对应组织的投票情况。

5.5.4.2. 参与投票

  • 点击投票,弹出弹窗,查看投票议案的具体内容,并决定是否投票通过。

  • 投票通过后,会检查是否满足链权限管理处的投票条件,如果满足的话,则往链上发起交易。

5.5.4.3. 查看投票详情

  • 支持查看投票详情,查看哪些组织投票,哪些还尚未投票。

5.5.5. 组织信息

5.5.5.1. 查看本链参与组织列表

  • 查看该条链的参与组织

5.5.6. 节点信息

5.5.6.1. 查看本链参与节点列表

  • 查看该条区块链的参与节点。

5.5.6.2. 查看节点详情

  • 查看节点详情,以及节点的与其他节点的链接情况。

5.5.7. 区块链浏览器

5.5.7.1. 浏览器整体概览

  • 此处展示区块链的全部区块信息,交易信息和合约信息

  • 支持通过区块高度,区块哈希,交易哈希,合约名称等搜索

5.5.7.2. 查看区块详情

  • 支持查看某一区块的具体信息,包括区块哈希,读写集哈希,DAG信息,以及本区块内的交易信息。

5.5.7.3. 查看交易详情

  • 支持查看某一条交易详情,包括交易的所属区块信息,交易发起人信息,交易所调用的合约执行情况。

5.5.7.4. 查看合约详情

  • 支持查看合约信息,包括合约的创建者信息,以及合约调用的历史交易记录。

  • 暂不支持查看合约源码。

5.6. 日志监控

5.6.1. 查看日志监控信息

  • 如果您在部署链的时候,选择开启日志监控,则当该链在运行过程中出现异常,日志监控服务会自动采集错误日志,并在此处展示。

  • 管理台每隔一段时间会从监控服务处获取报错日志信息,您也可以点击右上角刷新按钮手动拉取最新数据。

  • 您也可以将错误日志信息下载到本地查看,或者上传给长安链官方,方便官方持续优化产品。

  • 如果开启自动上报,则日志监控服务采集到的错误日志信息会自动发送给长安链官方,官方会根据报错情况持续优化长安链产品。

5.7. SDK管理

5.7.1. 查看开源文档及SDK

  • 此处提供开源文档,长安链源码,以及各SDK的下载入口。