142 lines
4.3 KiB
Markdown
142 lines
4.3 KiB
Markdown
# CloudWAF 升级部署手册
|
||
|
||
## I. 管理端 (EdgeAdmin) 升级
|
||
|
||
本文档介绍如何使用 `deploy.sh` 自动化脚本对 EdgeAdmin 服务进行升级部署。
|
||
|
||
### 1. 准备工作
|
||
|
||
在开始升级之前,请确保已满足以下条件:
|
||
|
||
1. **文件准备**
|
||
- `deploy.sh`: 部署脚本
|
||
- `edge-admin-linux-amd64-plus-vX.X.X.zip`: 对应版本的 EdgeAdmin 更新包
|
||
|
||
2. **上传文件**
|
||
将上述两个文件上传到服务器的同一目录下(例如 `/root` 或 `/tmp`)。
|
||
|
||
3. **赋予脚本执行权限**
|
||
在终端中执行命令:
|
||
```bash
|
||
chmod +x deploy.sh
|
||
```
|
||
|
||
### 2. 确认安装路径
|
||
|
||
脚本默认的安装路径为 `/usr/local/goedge`。如果您的服务安装在其他位置,请按以下方法修改:
|
||
|
||
**方法 A:修改脚本(推荐)**
|
||
使用文本编辑器(如 vi/nano)打开 `deploy.sh`,修改第 10 行:
|
||
```bash
|
||
# 将默认路径修改为您的实际安装路径
|
||
INSTALL_BASE_DIR="/您实际的/安装路径"
|
||
```
|
||
|
||
**方法 B:使用环境变量(临时)**
|
||
在执行脚本时指定环境变量:
|
||
```bash
|
||
export BRAND_INSTALL_PATH="/您实际的/安装路径"
|
||
```
|
||
|
||
### 3. 执行升级
|
||
|
||
使用 root 用户或 sudo 执行脚本,参数为更新包的路径。
|
||
|
||
#### 3.1 运行命令
|
||
```bash
|
||
# 示例:更新当前目录下的 zip 包
|
||
sudo ./deploy.sh ./edge-admin-linux-amd64-plus-v1.3.8.zip
|
||
```
|
||
|
||
#### 3.2 确认升级
|
||
脚本运行后会显示升级信息预览,请检查路径是否正确:
|
||
```text
|
||
CloudWAF 部署脚本 - Gname DNS 提供商更新
|
||
==========================================
|
||
|
||
部署配置:
|
||
ZIP 文件: ...
|
||
目标目录: /usr/local/goedge/edge-admin
|
||
备份目录: /usr/local/goedge/backup_20240215_120000
|
||
|
||
确认开始部署? (y/N):
|
||
```
|
||
输入 `y` 并回车确认。
|
||
|
||
### 4. 升级过程说明
|
||
|
||
脚本会自动执行以下步骤:
|
||
1. **备份**:将当前的配置 (`configs/`) 和数据备份到 `backup_YYYYMMDD_HHMMSS` 目录。
|
||
2. **停止服务**:停止正在运行的 `edge-admin` 进程。
|
||
3. **解压**:解压新的安装包到临时目录。
|
||
4. **替换**:
|
||
- 覆盖 `bin/edge-admin` 可执行文件。
|
||
- 覆盖 `web/` 前端文件(保留 `web/tmp`)。
|
||
- 覆盖 `edge-api/` 相关文件(如果存在)。
|
||
5. **恢复配置**:将备份的 `configs/api_admin.yaml` 等配置文件恢复到新目录,**确保原有配置不丢**。
|
||
6. **启动服务**:重新启动 `edge-admin` 服务。
|
||
|
||
### 5. 验证与故障排查
|
||
|
||
升级完成后,请进行以下检查:
|
||
- **检查进程**:`ps aux | grep edge-admin`
|
||
- **查看日志**:`tail -f /安装路径/edge-admin/logs/run.log`
|
||
- **登录验证**:使用浏览器访问管理后台,确认升级成功。
|
||
|
||
---
|
||
|
||
## II. 用户端 (EdgeUser) 升级
|
||
|
||
EdgeUser (用户控制台) 尚未提供自动化脚本,请按照以下步骤手动升级。
|
||
|
||
### ⚠️ 重要提示:关于自定义样式
|
||
如果您修改过 `web/` 目录下的 HTML/CSS (例如登录页),请务必在升级前**手动备份这些文件**。
|
||
升级过程中的 `web` 目录覆盖会导致您的自定义修改丢失。
|
||
|
||
### 1. 备份 (Backup)
|
||
```bash
|
||
# 假设安装目录在 /opt/edge-user
|
||
cp -r /opt/edge-user /opt/edge-user-backup-$(date +%Y%m%d)
|
||
```
|
||
*关键文件是 `configs/api_user.yaml`,这是连接 API 的凭证,**千万不要丢失**。*
|
||
|
||
### 2. 上传与准备 (Prepare)
|
||
将 `edge-user-linux-amd64-plus-vX.X.X.zip` 上传到服务器并解压到临时目录。
|
||
```bash
|
||
unzip edge-user-linux-amd64-plus-v1.3.8.zip -d /tmp/edge-user-update
|
||
```
|
||
|
||
### 3. 停止服务 (Stop)
|
||
```bash
|
||
/opt/edge-user/bin/edge-user stop
|
||
```
|
||
|
||
### 4. 替换文件 (Replace)
|
||
|
||
执行以下命令替换程序文件:
|
||
|
||
```bash
|
||
# 1. 替换二进制文件
|
||
cp -f /tmp/edge-user-update/edge-user/bin/edge-user /opt/edge-user/bin/
|
||
|
||
# 2. 替换前端资源 (Web)
|
||
# [警告] 此操作会重置所有页面样式
|
||
cp -rf /tmp/edge-user-update/edge-user/web /opt/edge-user/
|
||
|
||
# 3. 恢复自定义样式 (如果有备份)
|
||
# cp /备份路径/login/index.html /opt/edge-user/web/views/@default/login/
|
||
```
|
||
|
||
**注意:不要覆盖 `configs` 目录,以保留您的 `api_user.yaml` 配置。**
|
||
|
||
### 5. 重启服务 (Start)
|
||
```bash
|
||
/opt/edge-user/bin/edge-user start
|
||
```
|
||
|
||
### 6. 验证 (Verify)
|
||
查看日志确定启动成功,并访问用户平台页面。
|
||
```bash
|
||
tail -f /opt/edge-user/logs/run.log
|
||
```
|