nezha/README.md
2020-11-09 12:02:06 +08:00

158 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 哪吒面板
阶段: *alpha*
服务期状态监控,被动接收(非 node-exporter 那种主动拉取的方式。)
## 系统设计
C/S 采用 gRPC 通信,客户端通过添加主机生成的单独 Token 上报监控信息。因为不会做成多用户的,上报信息会储存到内存中,暂不提供历史数据统计。
- 首次连接上报基本信息系统、CPU基本信息后面管理员可从客户端主动拉取更新。
- 监控上报:每隔 3s 向服务器上报系统信息
## 部署指南
### 控制面板 + 节点一键启动
1. 创建一个文件夹
```shell
mkdir nezha
```
2. 进入文件夹并创建 `docker-compose.yaml` 文件
```shell
cd nezha && nano docker-compose.yaml
```
将以下内容粘贴进去,注意查看 `environment` 中的几项配置。ID、密钥是在管理面板添加服务器之后才有的不是你的 GitHub ID。
```yaml
version: "3.3"
services:
dashboard:
image: docker.pkg.github.com/p14yground/nezha/dashboard
restart: always
volumes:
- ./data:/dashboard/data
ports:
- 8008:80
- 5555:5555
agent:
image: docker.pkg.github.com/p14yground/nezha/agent
restart: always
depends_on:
- dashboard
environment:
- ID=1 #节点ID,启动后在管理后台添加后显示
- SECRET=secret #节点密钥,启动后在管理后台添加后显示
- SERVER=ops.naibahq.com:5555 #服务器RPC端口
- DEBUG=false #服务器地址使用IP时设置为true
volumes:
- /proc:/agent/host/proc:ro
- /sys:/agent/host/sys:ro
- /etc:/agent/host/etc:ro
- /var:/agent/host/var:ro
- /run:/agent/host/run:ro
- /dev:/agent/host/dev:ro
```
3. 创建控制面板配置文件
```shell
mkdir data && nano config.yaml
```
将以下内容粘贴进去
```yaml
debug: true
httpport: 80
github:
admin: # 多管理员
- 1 #管理员 GitHub ID复制自己GitHub头像图片地址/[ID].png
- 2
clientid: GitHub Oauth App clientID # 在 https://github.com/settings/developers 创建,无需审核 Callback 填 http(s)://域名或IP/oauth2/callback
clientsecret: client secret
site:
brand: 站点标题
cookiename: tulong #浏览器 Cookie 字段名,可不改
```
4. 启动管理面板
```shell
docker-compose up -d
```
5. 更新,可以使用下方的命令,或者配置 **WatchTower** 自动更新所有容器
```shell
docker-compose pull && docker-compose up -d
```
6. *agent* 配置:登入你的管理面板添加服务器,把节点的 ID、密钥 编辑进 `docker-compose.yaml` 文件中,然后重启 agent。
```shell
docker-compose restart agent
```
### 单节点部署
1. 登入你的管理面板添加服务器,把节点的 ID、密钥 记录下来,下面会用到。
2. 创建一个文件夹
```shell
mkdir nezha
```
3. 进入文件夹并创建 `docker-compose.yaml` 文件,将 ID、密钥 编辑进去。
```shell
cd nezha && nano docker-compose.yaml
```
将以下内容粘贴进去ID、密钥是在管理面板添加服务器之后才有的不是你的 GitHub ID。
```yaml
version: "3.3"
services:
agent:
image: docker.pkg.github.com/p14yground/nezha/agent
restart: always
environment:
- ID=1 #节点ID,启动后在管理后台添加后显示
- SECRET=secret #节点密钥,启动后在管理后台添加后显示
- SERVER=ops.naibahq.com:5555 #服务器RPC端口
- DEBUG=false #服务器地址使用IP时设置为true
volumes:
- /proc:/agent/host/proc:ro
- /sys:/agent/host/sys:ro
- /etc:/agent/host/etc:ro
- /var:/agent/host/var:ro
- /run:/agent/host/run:ro
- /dev:/agent/host/dev:ro
```
4. 启动
```shell
docker-compose up -d
```
5. 更新,可以使用下方的命令,或者配置 **WatchTower** 自动更新所有容器
```shell
docker-compose pull && docker-compose up -d
```
**Windows、MacOS、Andorid 等也可监控,需要参照教程文章里面的文章编译 agent 并启动。**
## 教程文章
- [哪吒面板:小鸡们的最佳探针](https://www.zhujizixun.com/2843.html)*(已过时)*