import{_ as n,c as a,o as s,a as t}from"./app.b8b795d4.js";const h='{"title":"\u4E00\u952E\u5B89\u88C5Agent","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u4E00\u952E\u5B89\u88C5Agent","slug":"\u4E00\u952E\u5B89\u88C5agent"},{"level":3,"title":"\u51C6\u5907\u5DE5\u4F5C","slug":"\u51C6\u5907\u5DE5\u4F5C"},{"level":3,"title":"\u5728 Linux \u4E2D\u4E00\u952E\u5B89\u88C5","slug":"\u5728-linux-\u4E2D\u4E00\u952E\u5B89\u88C5"},{"level":3,"title":"\u5728 Windows \u4E2D\u4E00\u952E\u5B89\u88C5","slug":"\u5728-windows-\u4E2D\u4E00\u952E\u5B89\u88C5"},{"level":2,"title":"\u5176\u4ED6\u65B9\u5F0F\u5B89\u88C5Agent","slug":"\u5176\u4ED6\u65B9\u5F0F\u5B89\u88C5agent"},{"level":3,"title":"\u5728 Linux \u4E2D\u5B89\u88C5Agent","slug":"\u5728-linux-\u4E2D\u5B89\u88C5agent"},{"level":3,"title":"\u5728 Windows \u4E2D\u5B89\u88C5Agent","slug":"\u5728-windows-\u4E2D\u5B89\u88C5agent"},{"level":3,"title":"\u5728 MacOS \u4E2D\u5B89\u88C5Agent","slug":"\u5728-macos-\u4E2D\u5B89\u88C5agent"},{"level":3,"title":"\u5728 OpenWRT \u4E2D\u5B89\u88C5Agent","slug":"\u5728-openwrt-\u4E2D\u5B89\u88C5agent"},{"level":2,"title":"\u81EA\u5B9A\u4E49Agent\u76D1\u63A7\u9879\u76EE","slug":"\u81EA\u5B9A\u4E49agent\u76D1\u63A7\u9879\u76EE"},{"level":2,"title":"FAQ","slug":"faq"},{"level":3,"title":"Agent \u6709 Docker \u955C\u50CF\u5417\uFF1F","slug":"agent-\u6709-docker-\u955C\u50CF\u5417\uFF1F"}],"relativePath":"guide/agent.md"}',e={},p=t(`
\u54EA\u5412\u76D1\u63A7\u7684\u88AB\u63A7\u7AEF\u670D\u52A1\u88AB\u79F0\u4E3AAgent\uFF0C\u672C\u6587\u6863\u5C06\u4ECB\u7ECD\u5982\u4F55\u5728\u88AB\u63A7\u7AEF\u670D\u52A1\u5668\u4E0A\u5B89\u88C5Agent\uFF0C\u5E76\u4E0EDashboard\u8FDE\u63A5
\u76EE\u524D\u54EA\u5412\u76D1\u63A7\u5DF2\u652F\u6301\u5728Windows\u548CLinux\u4E0A\u4E00\u952E\u5B89\u88C5Agent\uFF0C\u9075\u5FAA\u672C\u6587\u6863\u7684\u6B65\u9AA4\uFF0C\u4F60\u53EF\u4EE5\u5F88\u8F7B\u677E\u7684\u5728\u670D\u52A1\u5668\u4E0A\u90E8\u7F72\u5B83
\u4F60\u9700\u8981\u63D0\u524D\u5728\u7BA1\u7406\u9762\u677F\u4E2D\u8BBE\u7F6E\u597D\u901A\u4FE1\u57DF\u540D\uFF0C\u6B64\u57DF\u540D\u4E0D\u53EF\u4EE5\u63A5\u5165CDN\uFF0C\u8FD9\u91CC\u4EE5\u524D\u9762\u63D0\u5230\u8FC7\u7684\u793A\u4F8B\u901A\u4FE1\u57DF\u540D \u201Cdata.example.com\u201D \u6765\u505A\u6F14\u793A
\u8FDB\u5165\u540E\u53F0\u7BA1\u7406\u9762\u677F\uFF0C\u8F6C\u5230\u201C\u8BBE\u7F6E\u201D\u9875\uFF0C\u5728\u201C\u672A\u63A5\u5165CDN\u7684\u9762\u677F\u670D\u52A1\u5668\u57DF\u540D/IP\u201D\u9879\u4E2D\u586B\u5165\u901A\u4FE1\u57DF\u540D\uFF0C\u7136\u540E\u70B9\u51FB"\u4FDD\u5B58"
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh
\u5982\u679C\u4F60\u7684\u88AB\u63A7\u670D\u52A1\u5668\u4F4D\u4E8E\u4E2D\u56FD\u5927\u9646\uFF0C\u53EF\u4EE5\u4F7F\u7528\u955C\u50CF\uFF1A
curl -L https://jihulab.com/nezha/nezha/-/raw/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
\u672C\u8282\u5185\u5BB9\u6539\u7F16\u81EAMitsea Blog\uFF0C\u6539\u7F16\u5DF2\u83B7\u5F97\u539F\u4F5C\u8005\u6388\u6743
WARNING
\u5B89\u88C5\u8FC7\u7A0B\u4E2D\u5982\u63D0\u793A\u201CmacOS\u65E0\u6CD5\u9A8C\u8BC1\u6B64app\u201C\uFF0C\u8BF7\u524D\u5F80\u7CFB\u7EDF\u8BBE\u7F6E\u624B\u52A8\u5141\u8BB8\u7A0B\u5E8F\u8FD0\u884C
nezha_agent.plist
\u7684\u6587\u4EF6\u5E76\u4FDD\u5B58\uFF0C\u4FEE\u6539\u6587\u4EF6\u5185\u5BB9\u5982\u4E0B\uFF1A<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Disabled</key>
<false/>
<key>Label</key>
<string>nezha_agent</string>
<key>Program</key>
<string>\u5728\u8FD9\u91CC\u4FEE\u6539 Agent \u4E8C\u8FDB\u5236\u6587\u4EF6\u7684\u7684\u8DEF\u5F84\uFF0C\u5982\uFF1A/Users/123/Downloads/nezha-agent</string>
<key>ProgramArguments</key>
<array>
<string>\u5728\u8FD9\u91CC\u4FEE\u6539 Agent \u4E8C\u8FDB\u5236\u6587\u4EF6\u7684\u7684\u8DEF\u5F84\uFF0C\u540C\u4E0A</string>
<string>--password</string>
<string>\u901A\u4FE1\u5BC6\u94A5\uFF0C\u5982\uFF1A529664783eeb23cc25</string>
<string>--server</string>
<string>\u901A\u4FE1\u7F51\u5740\u548CRPC\u7AEF\u53E3\uFF0C\u5982:data.example.com:5555</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
launchctl load /Users/123/Desktop/nezha_agent.plist
launchctl start nezha_agent
launchctl list | grep nezha_agent
launchctl stop nezha_agent
launchctl remove nezha_agent
\u5982\u4F55\u4F7F \u65E7\u7248OpenWRT/LEDE \u81EA\u542F\u52A8
\u5982\u4F55\u4F7F \u65B0\u7248OpenWRT \u81EA\u542F\u52A8\uFF1F\u6765\u81EA @\u827E\u65AF\u5FB7\u65AF
/root
chmod +x /root/nezha-agent
\u8D4B\u4E88\u6267\u884C\u6743\u9650\uFF0C\u7136\u540E\u521B\u5EFA /etc/init.d/nezha-service
\uFF1A#!/bin/sh /etc/rc.common
START=99
USE_PROCD=1
start_service() {
procd_open_instance
procd_set_param command /root/nezha-agent -s \u9762\u677F\u901A\u4FE1\u5730\u5740:\u7AEF\u53E3 -p \u79D8\u94A5 -d
procd_set_param respawn
procd_close_instance
}
stop_service() {
killall nezha-agent
}
restart() {
stop
sleep 2
start
}
chmod +x /etc/init.d/nezha-service
\u8D4B\u4E88\u6267\u884C\u6743\u9650/etc/init.d/nezha-service enable && /etc/init.d/nezha-service start
/opt/nezha/agent/nezha-agent --edit-agent-config
\u6765\u9009\u62E9\u81EA\u5B9A\u4E49\u7684\u7F51\u5361\u548C\u5206\u533A\uFF0C\u7136\u540E\u91CD\u542F Agent \u5373\u53EF\u751F\u6548\u901A\u8FC7\u6267\u884C ./nezha-agent --help
\u67E5\u770B\u652F\u6301\u7684\u53C2\u6570\uFF0C\u5982\u679C\u4F60\u4F7F\u7528\u4E86\u4E00\u952E\u811A\u672C\u5B89\u88C5Agent\uFF0C\u53EF\u4EE5\u7F16\u8F91 /etc/systemd/system/nezha-agent.service
\uFF0C\u5728 ExecStart=
\u8FD9\u4E00\u884C\u7684\u672B\u5C3E\u52A0\u4E0A\u4EE5\u4E0B\u53C2\u6570
--report-delay
\u63A7\u5236\u7CFB\u7EDF\u4FE1\u606F\u4E0A\u62A5\u7684\u95F4\u9694\uFF0C\u9ED8\u8BA4\u4E3A 1 \u79D2\uFF0C\u53EF\u4EE5\u8BBE\u7F6E\u4E3A 3 \u6765\u8FDB\u4E00\u6B65\u964D\u4F4E agent \u7AEF\u7CFB\u7EDF\u8D44\u6E90\u5360\u7528\uFF08\u914D\u7F6E\u533A\u95F4 1-4\uFF09--skip-conn
\u4E0D\u76D1\u63A7\u8FDE\u63A5\u6570\uFF0C\u63A8\u8350 \u673A\u573A/\u8FDE\u63A5\u5BC6\u96C6\u578B\u670D\u52A1\u5668\u6216CPU\u5360\u7528\u8F83\u9AD8\u7684\u670D\u52A1\u5668\u8BBE\u7F6E--skip-procs
\u4E0D\u76D1\u63A7\u8FDB\u7A0B\u6570\uFF0C\u4E5F\u53EF\u4EE5\u964D\u4F4E agent \u5360\u7528--disable-auto-update
\u7981\u6B62 \u81EA\u52A8\u66F4\u65B0 Agent\uFF08\u5B89\u5168\u7279\u6027\uFF09--disable-force-update
\u7981\u6B62 \u5F3A\u5236\u66F4\u65B0 Agent\uFF08\u5B89\u5168\u7279\u6027\uFF09--disable-command-execute
\u7981\u6B62\u5728 Agent \u4E0A\u6267\u884C\u5B9A\u65F6\u4EFB\u52A1\u3001\u6253\u5F00\u5728\u7EBF\u7EC8\u7AEF\uFF08\u5B89\u5168\u7279\u6027\uFF09--tls
\u542F\u7528 SSL/TLS \u52A0\u5BC6\uFF08\u4F7F\u7528 nginx \u53CD\u5411\u4EE3\u7406 Agent \u7684 grpc \u8FDE\u63A5\uFF0C\u5E76\u4E14 nginx \u5F00\u542F SSL/TLS \u65F6\uFF0C\u9700\u8981\u542F\u7528\u8BE5\u9879\u914D\u7F6E\uFF09Agent \u76EE\u524D\u6CA1\u6709\u63A8\u51FA Docker \u955C\u50CF\u3002
Agent \u7684\u8BBE\u8BA1\u601D\u8DEF\u548C Dashboard \u76F8\u53CD\uFF0CDashboard \u8981\u5C3D\u53EF\u80FD\u4E0D\u5F71\u54CD\u5BBF\u4E3B\u673A\u5DE5\u4F5C\uFF0C\u4F46 Agent \u5219\u9700\u8981\u5728\u5BBF\u4E3B\u673A\u4E2D\u6267\u884C\u76D1\u63A7\u670D\u52A1\u548C\u8FD0\u884C\u547D\u4EE4\u3002
\u5C06 Agent \u653E\u5165\u5BB9\u5668\u4E2D\u786E\u5B9E\u53EF\u4EE5\u7EE7\u7EED\u6267\u884C\u76D1\u63A7\u4EFB\u52A1\uFF0C\u4F46 WebShell \u7B49\u529F\u80FD\u65E0\u6CD5\u6B63\u5E38\u8FD0\u884C\uFF0C\u56E0\u6B64\u4E0D\u63D0\u4F9B Docker \u955C\u50CF\u3002