feat: K8s 部署清单、Token 接入加固与日志/设置页优化

- kubernetes/: 30Gi PVC、单副本 Recreate、Secret/Service/NodePort/Ingress 清单与部署文档
- 数据安全: kubeconfig/token 统一加密存储,启动迁移历史明文,DB 0600
- Token 接入: 命名空间级最小权限提示、长期 Token、自签证书 TLS 兼容
- 部署: 命名空间级 Token 下跳过 Namespace patch/枚举,节点信息容错
- 日志页: namespace → app → pod 选择顺序与作用域收窄
- 设置页: 拆分为通用/告警/LDAP/镜像源四个 tab
- 弹框: 统一 max-h 滚动与长命令换行,修复内容溢出
This commit is contained in:
logan committed 2026-10-25 23:44:07 +08:00
1 parent 2d73661dd1
commit 9f7c522157
50 files changed
+1346 -149

No files matched your search

+46
View File
@@ -0,0 +1,46 @@
# 部署说明
本文档描述 `opsx-loki` 的两种部署方式,域名与 IP 均为脱敏示例:
- `opsx-loki.xxx.io` —— 平台 UI 域名
- `log.xxx.io` —— Loki 查询域名(Ingress)
- `192.168.x.x` —— 内网地址占位
## 架构
```
浏览器
│ HTTPS(WAF / SLB 终止)
▼
边缘 WAF ──► 主机 nginx(192.168.x.x)
│
├─ 主机部署:proxy_pass http://127.0.0.1:8081
└─ K8s 部署:proxy_pass http://<NodeIP>:30080
│
▼
Service opsx-loki:8080
│
▼
Deployment opsx-loki(1 副本)
│
┌────────────────┴────────────────┐
▼ ▼
PVC /app/data Loki Service log/loki:3100
(JSON DB、kubeconfig 加密) (日志存储:S3/OSS/COS/OBS)
```
## 两种方式的取舍
| | 主机 Docker | Kubernetes |
|---|---|---|
| 适用 | 单机、快速验证 | 多环境、统一调度 |
| 数据 | 本地卷 `/app/data` | PVC(默认 StorageClass) |
| 域名 | 主机 nginx 反代 `127.0.0.1:8081` | NodePort + nginx,或 ALB Ingress |
| 约束 | 单实例 | **1 副本 + Recreate**(JSON DB 单写者) |
## 文档索引
| 文档 | 内容 |
|---|---|
| [host-nginx.md](host-nginx.md) | 主机部署的 nginx 反代配置(含 WAF 真实 IP、白名单) |
| [kubernetes.md](kubernetes.md) | K8s 清单、Ingress(ALB)、PVC、Secret、升级 |