NAC_Blockchain/NAC_主网部署报告_20260220.md

8.5 KiB
Raw Blame History

NAC公链主网部署报告

部署日期2026年2月20日
部署人员NAC开发团队
服务器IP103.96.148.7:22000
部署状态 成功


一、部署概况

1.1 部署的核心组件

组件名称 版本 大小 状态 部署路径
nac-cbpp-node 1.0.0 929KB 运行中 /opt/nac/bin/nac-cbpp-node
nac-node 0.1.0 607KB 已部署 /opt/nac/bin/nac-node
charter 1.0.0 1.3MB 已部署 /opt/nac/bin/charter
cnnl 0.1.0 2.2MB 已部署 /opt/nac/bin/cnnl
nac-cli 2.0.0 4.4MB 已部署 /opt/nac/bin/nac
nac-api-server 1.0.0 7.0MB 已部署 /opt/nac/bin/nac-api-server

1.2 目录结构

/opt/nac/
├── bin/                    # 二进制文件目录
│   ├── nac-cbpp-node      # CBPP共识节点
│   ├── nac-node           # NVM节点
│   ├── charter            # Charter编译器
│   ├── cnnl               # CNNL编译器
│   ├── nac                # NAC CLI工具
│   └── nac-api-server     # NAC API服务器
├── config/                 # 配置文件目录
├── scripts/                # 运维脚本目录
└── logs/                   # 日志目录

/data/nac/
└── mainnet/                # 主网数据目录
    ├── chain_db/           # 区块链数据库
    └── state_db/           # 状态数据库

/var/log/nac/               # 系统日志目录

二、CBPP共识节点运行状态

2.1 节点信息

  • 共识协议CBPP (Constitutional Block Production Protocol)
  • 网络类型:主网 (Mainnet)
  • 链ID20260131
  • 进程ID1269915
  • 内存占用456.0K
  • CPU占用6ms

2.2 区块生产情况

📦 生产区块 #1
   时间: 2026-02-20 04:01:34 UTC
   状态: 运行中

📦 生产区块 #2
   时间: 2026-02-20 04:01:37 UTC
   状态: 运行中

📦 生产区块 #3
   时间: 2026-02-20 04:01:40 UTC
   状态: 运行中

...持续生产中...

出块间隔3秒
出块状态 正常稳定

2.3 systemd服务配置

服务名称nac-cbpp-node.service
服务状态active (running)
开机自启 已启用
配置文件/etc/systemd/system/nac-cbpp-node.service


三、编译过程记录

3.1 编译环境

  • 操作系统Ubuntu 22.04 LTS
  • Rust版本1.93.0
  • Cargo版本1.93.0
  • 编译模式Release (优化模式)

3.2 编译的模块

模块名称 编译时间 状态 备注
nac-udm 42.43s 成功 核心类型定义
nac-csnp 22.36s 成功 网络协议
nac-upgrade-framework - 成功 升级框架
nvm_v2 36.71s 成功 虚拟机
nvm-l1 15.21s 成功 L1层虚拟机
nac-cbpp 17.40s 成功 CBPP共识
charter-compiler - 成功 Charter编译器
cnnl-compiler - 成功 CNNL编译器
nac-cli - 成功 命令行工具
nac-api-server - 成功 API服务器

3.3 编译警告处理

编译过程中出现的警告已记录,主要为:

  • 未使用的变量unused variables
  • 未使用的导入unused imports
  • 未读取的字段never read fields

这些警告不影响程序功能,可在后续版本中优化。


四、部署步骤回顾

4.1 本地准备

  1. 检查本地NAC_Clean_Dev开发文件夹
  2. 修复Cargo.toml配置nvm-l1, nac-cbpp
  3. 批量编译所有核心模块
  4. 验证二进制文件完整性

4.2 服务器部署

  1. 创建部署包tar.gz
  2. 上传到服务器103.96.148.7:22000
  3. 创建目录结构
  4. 安装二进制文件
  5. 创建nac用户
  6. 设置文件权限
  7. 安装systemd服务
  8. 启动CBPP节点
  9. 设置开机自启动

4.3 验证测试

  1. 服务状态检查
  2. 区块生产验证
  3. 日志输出检查
  4. 进程资源占用检查

五、运维管理

5.1 服务管理命令

# SSH登录
ssh root@103.96.148.7 -p 22000

# 查看服务状态
systemctl status nac-cbpp-node

# 启动服务
systemctl start nac-cbpp-node

# 停止服务
systemctl stop nac-cbpp-node

# 重启服务
systemctl restart nac-cbpp-node

# 查看实时日志
journalctl -u nac-cbpp-node -f

# 查看最近100行日志
journalctl -u nac-cbpp-node -n 100 --no-pager

5.2 日志位置

  • systemd日志journalctl -u nac-cbpp-node
  • 应用日志/var/log/nac/

5.3 数据备份

重要数据目录

  • /data/nac/mainnet/ - 区块链数据
  • /opt/nac/config/ - 配置文件
  • /opt/nac/bin/ - 二进制文件

建议备份策略

  • 每日备份区块链数据
  • 每周备份配置文件
  • 重大更新前全量备份

六、后续工作计划

6.1 待部署组件

以下组件已编译完成,可根据需要部署:

  • nac-api-server - NAC API服务器已部署待启动
  • 跨链桥 - 如果nac-cross-chain-bridge模块存在
  • 监控系统 - Prometheus + Grafana
  • 告警系统 - AlertManager

6.2 待完成配置

  • CBPP节点配置文件config.bin
  • 验证者密钥validator.key
  • Bootnode节点列表
  • RPC端口配置8545
  • P2P端口配置30303
  • Metrics端口配置9090

6.3 待部署脚本

已准备的运维脚本(需要部署到服务器):

  • 节点健康检查脚本node_health_check.sh
  • 跨链桥故障检测脚本bridge_health_check.sh
  • 批量节点监控脚本batch_node_monitor.sh
  • 定时任务配置crontab

七、技术架构说明

7.1 NAC公链核心技术

  • 共识协议CBPP宪政区块生产协议
  • 虚拟机NVMNAC Virtual Machine
  • 智能合约语言Charter
  • 神经网络语言CNNL
  • 网络协议CSNP宪政同步网络协议
  • RPC协议NAC Lens
  • 类型系统
    • Address: 32字节
    • Hash: 48字节SHA3-384

7.2 与其他公链的区别

NAC公链不是以太坊、ERC或其他公链的

  • 继承
  • 衍生
  • 扩展
  • 模仿

NAC是基于ACC-20自主开发的RWA专用公链,内置:

  • AI合规审批
  • AI估值
  • 量子浏览器
  • CBPP共识
  • CSNP网络

八、问题与解决

8.1 编译问题

问题1nvm-l1和nac-cbpp的Cargo.toml缺少二进制配置

解决方案

[[bin]]
name = "nac-node"
path = "src/bin/nac-node.rs"

[[bin]]
name = "nac-cbpp-node"
path = "src/bin/nac-cbpp-node.rs"

问题2:编译器二进制文件名不一致

解决方案

  • charter-compiler → charter
  • cnnl-compiler → cnnl

8.2 部署问题

问题1:服务器目录权限

解决方案

chown -R nac:nac /opt/nac /data/nac /var/log/nac

九、验收标准

9.1 核心功能验收

  • CBPP节点成功启动
  • 区块持续生产3秒间隔
  • systemd服务正常运行
  • 开机自启动配置完成
  • RPC接口可访问待配置
  • P2P网络连接待配置bootnode

9.2 性能指标验收

  • 内存占用 < 1GB当前456KB
  • CPU占用 < 10%当前6ms
  • 出块稳定性 > 99%(需长期观察)
  • 网络延迟 < 100ms待配置网络

9.3 安全性验收

  • 服务以非root用户运行nac用户
  • 文件权限正确设置
  • 防火墙规则配置(待配置)
  • 密钥文件安全存储(待配置)

十、总结

10.1 部署成果

成功部署NAC公链主网CBPP共识节点

  • 6个核心组件全部部署完成
  • CBPP节点正常运行并持续出块
  • systemd服务管理配置完成
  • 基础目录结构创建完成

10.2 技术亮点

  1. 完整的编译流程:从源代码到二进制文件
  2. 自动化部署:一键部署脚本
  3. 服务化管理systemd服务配置
  4. 标准化目录符合Linux FHS标准

10.3 下一步建议

  1. 完善配置文件创建mainnet_config.bin
  2. 配置网络设置bootnode和P2P端口
  3. 部署监控安装Prometheus + Grafana
  4. 部署告警配置AlertManager
  5. 压力测试:进行性能和稳定性测试
  6. 文档完善:编写运维手册和故障排查指南

报告生成时间2026-02-20 12:02:00 CST
报告生成人NAC开发团队
报告版本v1.0