部署中间件
1.部署准备
在部署之前,需要准备以下资源:
中控机
- 需要使用 root 或相同权限的账户;
- 需要将部署过程中,所有会用到的部署包、工具等上传到该服务器;
- 该服务器不需要访问互联网;
- 需要安装 CentOS 7.9 或 Ubuntu 22.04 及以上系统;
- 需要使用 Intel x86_64 架构的硬件;
- 该中控机与所有的“被部署端”保持所有端口互通(或最低的状态)。
安装包
- Ansilbe 离线依赖包:
Centos:https://temp-1251849568.cos.ap-guangzhou.myqcloud.com/download/ansible/os/centos/ansible-centos-7-x86-1.0.1.tar.gz
Ubuntu:https://temp-1251849568.cos.ap-guangzhou.myqcloud.com/download/ansible/debian/ansible-ubuntu-x86-22.04.20240628.tar.gz- Ansible Playbook:
https://temp-1251849568.cos.ap-guangzhou.myqcloud.com/download/ansible/finclip-deploy-ansible-master.tar.gz- RKE2 安装包:
https://temp-1251849568.cos.ap-guangzhou.myqcloud.com/download/ansible/rke2/1.26.12-rke2r1.tar.gz- Rancher 镜像包:
https://temp-1251849568.cos.ap-guangzhou.myqcloud.com/download/ansible/images/rancher-images-x86-2.7.10.tar.gz- 基础服务镜像包:
https://temp-1251849568.cos.ap-guangzhou.myqcloud.com/download/ansible/images/stateful-images-x86-1.0.2.tar.gz- FinClip 组件镜像包
请向凡泰极客人员索取最新版本;- FinClip 编排 Helm Chart
请向凡泰极客人员索取最新版本;- license 许可证文件
由凡泰极客人员颁发提供;2.环境初始化
将凡泰极客提供的 Ansible Playbook、Rancher 镜像包、中间件镜像包、FinClip 组件镜像包、FinClip 编排 Helm 上传至中控机后,依次执行下列命令进行依赖安装:
- 解压并移动压缩包
# 创建部署目录
mkdir -p /data/finclip-installation
# 解压playbook
tar xvf finclip-deploy-ansible-master.tar.gz -C /data/finclip-installation
# Centos
tar xvf ansible-centos-7-x86-1.0.1.tar.gz -C /data/finclip-installation/finclip-deploy-ansible-master/
# Ubuntu
tar xvf ansible-ubuntu-x86-22.04.20240628.tar.gz -C /data/finclip-installation/finclip-deploy-ansible-master/
# 移动镜像包
mv 1.26.12-rke2r1.tar.gz rancher-images-x86-2.7.10.tar.gz stateful-images-x86-1.0.2.tar.gz monitor-57.2.0.tar.gz log-image.tar.gz /data/finclip-installation/finclip-deploy-ansible-master/- 切换至部署目录
cd /data/finclip-installation/finclip-deploy-ansible-master/- 安装 Python3、pip3 与相关依赖
bash /data/finclip-installation/finclip-deploy-ansible-master/files/install_python3-with-pip.sh- 安装 Ansible 与相关依赖
bash /data/finclip-installation/finclip-deploy-ansible-master/files/install_ansible.sh- 环境检查
安装完成后,可以通过命令 pip3 -V 验证 pip3 是否安装成功。
Ansible 可以通过 ansible --version 验证是否安装成功。
3.配置 Ansible Playbook
在中控机上配置 Ansible Playbook
回到安装包目录,依次执行下列命令准备 Ansible Playbook
- 切换至目录
cd /data/finclip-installation/finclip-deploy-ansible-master/
- 拷贝 inventory 文件
cp inventory.example inventory
- 打开 inventory 文件,在 [角色] 下方分配 IP
| 角色 | 说明 | 最小节点数 / 推荐节点数 |
|---|---|---|
| registry | 私有 Docker 镜像仓库 | 1 / 1 |
| redis_cluster | Redis 集群 | 0 / 3 或更多 |
| mysql | mysql 集群 | 0 / 2 或更多 |
| minio | MinIO 集群+纠删码模式 | 0 / 4 或更多 |
| rke_worker | Kubernetes 集群的 Worker 节点 | 0 / 3 或更多 |
| rke_controlplane | Kubernetes 集群的控制节点 | 0 / 3 或更多 |
最小: 指的是该组件可以接受以该数量的节点运行;
推荐: 指的是该组件在标准化部署下,建议以该数量的节点进行部署;
registry: 部署过程中会用到的私有 Docker 镜像仓库。该组件属于临时组件,部署完成后,建议转移所有镜像至您自有的镜像仓库中;
更多: 代表该角色所指的服务,如果有特别的需要,可以分配该数量以上的、且尽可能多的节点。
准备 SSH 鉴权信息
依次执行下列命令准备 SSH 鉴权信息
- 生成 SSH Public Key
中控机执行命令: ssh-keygen,按照命令提示进行操作,如果不需要自定义配置,连续敲击 [ENTER] 即可按照默认进行设置。直到出现下列 randomart image 代表 SSH Public Key 已经生成完成。

- 分发 SSH Public Key
执行命令:ssh-copy-id -i /root/.ssh/id_rsa.pub [用户]@[IP 地址]
所有机器都需要分发,请根据实际情况,替换 [用户] 与 [IP 地址] ,如 root@10.0.0.1 。
- 切换至 Ansible 目录
执行命令: cd /data/finclip-installation/finclip-deploy-ansible-master/
- 测试 SSH 可达性
执行命令:ansible all -m ping
确认所有回显均为“[IP 地址] | SUCCESS” 与“ping: pong” 。
标准化基建部署
默认全部内容部署在 /data/finclip 目录下
如需修改: 编辑 /data/finclip-installation/finclip-deploy-ansible-master/roles/deploy/vars/default.yaml 文件,修改 persistent_dir_prefixe: "/data/finclip" 变量
确认 inventory 文件的角色分配无误后,执行下列命令通过 Ansible 自动部署中间件与基建服务
- 切换至 Ansible 目录
cd /data/finclip-installation/finclip-deploy-ansible-master/
- 执行 Ansible Playbook 进行部署
ansible-playbook deploy.yaml | tee setup.log
部署通常需要 30-40 分钟左右,如果出现下列的信息,则表示部署完成:

部署完成后日志保存在当前目录 setup.log 文件中
获取 MySQL、Redis、Registry、MinIO 等中间件的鉴权、连接地址信息
cat /data/finclip-installation/finclip-deploy-ansible-master/note.txt
获取 Rancher、Grafana 等密钥信息;
cat /data/finclip-installation/finclip-deploy-ansible-master/.secret.yaml
获取 ElasticSearch 的鉴权信息,其中 "elastic" 用户为业务用户。
cat /root/esAuth
注意: Helm 部署 Finclip 只需要查看 note.txt 中的信息即可。
部署 Finclip
1.FinClip 部署资源准备
导入镜像
回到安装包目录,中控机执行以下命令,导入凡泰极客提供的 FinClip 组件镜像包并上传至 Registry 仓库:
for i in `docker load -i images.tgz |awk '{print $NF}'` ; do docker tag $i `echo $i|awk -F '/' '{print "registry.finogeeks.internal:5000/"$(NF-1)"/"$NF}'` ; docker push `echo $i|awk -F '/' '{print "registry.finogeeks.internal:5000/"$(NF-1)"/"$NF}'` ;done创建 finclip namespace
中控机执行以下命令:
kubectl create namespace finclip
创建 imagePullSecrets
创建所需凭据,用于拉取 Registry 仓库中的容器镜像,中控机执行以下命令创建:
kubectl create secret generic finclipro --from-file=.dockerconfigjson=/root/.docker/config.json --type=kubernetes.io/dockerconfigjson -n finclip
2.部署 Finclip
修改 Helm 部署文件
回到安装包目录,解压由凡泰极客人员提供 Helm chart 包。
需要修改连接接信息、鉴权以符合实际环境需要。
- 编辑 license 文件
进入到 FinClip 编排 Helm chart 目录,修改 "凡泰极客-POC-F-01_20240513_license.txt" 文件为正确的 license 密钥
- 编辑 values.yaml
进入到 FinClip 编排 Helm chart 目录,编辑 values.yaml 文件,删除旧的数据服务信息,复制 /data/finclip-installation/finclip-deploy-ansible-master/note.txt 中的 redis、mysql、objectStorage、 elasticsearch 信息直接粘贴到 values.yaml 文件中。
使用sed命令修改仓库地址
sed -i 's@docker.finogeeks.club/mop@registry.finogeeks.internal:5000/mop@g' values.yaml
sed -i 's@docker.finogeeks.club/infra@registry.finogeeks.internal:5000/infra@g' values.yaml启动 finclip 服务
在部署机器上执行(中控机上)
使用 cd 命令切换到 FinClip 编排 Helm chart 目录 :finclip-chart(不同版本目录名不同)
执行命令启动服务:Helm install finclip . -n finclip
启动完成查看 pod 状态是否为 running:kubectl get pod -n finclip
其他命令参考:
配置修改后更新:Helm upgrade finclip . -n finclip
卸载:Helm uninstall finclip -n finclip
访问验证
| 网站名称 | 访问链接 | 初始账户 | 说明 |
|---|---|---|---|
| 数字中⼼ | http://IP:PORT/ops#/ | admin | PORT:端口号,默认 30001,IP:服务器所在ip地址,如: 172.217.163.46 |
| 开发中⼼ | http://IP:PORT/dev#/ | 自行注册 |
视频教程
访问地址:集群版部署
