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
+98
View File
@@ -0,0 +1,98 @@
---
- name: 重装 Nezha Agent(卸载旧版本并安装新版本)
hosts: all
become: yes
vars:
# Nezha 服务端地址(host:port
nz_server: "dash.miner.vvvo.net:443"
# 是否启用 TLS
nz_tls: true
# 客户端密钥(必填,建议通过 -e 或 vars 文件传入,勿硬编码到仓库)
nz_client_secret: ""
# 安装脚本 URL
install_script_url: "https://raw.githubusercontent.com/wangdefaa/nezha-agent/refs/heads/main/script/install.sh"
# 服务与路径配置
service_name: "nezha-agent.service"
service_file: "/etc/systemd/system/nezha-agent.service"
install_dir: "/opt/nezha"
script_path: "/tmp/nezha-agent.sh"
tasks:
# ---------- 参数校验 ----------
- name: 验证必填参数
ansible.builtin.assert:
that:
- nz_client_secret | length > 0
fail_msg: "参数 nz_client_secret 不能为空"
success_msg: "参数验证通过"
# ---------- 卸载旧版本 ----------
- name: 检查服务单元文件是否存在
ansible.builtin.stat:
path: "{{ service_file }}"
register: service_file_stat
- name: 停止并禁用 Nezha Agent 服务
ansible.builtin.systemd:
name: "{{ service_name }}"
state: stopped
enabled: no
when: service_file_stat.stat.exists
- name: 删除服务单元文件
ansible.builtin.file:
path: "{{ service_file }}"
state: absent
register: unit_removed
- name: 重新加载 systemd 配置
ansible.builtin.systemd:
daemon_reload: yes
when: unit_removed.changed
- name: 删除安装目录
ansible.builtin.file:
path: "{{ install_dir }}"
state: absent
# ---------- 安装新版本 ----------
- name: 下载安装脚本
ansible.builtin.get_url:
url: "{{ install_script_url }}"
dest: "{{ script_path }}"
mode: '0755'
force: yes
- name: 执行安装脚本
ansible.builtin.shell: "bash {{ script_path }}"
args:
executable: /bin/bash
environment:
NZ_SERVER: "{{ nz_server }}"
NZ_TLS: "{{ nz_tls | lower }}"
NZ_CLIENT_SECRET: "{{ nz_client_secret }}"
register: install_output
- name: 显示安装结果
ansible.builtin.debug:
var: install_output.stdout_lines
- name: 清理临时脚本
ansible.builtin.file:
path: "{{ script_path }}"
state: absent
# ---------- 验证 ----------
- name: 验证 Nezha Agent 服务状态
ansible.builtin.systemd:
name: "{{ service_name }}"
register: service_status
- name: 显示服务状态
ansible.builtin.debug:
msg: "Nezha Agent 服务状态: {{ service_status.status.ActiveState }}"