项目部署
配置要求
设备数量 | 0< 设备数 < 5000 | 5000< 设备数 < 10000 | 设备数 > 10000 |
---|---|---|---|
推荐机器配置 | 2c4g | 4c8g | 根据情况调整 |
磁盘 | 100G | 200G | 根据情况调整 |
目前框架中使用的go通道处理设备上报数据,根据服务器配置更改协程处理能力。设备数大于5000时建议使用nats消息队列处理上报数据。
前端构建
前端项目直接build npm run build
需要注意的是在vite.config.ts
文件中 修改构建输出目录 为 后端目录下的 static
K3S部署
项目部署是基于K3S进行部署的,也就是K8S简约版本。
K3S的安装
- 安装
curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn INSTALL_K3S_VERSION="v1.18.20+k3s1" sh -
- 卸载
sudo /usr/local/bin/k3s-uninstall.sh
项目部署
- 设置打包环境
set GOOS=linux
set GOARCH=amd64
- 构建Linux执行命令
go build -o pandax .
- 构建docker镜像 (修改版本号 xmadmin/pandax:v1.0)
docker build -t xmadmin/pandax:v1.0 --rm .
\ - 上传daocker镜像
docker push xmadmin/pandax:v1.0
注意
前端同理,构建成docker镜像,然后推送到docker仓库。部署时记得修改端口号,有问题联系作者
服务的安装 (包括MySQL,Tdengine,Reids)
- kubectl kustomize deploy/manifest-server -o deploy/deploy-server.yaml
- kubectl apply -f ./deploy/deploy-server.yaml
PandaX系列应用安装
- 生成 deploy.yaml
kubectl kustomize deploy/manifest -o deploy/deploy.yaml
- 项目部署
kubectl apply -f deploy/deploy.yaml
查询所有部署结果 kubectl get pods -n pandax
kubectl get services -n pandax
docker单独部署
pandax后端构建
- 根据具体需要构建的环境设置,例如Linux amd64 先设置go env -w GOOS=linux
- 后端构建 go run build -o pandax .
- 构建docker镜像 docker build -t pandax:v1.0 .
- 单独部署 docke run -itd --name pandax --network=host pandax:v1.0
组态/规则链构建
- 修改前端构建的配置文件,主要是后端接口路径
- 项目目录下npm run build
- 构建docker镜像 docker build -t pandaxscada:v1.0 . 构建组态和规则
- 单独部署 组态:docker run -itd -p 7790:7790 --name=pandaxscada pandaxscada:v1.0
- 规则链: docker run -itd -p 7791:7791 --name=pandaxrule pandaxrule:v1.0
pandax前端构建
- 修改前端构建的配置文件,主要是后端接口路径
- 项目目录下npm run build
- 构建docker镜像 docker build -t pandax-ui:v1.0 .
docker-compose部署
安装 docker-compose
curl -L "https://github.com/docker/compose/releases/download/v2.16.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
1
赋予权限
sudo chmod +x /usr/local/bin/docker-compose
1
执行创建命令
docker-compose up
1
注意
执行部署前,检查所有镜像是否都已经构建完成并上传到远程仓库。