ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

如何在不丢失配置和数据的前提下切换 Netdata 安装类型与发布通道?

如何在不丢失配置和数据的前提下切换 Netdata 安装类型与发布通道? 如何在不丢失配置和数据的前提下切换 Netdata 安装类型与发布通道【免费下载链接】netdataThe fastest path to AI-powered full stack observability, even for lean teams.项目地址: https://gitcode.com/GitHub_Trending/ne/netdataNetdata 提供了多种安装类型原生包、静态构建、本地构建、Docker 容器和两条发布通道stable 与 nightly。当你需要更换其中任何一项时核心风险是配置文件、指标数据和节点身份claim token、API key丢失。本文基于 切换安装类型与发布通道指南 和 Agent 备份与恢复文档给出一条连续的备份—切换—恢复—验证操作路径让切换后你的配置和数据保持完整。第一步备份配置与数据所有切换操作的前置动作Netdata 的数据分三类位置如下见备份文档中的数据表数据类型说明位置Agent 配置控制 Agent 行为的配置文件/etc/netdataMetrics数据库文件/var/cache/netdataIdentityclaim token、API key 等/var/lib/netdata具体路径随安装方式不同而变化官方文档给出的备份范围是原生包、静态构建、本地构建/etc/netdata、/var/cache/netdata、/var/lib/netdata静态构建/opt/netdata/etc/netdata、/opt/netdata/var/cache/netdata、/opt/netdata/var/lib/netdataDocker 容器从容器内部备份/etc/netdata、/var/cache/netdata、/var/lib/netdata。:::warning 无论哪种安装类型都必须从备份中排除.environment和.install-type两个文件例如/etc/netdata/.environment、/etc/netdata/.install-type。文档明确指出把这两个文件从一个安装类型复制到另一个安装类型会破坏后续更新。 :::备份操作建议先停止 Agent再打包数据库文件备份文档推荐顺序确认目录路径 → 停止 Agent → 打包 → 重启sudo systemctl stop netdata sudo tar -cvpzf netdata_backup.tar.gz /etc/netdata/ /var/cache/netdata /var/lib/netdata打包命令需要以 root 或 netdata 用户身份运行才能访问全部文件。备份完成后再启动 Agent 继续正常监控。场景一切换安装类型原生包 / 静态构建 / 本地构建之间切换主路径使用 kickstart 脚本的干净重装模式wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh sh /tmp/netdata-kickstart.sh --reinstall-clean [OPTIONS_FOR_DESIRED_INSTALL_TYPE][OPTIONS_FOR_DESIRED_INSTALL_TYPE]是源文档中的占位符指你希望目标安装方式/发布通道对应的 kickstart 参数如发布通道选项参数含义见 kickstart.sh 文档的参数表。该命令会先卸载现有安装再安装需要 root 权限执行期间 Netdata 不可用。完成后把备份内容恢复到新安装对应的路径原生包/本地构建恢复到/etc/netdata等系统路径静态构建恢复到/opt/netdata/...对应路径。从厂商打包的原生安装切换可选分支如果系统通过自己的软件源附带 Netdata文档举例 XCP-ng 和 XOA这些安装没有.install-type文件kickstart.sh不识别它们直接用它更新、重装或卸载可能失败甚至把系统弄坏。这类系统必须先手动处理停止 Agentsudo systemctl stop netdata用系统包管理器移除现有包例如 XCP-ngRPM 系sudo yum remove netdata或sudo dnf remove netdataXOADebian 系sudo apt remove netdata按第一步的方法备份配置与数据运行 kickstart 脚本安装sh /tmp/netdata-kickstart.sh [OPTIONS_FOR_DESIRED_INSTALL_TYPE]恢复备份到新安装路径切换到 Docker 容器可选分支wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh sh /tmp/netdata-kickstart.sh --uninstall--uninstall会完全卸载现有 Netdata。之后启动 Netdata 的 Docker 容器把备份内容恢复到容器内部对应路径容器内路径与宿主机原生包安装的路径一致最后重启容器使恢复的配置生效。从 Docker 切换到其他安装类型可选分支从容器内部备份配置与数据 → 删除容器 → 运行 kickstart 脚本安装 → 恢复备份。删除容器本身不会删除持久卷中的数据但官方建议的恢复路径就是容器内备份后恢复按此执行最稳妥。场景二切换发布通道stable ↔ nightly切换通道不需要更换安装方式只需按当前安装类型执行对应命令。静态构建与本地构建直接带--reinstall和通道选项重跑 kickstart# 切换到 stable wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh sh /tmp/netdata-kickstart.sh --reinstall --stable-channel# 切换到 nightly wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh sh /tmp/netdata-kickstart.sh --reinstall --nightly-channel原生包Debian/Ubuntu——从 nightly 切到 stable# Install stable repository (automatically removes nightly repo) sudo apt install netdata-repo sudo apt update sudo apt remove netdata sudo apt install netdata从 stable 切到 nightly 只需把仓库包换成netdata-repo-edge# Install nightly repository (automatically removes stable repo) sudo apt install netdata-repo-edge sudo apt update sudo apt remove netdata sudo apt install netdataFedora/RHEL# nightly → stable sudo dnf install --allowerasing netdata-repo sudo dnf remove netdata sudo dnf install --refresh netdata# stable → nightly sudo dnf install --allowerasing netdata-repo-edge sudo dnf remove netdata sudo dnf install --refresh netdataopenSUSE# nightly → stable sudo zypper install --allowerasing netdata-repo sudo zypper refresh sudo zypper remove netdata sudo zypper install netdata# stable → nightly sudo zypper install --allowerasing netdata-repo-edge sudo zypper refresh sudo zypper remove netdata sudo zypper install netdata仓库配置包netdata-repo/netdata-repo-edge会自动移除另一通道的仓库以防止冲突这是官方文档明确说明的行为。Docker 容器Docker 容器不会自动更新切换通道即拉取新镜像 重建容器只是把镜像 tag 换成目标通道对应的stable 用stabletagnightly 用edgetaglatesttag 不指定时默认使用可能指向 nightly 构建见 Docker 文档的 tag 表docker pull netdata/netdata:stable docker stop netdata docker rm netdata # 用你最初的 docker run 命令重建容器docker stop docker rm只删除容器官方文档说明netdataconfig、netdatalib、netdatacache三个持久卷会在容器重建间保留你的配置与指标前提是当初按推荐方式挂载这三个卷启动的容器。验证切换结果非 Docker 安装——两种检查方式见 服务控制文档sudo systemctl status netdata sudo netdatacli pingnetdatacli ping在 Agent 就绪时输出pong且退出码为 0初始化中退出码为 1不可达时退出码为 255。也可以用浏览器打开http://NODE:19999或运行curl http://NODE:19999/api/v1/infoNODE替换为你的 Agent IP 或主机名确认可访问。Docker 容器——确认运行的版本信息docker exec netdata netdata -W buildinfo如果 Netdata Cloud 出现Critical update通知说明 Agent 版本低于 Cloud 正常功能所需的最低版本nightly 构建即使最新也可能触发该通知切换到stabletag 可解决Docker 文档明确给出此说明。限制与注意事项.environment与.install-type必须排除在备份之外这是所有安装类型切换的共同红线违反会破坏更新机制。恢复数据库文件前备份恢复文档要求先确保 Metrics 目录为空即执行sudo rm -Rf /var/cache/netdata。这是删除命令会清空该目录下的指标数据库文件仅在准备恢复数据库文件且已持有完整备份的前提下执行。厂商打包的原生安装XCP-ng/XOA 类不要交给 kickstart 直接处理必须先用系统包管理器移除。切换过程中的停止、重启会造成指标采集的短暂空档这是重启 Agent 的固有现象服务控制文档已提示。两条通道的支持策略不同见 发布通道说明stable 按发布节奏提供 bug 修复与安全更新历史配置语义和数据受更新版本支持nightly 连续获得修复与新特性但未发布功能的配置和数据可能在 nightly 之间发生变化。若安装脚本下载后需要校验kickstart 文档提供了完整性检查方法注意其中包含构建期模板变量需以文档最新发布的值为准生产环境建议先校验再执行。完成上述任一路径后只要netdatacli ping返回pong或容器buildinfo输出对应通道版本、/etc/netdata或/opt/netdata/etc/netdata、容器内路径中的配置与你备份的内容一致切换即完成。【免费下载链接】netdataThe fastest path to AI-powered full stack observability, even for lean teams.项目地址: https://gitcode.com/GitHub_Trending/ne/netdata创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表