可视化部署

删除.ssh里的文件:

 webase机器

rm -rf ~/.ssh/*

webase-node机器

rm -rf ~/.ssh/*

一、可视化部署概念

可视化部署是指通过 WeBASE 管理平台(WeBASE-Web+WeBASE-Node-Manager),在多台主机上快速部署 FISCO-BCOS 底层节点和 WeBASE-Front 前置 以及对底层节点的扩容操作。可视化部署,需要先部署依赖服务,包括管理平台(WeBASE-Web)、节点管理子系统(WeBASE-Node-Manager)、签名服务(WeBASE-Sign)。然后通过 WeBASE 管理平台(WeBASE-Web)的界面在填入的主机中部署节点(FISCO-BCOS 2.5.0+,暂未支持FISCO-BCOS 3.0系列)和节点前置子系统(WeBASE-Front 1.4.0+)。

二、Ansible的概述

Ansible是一款为类Unix系统开发的自由开源的配置和自动化工具。它用Python写成,类似于saltstack和Puppet,但是有一个不同和优点是我们不需要在节点中安装任何客户端。它使用SSH来和节点进行通信。Ansible基于 Python paramiko 开发,分布式,无需客户端,轻量级,配置语法使用 YMAL 及 Jinja2模板语言,更强的远程命令执行操作。

Ansible配置包括以下三步:

  • 宿主机安装Ansible
  • 仅在宿主机安装节点时,则仅需安装Ansible,无需完成下面两步host与免密配置
    • 配置Ansible host列表
    • 配置Ansible免密登录到节点主机

webase机器:

一、安装Ansible 

yum -y install epel-release
yum -y install ansible

验证

ansible --version

配置

vim /etc/ansible/ansible.cfg

# 找到host_key_checking选项,添加

host_key_checking = False

二、.配置Ansible host列表

vim /etc/ansible/hosts

在/etc/ansible/hosts文件中添加IP组webase,并配置节点主机的IP、免密登录账号和私钥路径、SSH端口。添加以上内容:此处假设节点机IP为192.168.141.101,免密登录账户为root,且id_rsa免密私钥的路径为/root/.ssh/id_rsa,ssh端口使用22端口,添加名为webase的IP组

注:若后续需要添加新的主机,需要将新主机的IP添加到此处。

[webase-node]
192.168.190.169 ansible_ssh_private_key_file=/root/.ssh/id_rsa  ansible_ssh_user=root  ansible_ssh_port=2

三、创建密钥对  

ssh-keygen -t rsa -m PEM

四、将公钥文件上传到需要免密登录的主机(替换 [IP] 为节点主机的 IP 地址),然后输入远程主机的登录密码。 

ssh-copy-id -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa.pub root@192.168.190.169

 五、检查从部署 WeBASE-Node-Manager 服务的主机是否能成功免密登录部署节点的主机(替换 [IP] 为主机的 IP 地址)

ssh -o StrictHostKeyChecking=no root@192.168.190.169

 六、执行Ansible的--list-hosts命令查看是否已添加成功

ansible webase-node --list-hosts

七、对ansible中的webase ip组进行ping检测

ansible web-servers -m ping

 执行Ansible的ping命令,检测添加到hosts中各个节点主机IP能否被访问,免密配置是否已生效。

  • 若出现IP | SUCCESS的则代表该IP可连通
  • 如果出现FAILED代表该IP无法连接,需要根据上文的免密登录配置进行ssh -o StrictHostKeyChecking=no root@[IP]检测
  • 对ansible中的webase ip组进行ping检测

webase-node机器:

一、安装Ansible 

yum -y install epel-release
yum -y install ansible

验证

ansible --version

配置

# 找到host_key_checking选项,添加

host_key_checking = False

二、创建密钥对  

ssh-keygen -t rsa -m PEM

 三、免密、验证免密。 

免密

ssh-copy-id -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa.pub root@192.168.190.168

 验证免密

ssh -o StrictHostKeyChecking=no root@192.168.190.168

 修改配置文件:

cd fisco/webase-deploy/
vim visual-deploy.properties

 脚本文件安装WeBASE

 通过installWeBASE命令参数,部署并启动可视化部署的所有服务。同时需要注意以下几点:

  • 部署脚本会拉取相关安装包进行部署,需保持网络畅通。
  • 首次部署需要下载编译包和初始化数据库,重复部署时可以根据提示不重复操作。部署过程中出现报错时。
  • 可根据错误提示进行操作,或根据本文档中的常见问题进行排查不建议使用sudo执行脚本,例如sudo python3 deploy.py installWeBASE(sudo会导致无法获取当前用户的环境变量如JAVA_HOME)。
python3 deploy.py installWeBASE

 可视化部署节点:

一、进入webase

python3 deploy.py stallWeBASE

网页浏览器 

在部署完依赖服务后,使用浏览器,访问节点管理平台页面:

# 默认端口 5000
http://{deployIP}:{webPort}

 初始账户为admin,密码为Abcd1234,初次登录需要修改密码

二、添加主机

添加主机时,需要填入主机的IP与部署节点的目录

  • 仅在宿主机(即节点管理服务所在主机)部署节点时,则添加主机必须为127.0.0.1,否则填写公网IP或内网IP需要配置Ansible host
  • 添加主机时,将检查该IP是否可以连通,同时将检查该主机的路径是否可访问,并自动创建该目录

 

三、添加节点信息 

节点管理,先点击“新增节点”添加节点信息

  • 可以在一台主机中指定节点数量
  • 添加多个主机的节点,需要确保填入的各个主机间的P2P端口和前置端口互通,否则将影响节点正常运行

四、检查主机

添加节点信息后,将自动检查一下依赖

  • 检查主机的可用内存是否支持当前的节点数
  • 检测机器的端口是否已被占用
  • 检测Docker服务是否已启用,并通过hello-world的镜像进行测试

检测失败的信息将在操作日志中显示,只有添加的节点信息全部通过才可以开始下一步“初始化”

  • 如果提示内存不足(Free memory too low),则可以释放主机内存,一节点至少 1G 可用内存(Free memory)
  • 如果提示端口被占用,可根据提示的端口号,在主机释放端口或删除填入的节点信息,修改后重新填入
  • 如果提示Docker相关错误,需要到主机确认已安装Docker并已启用,是否已配置Docker组,确保能拉取并运行hello-world镜像
  • 部分虚拟机缺少bc依赖(bc command not found),需要手动安装bc (yum -y install bc)

yum -y install bc

 五、初始化主机:

 点击“初始化”按钮进行主机初始化,将自动完成以下操作,初始化成功后才能进行下一步的部署操作,“初始化”按钮将变成“部署”按钮

  • 自动检测并安装相关系统依赖,如netstatwget
  • 加载节点镜像:根据选中的镜像加载方式进行加载(若手动加载则检测镜像已存在于节点主机)
  • 自动加载镜像时,会在节点主机指定目录中创建download目录,并下载镜像的tar包保存于此;若已存在同名tar包将不重复下载,直接使用已有tar包(docker-fisco-webase.tar)

  • 初始化操作预计在两到三分钟内完成,若网速过慢或不稳定建议通过手动加载镜像方式拉取 若初始化失败,则需要结合操作日志排查上述步骤的错误原因,排除主机中存在的问题后,重新执行检测,初始化操作

 六、部署

添加的主机状态都为“初始化成功”后,点击“部署”按钮后,将自动完成以下操作

  • 根据填入的节点信息自动生成链配置与证书
  • 通过SCP将节点与前置的配置文件、证书传输到各个主机的指定目录下

  • 生成配置与传输配置完成后,将自动进入链初始化页面,届时将自动启动各个主机的节点,此过程预计需要几分钟时间,直到链状态为“运行”
  • 若出现启动失败,需要结合报错提示,检查节点主机状态正常,各个节点主机间端口互通,网速过慢或网络丢包严重等等,排查后,点击“删除链”重置当前的链后,重新尝试建链

 启动好了之后,刷新一下

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值