deploy: 5547fdcd5a
This commit is contained in:
+9
-3
@@ -8,7 +8,7 @@
|
||||
<link rel="stylesheet" href="/assets/style.0b9f658b.css">
|
||||
<link rel="modulepreload" href="/assets/chunks/AlgoliaSearchBox.6e4b23ab.js">
|
||||
<link rel="modulepreload" href="/assets/app.457c27ae.js">
|
||||
<link rel="modulepreload" href="/assets/guide_q3.md.1b71e3fa.lean.js">
|
||||
<link rel="modulepreload" href="/assets/guide_q3.md.7d483bd4.lean.js">
|
||||
|
||||
<meta name="twitter:title" content="反向代理 gRPC 端口(支持 Cloudflare CDN) | 哪吒监控">
|
||||
<meta property="og:title" content="反向代理 gRPC 端口(支持 Cloudflare CDN) | 哪吒监控">
|
||||
@@ -27,9 +27,15 @@
|
||||
<span class="token directive"><span class="token keyword">location</span> /</span> <span class="token punctuation">{</span>
|
||||
<span class="token directive"><span class="token keyword">grpc_read_timeout</span> <span class="token number">300s</span></span><span class="token punctuation">;</span>
|
||||
<span class="token directive"><span class="token keyword">grpc_send_timeout</span> <span class="token number">300s</span></span><span class="token punctuation">;</span>
|
||||
<span class="token directive"><span class="token keyword">grpc_pass</span> grpc://localhost:5555</span><span class="token punctuation">;</span>
|
||||
<span class="token directive"><span class="token keyword">grpc_socket_keepalive</span> <span class="token boolean">on</span></span><span class="token punctuation">;</span>
|
||||
<span class="token directive"><span class="token keyword">grpc_pass</span> grpc://grpcservers</span><span class="token punctuation">;</span>
|
||||
<span class="token punctuation">}</span>
|
||||
<span class="token punctuation">}</span>
|
||||
|
||||
<span class="token directive"><span class="token keyword">upstream</span> grpcservers</span> <span class="token punctuation">{</span>
|
||||
<span class="token directive"><span class="token keyword">server</span> localhost:5555</span><span class="token punctuation">;</span>
|
||||
<span class="token directive"><span class="token keyword">keepalive</span> <span class="token number">1024</span></span><span class="token punctuation">;</span>
|
||||
<span class="token punctuation">}</span>
|
||||
</code></pre></div><ul><li>Caddy 配置</li></ul><div class="language-"><pre><code>data.example.com:443 { # 你的 Agent 连接 Dashboard 的域名
|
||||
reverse_proxy {
|
||||
to localhost:5555
|
||||
@@ -39,7 +45,7 @@
|
||||
}
|
||||
}
|
||||
</code></pre></div><p>Dashboard 面板端配置</p><ul><li>首先登录面板进入管理后台 打开设置页面,在 <code>未接入CDN的面板服务器域名/IP</code> 中填入上一步在 Nginx 或 Caddy 中配置的域名 比如 <code>data.example.com</code> ,并保存。</li><li>然后在面板服务器中,打开 /opt/nezha/dashboard/data/config.yaml 文件,将 <code>proxygrpcport</code> 修改为 Nginx 或 Caddy 监听的端口,比如上一步设置的 <code>443</code> ;因为我们在 Nginx 或 Caddy 中开启了 SSL/TLS,所以需要将 <code>tls</code> 设置为 <code>true</code> ;修改完成后重启面板。</li></ul><p>Agent 端配置</p><ul><li>登录面板管理后台,复制一键安装命令,在对应的服务器上面执行一键安装命令重新安装 agent 端即可。</li></ul><p>开启 Cloudflare CDN(可选)</p><p>根据 Cloudflare gRPC 的要求:gRPC 服务必须侦听 443 端口 且必须支持 TLS 和 HTTP/2。 所以如果需要开启 CDN,必须在配置 Nginx 或者 Caddy 反向代理 gRPC 时使用 443 端口,并配置证书(Caddy 会自动申请并配置证书)。</p><ul><li>登录 Cloudflare,选择使用的域名。打开 <code>网络</code> 选项将 <code>gRPC</code> 开关打开,打开 <code>DNS</code> 选项,找到 Nginx 或 Caddy 反代 gRPC 配置的域名的解析记录,打开橙色云启用 CDN。</li></ul></div></div><footer class="page-footer" data-v-7eddb2c4 data-v-07c132fc><div class="edit" data-v-07c132fc><div class="edit-link" data-v-07c132fc data-v-1ed99556><a class="link" href="https://github.com/nezhahq/nezhahq.github.io/edit/main/docs/guide/q3.md" target="_blank" rel="noopener noreferrer" data-v-1ed99556>在GitHub中编辑 <svg class="icon outbound icon" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewbox="0 0 100 100" width="15" height="15" data-v-1ed99556><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div></div><div class="updated" data-v-07c132fc><p class="last-updated" data-v-07c132fc data-v-abce3432><span class="prefix" data-v-abce3432>上次更新:</span><span class="datetime" data-v-abce3432></span></p></div></footer><div class="next-and-prev-link" data-v-7eddb2c4 data-v-38ede35f><div class="container" data-v-38ede35f><div class="prev" data-v-38ede35f><a class="link" href="/guide/q2" data-v-38ede35f><svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon icon-prev" data-v-38ede35f><path d="M19,11H7.4l5.3-5.3c0.4-0.4,0.4-1,0-1.4s-1-0.4-1.4,0l-7,7c-0.1,0.1-0.2,0.2-0.2,0.3c-0.1,0.2-0.1,0.5,0,0.8c0.1,0.1,0.1,0.2,0.2,0.3l7,7c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3c0.4-0.4,0.4-1,0-1.4L7.4,13H19c0.6,0,1-0.4,1-1S19.6,11,19,11z"></path></svg><span class="text" data-v-38ede35f>Agent 启动/上线 问题自检流程</span></a></div><div class="next" data-v-38ede35f><a class="link" href="/guide/q4" data-v-38ede35f><span class="text" data-v-38ede35f>实时通道断开/在线终端连接失败</span><svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon icon-next" data-v-38ede35f><path d="M19.9,12.4c0.1-0.2,0.1-0.5,0-0.8c-0.1-0.1-0.1-0.2-0.2-0.3l-7-7c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l5.3,5.3H5c-0.6,0-1,0.4-1,1s0.4,1,1,1h11.6l-5.3,5.3c-0.4,0.4-0.4,1,0,1.4c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3l7-7C19.8,12.6,19.9,12.5,19.9,12.4z"></path></svg></a></div></div></div><!--[--><!--]--></div></main></div><!----><!--]--></div>
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"case_case1.md\":\"aae6ce67\",\"case_case2.md\":\"21bc3d83\",\"case_index.md\":\"04195f4a\",\"developer_index.md\":\"11476340\",\"developer_l10n.md\":\"b0849891\",\"developer_theme.md\":\"7cd8ff5c\",\"en_us_case_case1.md\":\"112b48b6\",\"en_us_case_case2.md\":\"d7b9a616\",\"en_us_case_index.md\":\"41ebc23f\",\"en_us_developer_index.md\":\"3825874c\",\"en_us_developer_l10n.md\":\"8afe4c3a\",\"en_us_developer_theme.md\":\"abd732be\",\"en_us_guide_agent.md\":\"85b101e2\",\"en_us_guide_agentq.md\":\"ddff8420\",\"en_us_guide_api.md\":\"7775e30d\",\"en_us_guide_dashboard.md\":\"3fde53b5\",\"en_us_guide_dashboardq.md\":\"bc04f866\",\"en_us_guide_loginq.md\":\"3165c755\",\"en_us_guide_notifications.md\":\"135dd487\",\"en_us_guide_q2.md\":\"0ea280ac\",\"en_us_guide_q3.md\":\"23865207\",\"en_us_guide_q4.md\":\"601451a7\",\"en_us_guide_q5.md\":\"3d4c7115\",\"en_us_guide_q6.md\":\"1f71b9b2\",\"en_us_guide_servers.md\":\"740d0da3\",\"en_us_guide_services.md\":\"c67f0406\",\"en_us_guide_settings.md\":\"1a09e853\",\"en_us_guide_tasks.md\":\"1713f225\",\"en_us_index.md\":\"0159db53\",\"guide_agent.md\":\"0593529f\",\"guide_agentq.md\":\"f8c39e31\",\"guide_api.md\":\"1d9345cd\",\"guide_dashboard.md\":\"0627dae6\",\"guide_dashboardq.md\":\"707e7e2d\",\"guide_loginq.md\":\"c6342366\",\"guide_notifications.md\":\"f006b054\",\"guide_q1.md\":\"30c1b64e\",\"guide_q2.md\":\"3152c173\",\"guide_q3.md\":\"1b71e3fa\",\"guide_q4.md\":\"0b506117\",\"guide_q5.md\":\"c3b7cdb5\",\"guide_q6.md\":\"4d681011\",\"guide_servers.md\":\"410f9c13\",\"guide_services.md\":\"957570cc\",\"guide_settings.md\":\"f50de3a6\",\"guide_tasks.md\":\"9b69c453\",\"index.md\":\"cebe7fc1\"}")</script>
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"case_case1.md\":\"0c122eee\",\"case_case2.md\":\"72f608df\",\"case_index.md\":\"1bae0839\",\"developer_index.md\":\"4f39d663\",\"developer_l10n.md\":\"a1f9b718\",\"developer_theme.md\":\"e99236ab\",\"en_us_case_case1.md\":\"0b1f0924\",\"en_us_case_case2.md\":\"5deee952\",\"en_us_case_index.md\":\"c9cddef1\",\"en_us_developer_index.md\":\"3fb3dcbf\",\"en_us_developer_l10n.md\":\"ee8478dc\",\"en_us_developer_theme.md\":\"5e331152\",\"en_us_guide_agent.md\":\"c4c29fc0\",\"en_us_guide_agentq.md\":\"356eafb3\",\"en_us_guide_api.md\":\"fe715a81\",\"en_us_guide_dashboard.md\":\"a5d79bc9\",\"en_us_guide_dashboardq.md\":\"f33e0ba7\",\"en_us_guide_loginq.md\":\"c4323d76\",\"en_us_guide_notifications.md\":\"1d07b7b1\",\"en_us_guide_q2.md\":\"a4880b43\",\"en_us_guide_q3.md\":\"3d8d3a97\",\"en_us_guide_q4.md\":\"6a5aa82e\",\"en_us_guide_q5.md\":\"f03a32e6\",\"en_us_guide_q6.md\":\"65cc6b71\",\"en_us_guide_servers.md\":\"b9e6256a\",\"en_us_guide_services.md\":\"fb74bd46\",\"en_us_guide_settings.md\":\"9ed90521\",\"en_us_guide_tasks.md\":\"71a50fc0\",\"en_us_index.md\":\"b83368f2\",\"guide_agent.md\":\"7f6fff95\",\"guide_agentq.md\":\"444874a7\",\"guide_api.md\":\"09412a14\",\"guide_dashboard.md\":\"a6ea86e2\",\"guide_dashboardq.md\":\"97950d0b\",\"guide_loginq.md\":\"b4438748\",\"guide_notifications.md\":\"b3d8f8ef\",\"guide_q1.md\":\"d0e44822\",\"guide_q2.md\":\"b6f22b15\",\"guide_q3.md\":\"7d483bd4\",\"guide_q4.md\":\"34a6d71e\",\"guide_q5.md\":\"e2aeb238\",\"guide_q6.md\":\"389777d5\",\"guide_servers.md\":\"fbc8c14a\",\"guide_services.md\":\"cbb69a1e\",\"guide_settings.md\":\"b7804f57\",\"guide_tasks.md\":\"139b31bb\",\"index.md\":\"78928b91\"}")</script>
|
||||
<script type="module" async src="/assets/app.457c27ae.js"></script>
|
||||
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user