服务器设置ip
通常情况下部署服务器需要将服务器设置成固定ip,系统不一样,网卡配置文件名会有差异。下面是双网口配置,如果条件不允许没有双网卡只需设置一个网卡即可。
查看服务器网卡
输入下面命令,画框部分为设备网卡

设置ip1(对外ip)
输入vi ifcfg-ens33为例

设置ip2(服务器内部使用)
输入vi ifcfg-ens34为例,一般没有特殊要求设置默认ip:10.1.1.20

重启网络服务
1 | systemctl restart NetworkManager |
这时候就可以使用远程工具连接服务器了
搭建服务运行环境(数据库,docker,k8s等)
安装准备
根据服务器CPU架构选择anolisOS-8.8-x86(X86架构)或anolisOS-8.8-arrch64(ARM架构)拖到root目录下

一键搭建
1.进入安装目录,输入cd allinone-install-x86/anolisOS-8.8-x86/
2.安装脚本添加执行权限,输入chmod +x install.sh(这里已经添加过权限了所以显示绿色)
3.执行脚本,输入./install.sh

4.按照脚本提示输入参数

到这里需要输入yes

安装中,这个过程大概20分钟,耐心等待

如一切执行正常安装完成会出现下面这个页面

登陆k8s控制台进行验证:http://192.168.30.80:30880用户名:admin 密码:P@88w0rd,第一次进入需要修改密码一般设置:1234QWer. 如能登录界面说明安装成功。

服务配置
添加minio存储桶
1.登陆minio管理页面:192.168.30.80/minio 用户名:root 密码:=]-[0p9o8i
点击右下角按钮创建chunk、paperless、publics这三个桶

2.publics设置为可读写:先修改选项为读写,然后点击add

创建xxl_job数据库(导航猫工具)
1.导航猫连接,选择mysql

2.连接配置,主机名或IP地址:192.168.30.80 端口:33310 用户名:root 密码:=]-[0p9o8i

3.连接成功后,打开连接,右键运行tables_xxl_job.sql文件

创建timescaledb(导航猫工具)
1.导航猫连接,选择PostgreSQL

2.连接配置,主机名或IP地址:192.168.30.80 端口:35432 用户名:postgres 密码:=]-[0p9o8i

3.连接成功后,打开连接,右键运行init_sql.sql文件

打开emqx连接认证
登陆emqx控制台,192.168.30.80:18083 用户名:admin 密码:public
点击Plugins,打开http认证

防火墙设置
如果服务器没有防火墙需求,可以使用以下两行命令关闭防火墙
1 | systemctl disable firewalld |
如果服务器有防火墙需求(如阿里云等公网),需要打开防火墙,添加如下配置,并在策略组添加以下端口
1 | systemctl enable firewalld |
暴露服务端口
1 | firewall-cmd --zone=public --add-port=80/tcp --permanent |
放开k8s容器的dns解析和打开NAT
1 | firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.233.64.0/18" accept' |
每次开启防火墙,,docker网络会被销毁,所以请重启docker
1 | systemctl restart docker |
重启后请检查各类基类服务、k8s、无纸化服务等是否都运行正常。
无纸化部署
服务器环境搭建好之后,开始部署无纸化服务,部署方式分为移动端部署和本地端部署。
| 移动端 | 本地端 |
|---|---|
| 移动端部署分为两步,第一步云端同步从云端也就是公司内网下载部署内容到笔记本上。第二步笔记本连接服务器将部署内容推送到服务器。适用于现场服务器不能连接外网的情况。 | 直接从云端推送到服务器,服务器必须可以连接外网或者使用笔记本代理,优点是不用下载到笔记本本地,可以获取到最新的部署内容 |
移动端部署
云端同步
1.下载项目部署平台移动端,放到C盘根目录(如果放其他盘需改目录),如下

2.右键管理员身份运行“启动服务.bat”,启动成功后自动打开移动端页面,后续可以运行“打开界面.bat”再次打开

3.云端同步部分,通常只需要进入部署管理——快速部署页面,点击右上角“云端同步”,选择要同步的方案并同步

观察cmd窗口的日志内容,等待部署内容同步完成。

所有部署内容都下载在该文件夹中

部署之前
从云端同步完所有部署内容到本地文件后,可能会面临多种情况:
情况一:该笔记本可以直接连接项目现场的内网,切换笔记本网络至内网即可。
情况二:无法使用自带笔记本,只能用现场的内部电脑,如果是windows电脑,将笔记本的整个appinstallsynch目录打包拷到内部电脑,安装运行步骤如上。
情况三:如果只能使用内部的国产化电脑,请下载对应系统架构的移动端,然后将下图笔记本中的本地数据库和部署内容拷到国产化移动端中。最后将该国产化移动端打包拷到国产化电脑的任意位置。

新开一个命令窗口,执行以下命令,运行移动端,检查数据和部署内容是否正常
1 | ./jre/bin/java -jar appinstallsynch.jar |
本地部署
移动端从云端同步完部署内容,确保移动端处于内网环境,点击“应用”切换到本地部署模式。

1.本地端预检:点击系统管理–本地端配置,修改本地端后台API地址如http://192.168.0.80/server/api,点击项目配置,为该本地端绑定项目


点击连接配置,请务必确认地址和端口项,通常设为127.0.0.1,端口33310

2.替换项配置
点击项目管理-替换项配置
所有替换项的value请根据描述和实际ip进行修改确认
两个空缺项也要按描述填写
单网卡使用该网卡ip,双网卡建议使用第二张网卡ip

3.快速部署
点击部署管理-快速部署,点击方案,如下图

1)MYSQL列表下,点击执行
2)成功后切换到IMAGE列表,点击一键推送。因为镜像较多,内存较大,所以推送比较慢,可以在服务器命令窗口输入以下命令查看进度。pushing表示推送中,pushed successed表示推送成功,一共16个镜像。
1 | tail -n 30 -f /home/data/jars/appinstall/logs/appinstallclient/dmmanager.log |

注:因网络问题部分镜像未成功推送,尤其是officeonline、frontend、file三个,可进入镜像管理——版本列表,单独推送该镜像
3)镜像推送完毕后,切换到YAML列表,直接点击一键执行,登录k8s控制台观察执行各yaml的执行结果,如果有负载提示拉取镜像失败,可能就是上一步中镜像未推送成功,请单独再推送一次
4)登陆k8s控制台,点击集群-项目-paperless-部署,查看镜像是否更新完成,如果全部处于运行中的状态,那么就可以通过ip访问无纸化管理后台了。
本地端部署
部署平台本地端地址:http://192.168.30.80/server/v1
部署之前
本地端部署对网络有一定的要求,需要让服务器能够连接到公司内网
1.项目绑定(网络检查)
点击系统管理-项目信息,如果项目列表为空表示服务器没有连接到云端(公司内网),请检查vi /etc/hosts/中有无以下3条域名解析
1 | 122.224.239.138 update.xunyidi.cn |
如服务器需要通过笔记本代理才能访问外网,这3个ip请替换成笔记本的内网ip
2.配置预检(同移动端部署)
系统管理-云端配置:一般不需要改
系统管理-本地端配置:目标docker往后均使用push.registry.xyd:5000,而目标mysql,请务必确认对应地址和端口项,通常ip设为127.0.0.1,端口33310
3.项目替换项(同移动端部署)
进入项目管理——项目替换项
所有替换项的value请根据描述和实际ip进行修改确认
两个空缺项也要按描述填写
4.快速部署(同移动端部署)
服务端初始化
通过移动端部署或本地端部署可以成功通过服务器ip访问管理页面后,服务器并不能马上使用,需要设置一些初始参数。
无纸化服务授权
无纸化服务授权地址:http://192.168.30.80/share/api/setting/