| import{_ as n,c as a,b as e,o as l}from"./app-BWhNjvfs.js";const o={};function p(t,s){return l(),a("div",null,s[0]||(s[0]=[e(`<h1 id="health-check-tool" tabindex="-1"><a class="header-anchor" href="#health-check-tool"><span>Health Check Tool</span></a></h1><h2 id="_1-overview" tabindex="-1"><a class="header-anchor" href="#_1-overview"><span>1. Overview</span></a></h2><p>The IoTDB Health Check Tool is designed to inspect the runtime environment of IoTDB nodes. It assists users in verifying the node's environment both before deployment and during operation, providing detailed inspection reports.</p><blockquote><p>IoTDB version requirement: Must not be lower than v1.3.2</p></blockquote><h2 id="_2-prerequisites" tabindex="-1"><a class="header-anchor" href="#_2-prerequisites"><span>2. Prerequisites</span></a></h2><p>Linux Systems</p><ul><li><code>nc</code> (netcat) tool: Installed by default; user must have execution permissions.</li><li><code>lsof</code> or <code>netstat</code>: At least one must be installed; user must have execution permissions.</li></ul><blockquote><p>To verify tool installation:</p><p>Check <code>nc</code>: <code>nc -h</code></p><p>Check <code>lsof</code>: <code>lsof -v</code></p></blockquote><p>Windows Systems</p><ul><li>PowerShell: Enabled by default.</li></ul><h2 id="_3-inspection-items" tabindex="-1"><a class="header-anchor" href="#_3-inspection-items"><span>3. Inspection Items</span></a></h2><ul><li>Check port occupancy on the node's server (Windows/Linux).</li><li>Verify port connectivity between the current node and other cluster nodes (Windows/Linux).</li><li>Check JDK installation (JAVA_HOME) (Windows/Linux).</li><li>Inspect system memory allocation and IoTDB memory configuration (Windows/Linux).</li><li>Validate directory access permissions (Windows/Linux).</li><li>Ensure the system's maximum number of open files meets requirements (≥ 65535) (Linux only).</li><li>Confirm swap is disabled (Windows/Linux).</li></ul><h2 id="_4-usage-instructions" tabindex="-1"><a class="header-anchor" href="#_4-usage-instructions"><span>4. Usage Instructions</span></a></h2><h3 id="_4-1-command-format" tabindex="-1"><a class="header-anchor" href="#_4-1-command-format"><span>4.1 Command Format</span></a></h3><div class="language-bash line-numbers-mode" data-highlighter="shiki" data-ext="bash" data-title="bash" style="background-color:#282c34;color:#abb2bf;"><pre class="shiki one-dark-pro vp-code"><code><span class="line"><span style="color:#61AFEF;">health_check.sh/health_check.bat</span><span style="color:#D19A66;"> -ips</span><span style="color:#ABB2BF;"> <</span><span style="color:#98C379;">Remote_IP+Port</span><span style="color:#ABB2BF;">s> </span><span style="color:#D19A66;">-o</span><span style="color:#ABB2BF;"> <</span><span style="color:#98C379;">all</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">default</span><span style="color:#ABB2BF;">)</span><span style="color:#98C379;">/remote/loca</span><span style="color:#ABB2BF;">l></span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="_4-2-parameter-descriptions" tabindex="-1"><a class="header-anchor" href="#_4-2-parameter-descriptions"><span>4.2 Parameter Descriptions</span></a></h3><table><thead><tr><th><strong>Parameter</strong></th><th><strong>Description</strong></th><th><strong>Required</strong></th></tr></thead><tbody><tr><td><code>-ips</code></td><td>Remote server IPs and ports. Supports multiple servers. Format: <code>ip port1 port2, ip2 port2-1 port2-2</code></td><td>Optional</td></tr><tr><td><code>-o</code></td><td>Scope of check: <code>local</code> (local machine), <code>remote</code> (remote server ports), <code>all</code> (both). Default: <code>all</code></td><td>Optional</td></tr></tbody></table><h2 id="_5-usage-examples" tabindex="-1"><a class="header-anchor" href="#_5-usage-examples"><span>5. Usage Examples</span></a></h2><h3 id="_5-1-example-1-check-all" tabindex="-1"><a class="header-anchor" href="#_5-1-example-1-check-all"><span>5.1 Example 1: Check All</span></a></h3><div class="language-bash line-numbers-mode" data-highlighter="shiki" data-ext="bash" data-title="bash" style="background-color:#282c34;color:#abb2bf;"><pre class="shiki one-dark-pro vp-code"><code><span class="line"><span style="color:#61AFEF;"> health_check.sh/health_check.bat</span><span style="color:#D19A66;"> -ips</span><span style="color:#D19A66;"> 172.20.31.19</span><span style="color:#D19A66;"> 6667</span><span style="color:#98C379;"> 18080,10.0.6.230</span><span style="color:#D19A66;"> 10311</span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>Output:</p><div class="language-bash line-numbers-mode" data-highlighter="shiki" data-ext="bash" data-title="bash" style="background-color:#282c34;color:#abb2bf;"><pre class="shiki one-dark-pro vp-code"><code><span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Installation</span><span style="color:#98C379;"> Environment</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">JDK</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> JDK</span><span style="color:#98C379;"> Version</span><span style="color:#ABB2BF;"> ></span><span style="color:#98C379;">=</span><span style="color:#D19A66;">1.8</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#98C379;"> JDK</span><span style="color:#98C379;"> Version</span><span style="color:#D19A66;"> 11.0.21</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Installation</span><span style="color:#98C379;"> Environment</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Memory</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> Allocate</span><span style="color:#98C379;"> sufficient</span><span style="color:#98C379;"> memory</span><span style="color:#98C379;"> for</span><span style="color:#98C379;"> IoTDB</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#98C379;"> Total</span><span style="color:#98C379;"> Memory</span><span style="color:#98C379;"> 7.8Gi,</span><span style="color:#D19A66;"> 2.33</span><span style="color:#98C379;"> G</span><span style="color:#98C379;"> allocated</span><span style="color:#98C379;"> to</span><span style="color:#98C379;"> IoTDB</span><span style="color:#98C379;"> ConfigNode,</span><span style="color:#D19A66;"> 3.88</span><span style="color:#98C379;"> G</span><span style="color:#98C379;"> allocated</span><span style="color:#98C379;"> to</span><span style="color:#98C379;"> IoTDB</span><span style="color:#98C379;"> DataNode</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Installation</span><span style="color:#98C379;"> Environment</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Directory</span><span style="color:#98C379;"> Access</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> IoTDB</span><span style="color:#98C379;"> needs</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permissions</span><span style="color:#98C379;"> for</span><span style="color:#98C379;"> data/datanode/data,</span><span style="color:#98C379;"> data/datanode/consensus,</span><span style="color:#98C379;"> data/datanode/system,</span><span style="color:#98C379;"> data/datanode/wal,</span><span style="color:#98C379;"> data/confignode/system,</span><span style="color:#98C379;"> data/confignode/consensus,</span><span style="color:#98C379;"> ext/pipe,</span><span style="color:#98C379;"> ext/udf,</span><span style="color:#98C379;"> ext/trigger.</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/datanode/data</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/datanode/consensus</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/datanode/system</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/datanode/wal</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/confignode/system</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/confignode/consensus</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">ext/pipe</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">ext/udf</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">ext/trigger</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Network</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Local</span><span style="color:#98C379;"> Port</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> Ports</span><span style="color:#98C379;"> 16668,</span><span style="color:#98C379;"> 10730,</span><span style="color:#98C379;"> 11742,</span><span style="color:#98C379;"> 10750,</span><span style="color:#98C379;"> 10760,</span><span style="color:#98C379;"> 10710,</span><span style="color:#D19A66;"> 10720</span><span style="color:#98C379;"> must</span><span style="color:#98C379;"> be</span><span style="color:#98C379;"> unoccupied</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span></span> |
| <span class="line"><span style="color:#61AFEF;">Ports</span><span style="color:#98C379;"> 16668,</span><span style="color:#98C379;"> 10730,</span><span style="color:#98C379;"> 11742,</span><span style="color:#98C379;"> 10750,</span><span style="color:#98C379;"> 10760,</span><span style="color:#98C379;"> 10710,</span><span style="color:#D19A66;"> 10720</span><span style="color:#98C379;"> are</span><span style="color:#98C379;"> free</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Network</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Remote</span><span style="color:#98C379;"> Port</span><span style="color:#98C379;"> Connectivity</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> 172.20.31.19:6667,</span><span style="color:#D19A66;"> 18080</span><span style="color:#98C379;"> and</span><span style="color:#98C379;"> 10.0.6.230:10311</span><span style="color:#98C379;"> must</span><span style="color:#98C379;"> be</span><span style="color:#98C379;"> accessible</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span></span> |
| <span class="line"><span style="color:#61AFEF;">Inaccessible</span><span style="color:#98C379;"> server</span><span style="color:#98C379;"> ports:</span></span> |
| <span class="line"><span style="color:#61AFEF;">IP:</span><span style="color:#98C379;"> 10.0.6.230,</span><span style="color:#98C379;"> Ports:</span><span style="color:#D19A66;"> 10311</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> System</span><span style="color:#98C379;"> Settings</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Maximum</span><span style="color:#98C379;"> Open</span><span style="color:#98C379;"> Files</span><span style="color:#98C379;"> Number</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#ABB2BF;"> ></span><span style="color:#98C379;">=</span><span style="color:#D19A66;"> 65535</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#D19A66;"> 65535</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> System</span><span style="color:#98C379;"> Settings</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Swap</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> Disabled</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#98C379;"> Disabled.</span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="_5-2-example-2-local-check" tabindex="-1"><a class="header-anchor" href="#_5-2-example-2-local-check"><span>5.2 Example 2: Local Check</span></a></h3><div class="language-bash line-numbers-mode" data-highlighter="shiki" data-ext="bash" data-title="bash" style="background-color:#282c34;color:#abb2bf;"><pre class="shiki one-dark-pro vp-code"><code><span class="line"><span style="color:#61AFEF;">health_check.sh/health_check.bat</span><span style="color:#D19A66;"> -o</span><span style="color:#98C379;"> local</span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>Output:</p><div class="language-bash line-numbers-mode" data-highlighter="shiki" data-ext="bash" data-title="bash" style="background-color:#282c34;color:#abb2bf;"><pre class="shiki one-dark-pro vp-code"><code><span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Installation</span><span style="color:#98C379;"> Environment</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">JDK</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> JDK</span><span style="color:#98C379;"> Version</span><span style="color:#ABB2BF;"> ></span><span style="color:#98C379;">=</span><span style="color:#D19A66;">1.8</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#98C379;"> JDK</span><span style="color:#98C379;"> Version</span><span style="color:#D19A66;"> 11.0.21</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Installation</span><span style="color:#98C379;"> Environment</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Memory</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> Allocate</span><span style="color:#98C379;"> sufficient</span><span style="color:#98C379;"> memory</span><span style="color:#98C379;"> for</span><span style="color:#98C379;"> IoTDB</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#98C379;"> Total</span><span style="color:#98C379;"> Memory</span><span style="color:#98C379;"> 7.8Gi,</span><span style="color:#D19A66;"> 2.33</span><span style="color:#98C379;"> G</span><span style="color:#98C379;"> allocated</span><span style="color:#98C379;"> to</span><span style="color:#98C379;"> IoTDB</span><span style="color:#98C379;"> ConfigNode,</span><span style="color:#D19A66;"> 3.88</span><span style="color:#98C379;"> G</span><span style="color:#98C379;"> allocated</span><span style="color:#98C379;"> to</span><span style="color:#98C379;"> IoTDB</span><span style="color:#98C379;"> DataNode</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Installation</span><span style="color:#98C379;"> Environment</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Directory</span><span style="color:#98C379;"> Access</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> IoTDB</span><span style="color:#98C379;"> needs</span><span style="color:#98C379;"> data/datanode/data,data/datanode/consensus,data/datanode/system,data/datanode/wal,data/confignode/system,data/confignode/consensus,ext/pipe,ext/udf,ext/trigger</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission.</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#ABB2BF;"> </span></span> |
| <span class="line"><span style="color:#61AFEF;">data/datanode/data</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/datanode/consensus</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/datanode/system</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/datanode/wal</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/confignode/system</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">data/confignode/consensus</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">ext/pipe</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">ext/udf</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"><span style="color:#61AFEF;">ext/trigger</span><span style="color:#98C379;"> has</span><span style="color:#98C379;"> write</span><span style="color:#98C379;"> permission</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Network</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Local</span><span style="color:#98C379;"> Port</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> Port</span><span style="color:#D19A66;"> 16668</span><span style="color:#D19A66;"> 10730</span><span style="color:#D19A66;"> 11742</span><span style="color:#D19A66;"> 10750</span><span style="color:#D19A66;"> 10760</span><span style="color:#D19A66;"> 10710</span><span style="color:#D19A66;"> 10720</span><span style="color:#98C379;"> is</span><span style="color:#98C379;"> not</span><span style="color:#98C379;"> occupied</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#ABB2BF;"> </span></span> |
| <span class="line"><span style="color:#61AFEF;">Port</span><span style="color:#D19A66;"> 16668</span><span style="color:#D19A66;"> 10730</span><span style="color:#D19A66;"> 11742</span><span style="color:#D19A66;"> 10750</span><span style="color:#D19A66;"> 10760</span><span style="color:#D19A66;"> 10710</span><span style="color:#D19A66;"> 10720</span><span style="color:#98C379;"> is</span><span style="color:#98C379;"> free</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> System</span><span style="color:#98C379;"> Settings</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Maximum</span><span style="color:#98C379;"> Open</span><span style="color:#98C379;"> Files</span><span style="color:#98C379;"> Number</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#ABB2BF;"> ></span><span style="color:#98C379;">=</span><span style="color:#D19A66;"> 65535</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#D19A66;"> 65535</span></span> |
| <span class="line"></span> |
| <span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> System</span><span style="color:#98C379;"> Settings</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Swap</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> disabled</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span><span style="color:#98C379;"> disabled.</span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="_5-3-example-3-remote-check" tabindex="-1"><a class="header-anchor" href="#_5-3-example-3-remote-check"><span>5.3 Example 3: Remote Check</span></a></h3><div class="language-bash line-numbers-mode" data-highlighter="shiki" data-ext="bash" data-title="bash" style="background-color:#282c34;color:#abb2bf;"><pre class="shiki one-dark-pro vp-code"><code><span class="line"><span style="color:#61AFEF;">health_check.sh/health_check.bat</span><span style="color:#D19A66;"> -o</span><span style="color:#98C379;"> remote</span><span style="color:#D19A66;"> -ips</span><span style="color:#D19A66;"> 172.20.31.19</span><span style="color:#D19A66;"> 6667</span><span style="color:#98C379;"> 18080,10.0.6.230</span><span style="color:#D19A66;"> 10311</span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>Output:</p><div class="language-bash line-numbers-mode" data-highlighter="shiki" data-ext="bash" data-title="bash" style="background-color:#282c34;color:#abb2bf;"><pre class="shiki one-dark-pro vp-code"><code><span class="line"><span style="color:#61AFEF;">Check:</span><span style="color:#98C379;"> Network</span><span style="color:#ABB2BF;">(</span><span style="color:#61AFEF;">Remote</span><span style="color:#98C379;"> Port</span><span style="color:#98C379;"> Connectivity</span><span style="color:#ABB2BF;">)</span></span> |
| <span class="line"><span style="color:#61AFEF;">Requirement:</span><span style="color:#98C379;"> 172.20.31.19:6667,</span><span style="color:#D19A66;"> 18080</span><span style="color:#98C379;"> and</span><span style="color:#98C379;"> 10.0.6.230:10311</span><span style="color:#98C379;"> must</span><span style="color:#98C379;"> be</span><span style="color:#98C379;"> accessible</span></span> |
| <span class="line"><span style="color:#61AFEF;">Result:</span></span> |
| <span class="line"><span style="color:#61AFEF;">Inaccessible</span><span style="color:#98C379;"> server</span><span style="color:#98C379;"> ports:</span></span> |
| <span class="line"><span style="color:#61AFEF;">IP:</span><span style="color:#98C379;"> 10.0.6.230,</span><span style="color:#98C379;"> Ports:</span><span style="color:#D19A66;"> 10311</span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="_6-faqs" tabindex="-1"><a class="header-anchor" href="#_6-faqs"><span>6. FAQs</span></a></h2><h3 id="_6-1-how-to-adjust-memory-allocation" tabindex="-1"><a class="header-anchor" href="#_6-1-how-to-adjust-memory-allocation"><span>6.1 How to Adjust Memory Allocation</span></a></h3><ul><li>Modify MEMORY_SIZE in <code>confignode-env.sh</code>.</li><li>Modify MEMORY_SIZE in <code>datanode-env.sh</code>.</li></ul><h3 id="_6-2-how-to-modify-max-open-files-limit" tabindex="-1"><a class="header-anchor" href="#_6-2-how-to-modify-max-open-files-limit"><span>6.2 How to Modify Max Open Files Limit</span></a></h3><ul><li>To avoid "too many open files" errors:</li></ul><div class="language-bash line-numbers-mode" data-highlighter="shiki" data-ext="bash" data-title="bash" style="background-color:#282c34;color:#abb2bf;"><pre class="shiki one-dark-pro vp-code"><code><span class="line"><span style="color:#7F848E;font-style:italic;"># Check current limit</span></span> |
| <span class="line"><span style="color:#56B6C2;">ulimit</span><span style="color:#D19A66;"> -n</span></span> |
| <span class="line"><span style="color:#7F848E;font-style:italic;"># Temporarily set</span></span> |
| <span class="line"><span style="color:#56B6C2;">ulimit</span><span style="color:#D19A66;"> -n</span><span style="color:#D19A66;"> 65535</span></span> |
| <span class="line"><span style="color:#7F848E;font-style:italic;"># Permanently set</span></span> |
| <span class="line"><span style="color:#56B6C2;">echo</span><span style="color:#98C379;"> "* soft nofile 65535"</span><span style="color:#ABB2BF;"> >> </span><span style="color:#98C379;">/etc/security/limits.conf</span></span> |
| <span class="line"><span style="color:#56B6C2;">echo</span><span style="color:#98C379;"> "* hard nofile 65535"</span><span style="color:#ABB2BF;"> >> </span><span style="color:#98C379;">/etc/security/limits.conf</span></span> |
| <span class="line"><span style="color:#7F848E;font-style:italic;"># Verify after re-login</span></span> |
| <span class="line"><span style="color:#56B6C2;">ulimit</span><span style="color:#D19A66;"> -n</span><span style="color:#7F848E;font-style:italic;"> # Should return 65535</span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="_6-3-how-to-disable-swap-and-why" tabindex="-1"><a class="header-anchor" href="#_6-3-how-to-disable-swap-and-why"><span>6.3 How to Disable Swap and Why</span></a></h3><ul><li><p>Why Disable:<br> IoTDB performance degrades when using swap.</p></li><li><p>Steps:</p></li></ul><div class="language-bash line-numbers-mode" data-highlighter="shiki" data-ext="bash" data-title="bash" style="background-color:#282c34;color:#abb2bf;"><pre class="shiki one-dark-pro vp-code"><code><span class="line"><span style="color:#7F848E;font-style:italic;"># Disable swap</span></span> |
| <span class="line"><span style="color:#56B6C2;">echo</span><span style="color:#98C379;"> "vm.swappiness = 0"</span><span style="color:#ABB2BF;"> >> </span><span style="color:#98C379;">/etc/sysctl.conf</span></span> |
| <span class="line"><span style="color:#7F848E;font-style:italic;"># Clear swap data and reload</span></span> |
| <span class="line"><span style="color:#61AFEF;">swapoff</span><span style="color:#D19A66;"> -a</span><span style="color:#ABB2BF;"> && </span><span style="color:#61AFEF;">swapon</span><span style="color:#D19A66;"> -a</span></span> |
| <span class="line"><span style="color:#7F848E;font-style:italic;"># Apply settings without reboot</span></span> |
| <span class="line"><span style="color:#61AFEF;">sysctl</span><span style="color:#D19A66;"> -p</span></span> |
| <span class="line"><span style="color:#7F848E;font-style:italic;"># Verify swap is 0</span></span> |
| <span class="line"><span style="color:#61AFEF;">free</span><span style="color:#D19A66;"> -m</span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div>`,39)]))}const c=n(o,[["render",p],["__file","Health-Check-Tool.html.vue"]]),r=JSON.parse(`{"path":"/UserGuide/dev-1.3/Tools-System/Health-Check-Tool.html","title":"Health Check Tool","lang":"en-US","frontmatter":{"description":"Health Check Tool 1. Overview The IoTDB Health Check Tool is designed to inspect the runtime environment of IoTDB nodes. It assists users in verifying the node's environment bot...","head":[["link",{"rel":"alternate","hreflang":"zh-cn","href":"https://iotdb.apache.org/zh/UserGuide/dev-1.3/Tools-System/Health-Check-Tool.html"}],["meta",{"property":"og:url","content":"https://iotdb.apache.org/UserGuide/dev-1.3/Tools-System/Health-Check-Tool.html"}],["meta",{"property":"og:site_name","content":"IoTDB Website"}],["meta",{"property":"og:title","content":"Health Check Tool"}],["meta",{"property":"og:description","content":"Health Check Tool 1. Overview The IoTDB Health Check Tool is designed to inspect the runtime environment of IoTDB nodes. It assists users in verifying the node's environment bot..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:locale:alternate","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2025-03-13T01:57:36.000Z"}],["meta",{"property":"article:modified_time","content":"2025-03-13T01:57:36.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"Health Check Tool\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2025-03-13T01:57:36.000Z\\",\\"author\\":[]}"]]},"headers":[{"level":2,"title":"1. Overview","slug":"_1-overview","link":"#_1-overview","children":[]},{"level":2,"title":"2. Prerequisites","slug":"_2-prerequisites","link":"#_2-prerequisites","children":[]},{"level":2,"title":"3. Inspection Items","slug":"_3-inspection-items","link":"#_3-inspection-items","children":[]},{"level":2,"title":"4. Usage Instructions","slug":"_4-usage-instructions","link":"#_4-usage-instructions","children":[{"level":3,"title":"4.1 Command Format","slug":"_4-1-command-format","link":"#_4-1-command-format","children":[]},{"level":3,"title":"4.2 Parameter Descriptions","slug":"_4-2-parameter-descriptions","link":"#_4-2-parameter-descriptions","children":[]}]},{"level":2,"title":"5. Usage Examples","slug":"_5-usage-examples","link":"#_5-usage-examples","children":[{"level":3,"title":"5.1 Example 1: Check All","slug":"_5-1-example-1-check-all","link":"#_5-1-example-1-check-all","children":[]},{"level":3,"title":"5.2 Example 2: Local Check","slug":"_5-2-example-2-local-check","link":"#_5-2-example-2-local-check","children":[]},{"level":3,"title":"5.3 Example 3: Remote Check","slug":"_5-3-example-3-remote-check","link":"#_5-3-example-3-remote-check","children":[]}]},{"level":2,"title":"6. FAQs","slug":"_6-faqs","link":"#_6-faqs","children":[{"level":3,"title":"6.1 How to Adjust Memory Allocation","slug":"_6-1-how-to-adjust-memory-allocation","link":"#_6-1-how-to-adjust-memory-allocation","children":[]},{"level":3,"title":"6.2 How to Modify Max Open Files Limit","slug":"_6-2-how-to-modify-max-open-files-limit","link":"#_6-2-how-to-modify-max-open-files-limit","children":[]},{"level":3,"title":"6.3 How to Disable Swap and Why","slug":"_6-3-how-to-disable-swap-and-why","link":"#_6-3-how-to-disable-swap-and-why","children":[]}]}],"git":{"createdTime":1741831056000,"updatedTime":1741831056000,"contributors":[{"name":"leto-b","username":"leto-b","email":"bingqian.bai@timecho.com","commits":1,"url":"https://github.com/leto-b"}]},"readingTime":{"minutes":2.74,"words":821},"filePathRelative":"UserGuide/dev-1.3/Tools-System/Health-Check-Tool.md","localizedDate":"March 13, 2025","autoDesc":true}`);export{c as comp,r as data}; |