Remove outdated guides and references related to Ansible best practices, Gitea repository configuration, journald management, and XXXigCC deployment. Introduce a new playbook for reinstalling Nezha Agent, ensuring proper parameter validation and service management. Update documentation to reflect the latest practices and remove deprecated content.

This commit is contained in:
2026-06-29 15:38:00 +08:00
parent 31da18eca6
commit 8f03780bfb
46 changed files with 183 additions and 2560 deletions
-93
View File
@@ -1,93 +0,0 @@
# Examples - 示例文件目录
本目录包含各种 Ansible Playbook 的示例配置文件。
## 📁 文件说明
### Inventory 示例
- **[inventory.example.ini](inventory.example.ini)** - Ansible inventory 配置示例
- 单服务器和多服务器配置
- 不同认证方式示例
- 组变量配置示例
### 变量文件示例
- **[nezha_vars.example.yml](nezha_vars.example.yml)** - Nezha Agent 更新配置变量
- **[xxxigcc_vars.example.yml](xxxigcc_vars.example.yml)** - XXXigCC 安装配置变量
- **[journald_vars.example.yml](journald_vars.example.yml)** - Journald 日志配置变量
## 🚀 使用方法
### 1. Inventory 文件
```bash
# 复制示例文件
cp examples/inventory.example.ini inventory.ini
# 编辑文件,填入你的服务器信息
vim inventory.ini
# 测试连接
ansible all -i inventory.ini -m ping
```
### 2. 变量文件
```bash
# 复制相应的示例文件
cp examples/nezha_vars.example.yml nezha_vars.yml
# 编辑文件,填入实际配置
vim nezha_vars.yml
# 使用变量文件执行 playbook
ansible-playbook nezha_update_secret.yml \
-i inventory.ini \
-e @nezha_vars.yml
```
### 3. 直接命令行传参
不使用变量文件,直接在命令行传递参数:
```bash
ansible-playbook nezha_update_secret.yml \
-i inventory.ini \
-e "client_secret=YourNewSecret"
```
## 📋 最佳实践
1. **不要提交实际配置到版本控制**
-`inventory.ini``*_vars.yml` 添加到 `.gitignore`
- 只提交 `.example` 示例文件
2. **使用 Ansible Vault 保护敏感信息**
```bash
# 加密变量文件
ansible-vault encrypt nezha_vars.yml
# 使用加密文件
ansible-playbook nezha_update_secret.yml \
-i inventory.ini \
-e @nezha_vars.yml \
--ask-vault-pass
```
3. **变量文件命名规范**
- 开发环境: `vars.dev.yml`
- 测试环境: `vars.test.yml`
- 生产环境: `vars.prod.yml`
## 🔗 相关文档
- [Nezha Agent 更新文档](../docs/nezha_update_secret_README.md)
- [Nezha Agent 快速开始](../docs/QUICKSTART_nezha.md)
- [项目主 README](../README.md)
## 💡 提示
- 所有 `.example` 文件都包含详细的注释说明
- 复制示例文件时,记得去掉 `.example` 后缀
- 根据实际需求修改示例文件中的值
@@ -0,0 +1,9 @@
# Gitea APT 仓库配置变量示例
# 使用方法: ansible-playbook gitea_repo_setup.yaml -i inventory.ini -e @gitea_repo_setup_vars.yml
# 可选参数:Gitea 仓库地址(默认值如下)
repo_url: "https://gitea.bcde.io"
# 可选参数:仓库所属用户/组织(默认值如下)
# 同时决定软件源文件名与 GPG 密钥文件名
repo_owner: "wangdefa"
-35
View File
@@ -1,35 +0,0 @@
# Ansible Inventory 示例文件
# 复制此文件为 inventory.ini 并修改为你的实际服务器信息
[nezha_agents]
# 单个服务器示例
server1.example.com ansible_host=192.168.1.10 ansible_user=root
# 多个服务器
server2.example.com ansible_host=192.168.1.11 ansible_user=admin ansible_become=yes
server3.example.com ansible_host=192.168.1.12 ansible_user=admin ansible_become=yes
# 使用不同的 SSH 端口
server4.example.com ansible_host=192.168.1.13 ansible_port=2222 ansible_user=root
[nezha_agents:vars]
# 组级别的变量
ansible_python_interpreter=/usr/bin/python3
# 如果使用 SSH 密钥
# ansible_ssh_private_key_file=~/.ssh/id_rsa
# 测试环境
[test_servers]
test1.example.com ansible_host=192.168.10.10
# 生产环境
[prod_servers]
prod1.example.com ansible_host=192.168.20.10
prod2.example.com ansible_host=192.168.20.11
prod3.example.com ansible_host=192.168.20.12
# 所有服务器
[all:children]
nezha_agents
test_servers
prod_servers
@@ -1,20 +1,17 @@
# Journald 配置变量示例
# 使用方法: ansible-playbook journald_configure.yml -i inventory.ini -e @journald_vars.yml
# systemd-journald 配置变量示例
# 使用方法: ansible-playbook journald_configure.yml -i inventory.ini -e @journald_configure_vars.yml
# Journald 配置参数
# 可选参数:journald 配置项(默认值如下)
journald_config:
# 限制日志最大使用空间(所有服务总和)
system_max_use: "500M"
# 单个日志文件最大大小
system_max_file_size: "100M"
# 保留日志的时间
max_retention_sec: "7day"
# 限制单个服务的日志速率(防止日志炸弹)
rate_limit_interval_sec: "30s"
rate_limit_burst: "10000"
# 是否备份原有配置
# 可选参数:部署前是否备份原有 journald.conf(默认 true
backup_journald: true
+14
View File
@@ -0,0 +1,14 @@
# Nezha Agent 重装配置变量示例
# 使用方法: ansible-playbook nezha_reinstall.yml -i inventory.ini -e @nezha_reinstall_vars.yml
# 必填参数:客户端密钥
nz_client_secret: "your_client_secret_here"
# 可选参数:Nezha 服务端地址(默认值如下)
nz_server: "dash.miner.vvvo.net:443"
# 可选参数:是否启用 TLS(默认 true)
nz_tls: true
# 可选参数:安装脚本 URL(默认值如下)
# install_script_url: "https://raw.githubusercontent.com/wangdefaa/nezha-agent/refs/heads/main/script/install.sh"
-17
View File
@@ -1,17 +0,0 @@
# Nezha Agent 更新配置变量示例
# 使用方法: ansible-playbook nezha_update_secret.yml -i inventory.ini -e @nezha_vars.yml
# 必填参数:新的 client_secret 值
client_secret: "HWzBMgbtWbSHdTyTVyh5U8bu3JhPmStw"
# 可选参数:旧的 client_secret 值(用于安全验证)
# 如果提供此参数,将验证配置文件中的旧值是否匹配
# 如果不匹配,更新将失败,避免误操作
# 留空或删除此行则强制更新,不进行验证
old_client_secret: ""
# 可选参数:配置文件路径(默认值如下)
# config_file: "/opt/nezha/agent/config.yml"
# 可选参数:服务名称(默认值如下)
# service_name: "nezha-agent.service"
+19
View File
@@ -0,0 +1,19 @@
# XXXig 安装配置变量示例
# 使用方法: ansible-playbook xxxig_install.yaml -i inventory.ini -e @xxxig_install_vars.yml
# 必填参数:矿池地址
pool_url: "stratum+tcp://pool.example.com:3333"
# 必填参数:CC 控制端地址与令牌(启用 enable_cc 时必填)
cc_url: "cc.example.com:443"
cc_token: "your-cc-token-here"
# 可选参数:功能开关(默认均为 true)
enable_cc: true # 启用 CC 控制端连接
enable_tls: true # 矿池连接启用 TLS
enable_cc_tls: true # CC 连接启用 TLS
enable_keepalive: true # 启用 keepalive
enable_1gb_pages: true # 启用 1GB 大页内存
# 可选参数:安装脚本 URL(默认值如下)
# install_script_url: "https://gitea.bcde.io/wangdefa/xxxig/raw/branch/main/script/install.deb.sh"
+8
View File
@@ -0,0 +1,8 @@
# XXXig 更新配置变量示例
# 使用方法: ansible-playbook xxxig_update.yaml -i inventory.ini -e @xxxig_update_vars.yml
# 可选参数:软件包名称(默认值如下)
package_name: "xxxig"
# 可选参数:服务名称(默认值如下)
service_name: "xxxig-daemon.service"
@@ -1,19 +0,0 @@
# XXXigCC Pool URL 更新配置变量示例
# 使用方法: ansible-playbook xxxigcc_update_pool_url.yaml -i inventory.ini -e @xxxigcc_update_pool_url_vars.yml
# 必填参数
new_url: "xxxigcc-proxy.ca.vvvo.net:8443"
# 可选参数
# 如果提供此参数,只有当前 URL 等于 old_url 时才会执行更新
# 如果不提供,则无条件更新
# old_url: "old-proxy.example.com:8443"
# 配置文件路径(一般不需要修改)
# config_file: "/etc/xxxigcc/config.json"
# 日志目录路径(一般不需要修改)
# log_dir: "/var/log/xxxigcc"
# 服务名称(一般不需要修改)
# service_name: "xxxigcc-daemon.service"
-17
View File
@@ -1,17 +0,0 @@
# XXXigCC 安装配置变量示例
# 使用方法: ansible-playbook xxxigcc_install.yaml -i inventory.ini -e @xxxigcc_vars.yml
# 必填参数
pool_url: "stratum+tcp://pool.example.com:3333"
cc_url: "https://control.example.com"
cc_token: "your-control-center-token"
# 可选参数(布尔值)
enable_cc: true
enable_tls: true
enable_cc_tls: true
enable_keepalive: true
enable_1gb_pages: true
# 脚本URL(一般不需要修改)
# install_script_url: "https://gitea.bcde.io/wangdefa/xxxigcc/raw/branch/main/script/install.deb.sh"