---
schema_version: "1"
id: 9b2f1be227fa12f1e58d91bc8da42ac15aaba0dd65223c9f093fc2a1a10a2eb5
title: "RMT การอัปเกรด: ข้อมูลอ้างอิงทางเทคนิค"
collection: tableau
version: next
locale: th-th
portal_url: https://docs.salesforce.com/tableau/next/th-th/server-linux/rmt-admin-upgrade-reference.md
canonical_url: https://help.tableau.com/v0.0/server-linux/th-th/rmt-admin-upgrade-reference.htm
source_site: help.tableau.com
content_type: documentation
content_hash: fa1f98720129af0e65e56f72dfa21da2481980afb0b9778e9338f7e29c334f39
description: Technical reference of operational thresholds and checks during RMT upgrade.
---
[ข้ามไปยังเนื้อหาหลัก](#main-content)

# RMT การอัปเกรด: ข้อมูลอ้างอิงทางเทคนิค

ส่วนนี้เป็นคู่มืออ้างอิงทางเทคนิคสําหรับเกณฑ์การปฏิบัติงาน เส้นทางระบบ และพอร์ตเครือข่ายที่ตรวจสอบระหว่างกระบวนการอัปเกรด ใช้ตารางเหล่านี้เพื่อวินิจฉัยความล้มเหลวในการตรวจสอบความถูกต้องอย่างรวดเร็ว และปรับสภาพแวดล้อมของคุณให้สอดคล้องกับ RMT พื้นฐานที่จําเป็น

**หมายเหตุ**: เพื่อให้สอดคล้องกับค่านิยมความเท่าเทียมของบริษัทของเรา เราได้อัปเดต RMT Master เป็นเซิร์ฟเวอร์ RMT ในบางกรณี เส้นทางและคําสั่งการติดตั้งเซิร์ฟเวอร์ RMT อาจใช้คําว่า “master” แทน “server” ดังนั้นคุณจึงอาจเห็นคำศัพท์เหล่านั้นในคำสั่งและตัวเลือก CLI, โฟลเดอร์การติดตั้ง, ไฟล์การกำหนดค่า และอินสแตนซ์อื่นๆ ต่อไป หากต้องการข้อมูลเพิ่มเติม โปรดดู[เกี่ยวกับความช่วยเหลือของ Tableau](https://help.tableau.com/current/tableau/th-th/about-tableau-help.htm)

## การตรวจสอบสถานะก่อนการอัปเกรด

การตรวจสอบสถานะก่อนการอัปเกรดจะตรวจสอบโฮสต์ RMT Server หรือเอเจนต์ของคุณในขณะที่การติดตั้งที่มีอยู่ยังคงไม่เสียหาย เช่น บริการที่ทํางานอยู่ เข้าถึงฐานข้อมูลได้ และสร้างรายงาน PASS / FAIL / WARN โดยละเอียด โดยดําเนินการตรวจสอบมากกว่า 80 รายการในทรัพยากรระบบบัญชีสิทธิ์ไฟล์ PostgreSQL, RabbitMQ, เครือข่าย, ไฟล์การกําหนดค่าและบริการ RMT ตารางต่อไปนี้แสดงรายการการตรวจสอบที่ดําเนินการก่อนการอัปเกรด หากมีรายการใดแสดงสถานะ **FAIL** (โค้ดการออกจากการทํางาน 2) แปลว่าระบบยกเลิกการอัปเกรด

### ระบบและฮาร์ดแวร์

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 158px;"><col style="width: 23%;"><col style="width: 23%;"><col style="width: 438px;"></colgroup><tbody><tr><td><b>ตรวจสอบ ID</b></td><td style="text-align: center;"><strong>ชื่อ </strong></td><td><b>แพลตฟอร์ม</b></td><td style="text-align: center;"><strong>เงื่อนไขความล้มเหลว (FAIL) / คําเตือน (WARN)</strong></td></tr><tr><td>#1</td><td style="text-align: center;">ระบบปฏิบัติการ</td><td>Linux, Windows</td><td style="text-align: center;"><b>WARN</b> เวอร์ชันของ OS ไม่อยู่ในรายการที่อนุญาตการตรวจสอบล่วงหน้า รายการที่รองรับคือ RHEL 8.x/9.x, Ubuntu 20.04/22.04/24.04, CentOS Stream 8/9, Oracle Linux 8.x/9.x, AlmaLinux 8.x/9.x, Rocky Linux 8.x/9.x, Amazon Linux 2023, Windows Server 2019/2022</td></tr><tr><td>#2</td><td style="text-align: center;">พื้นที่ดิสก์</td><td>Linux, Windows</td><td style="text-align: center;"><b>FAIL</b> เซิร์ฟเวอร์ RMT มีพื้นที่ว่าง &lt; 20 GB หรือเอเจนต์มีพื้นที่ว่าง &lt; 5 GB <b>WARN</b> เซิร์ฟเวอร์ RMT มีพื้นที่ว่าง &lt; 50 GB หรือเอเจนต์มีพื้นที่ว่าง &lt; 10 GB</td></tr><tr><td>#2a</td><td style="text-align: center;">ประเภทดิสก์</td><td>Linux, Windows</td><td style="text-align: center;"><b>INFO</b> รายงานหากไดรฟ์เป็น SSD หรือ HDD</td></tr><tr><td>#3</td><td style="text-align: center;"><p>RAM</p></td><td>Linux, Windows</td><td style="text-align: center;"><b>WARN</b> เซิร์ฟเวอร์ RMT &lt; 8 GB (ขั้นต่ำ) หรือเอเจนต์ &lt; 4 GB (ขั้นต่ำ)</td></tr><tr><td>#4</td><td style="text-align: center;">แกน CPU</td><td>Linux, Windows</td><td style="text-align: center;"><b>WARN</b> เซิร์ฟเวอร์ RMT &lt; 8 GB (ขั้นต่ำ) หรือเอเจนต์ &lt; 4 GB (ขั้นต่ำ)</td></tr><tr><td>#4a</td><td style="text-align: center;">คําแนะนํา CPU</td><td>Linux, Windows</td><td style="text-align: center;"><b>FAIL</b> (Linux): ไม่มี sse4_2 หรือ popcnt <b>WARN</b> (Windows): ตรวจพบ CPU รุ่นเก่า</td></tr><tr><td>#4b</td><td style="text-align: center;">VC++ Redist</td><td>Windows</td><td style="text-align: center;"><b>FAIL</b> Visual Studio 2022 C++ Redistributable หายไป</td></tr><tr><td>#4c</td><td style="text-align: center;">OpenSSL DLLs</td><td>Windows</td><td style="text-align: center;"><b>INFO</b> การตรวจสอบสำหรับ libcrypto-3-x64.dll และ libssl-3-x64.dll</td></tr><tr><td>#5</td><td style="text-align: center;">เวลาทํางานของระบบ</td><td>Linux, Windows</td><td style="text-align: center;font-weight: bold;">INFO: <span style="font-weight: normal;">หมายเหตุ หากน้อยกว่า 10 นาที (เพิ่งรีบูต) หรือ &gt; 90 วัน (รอการอัปเดตแพตช์)</span></td></tr><tr><td>#6</td><td style="text-align: center;">Systemd กําลังทํางาน</td><td>Linux</td><td style="text-align: center;"><b>FAIL</b> systemd ไม่ทำงาน, <b>PASS</b> : ทํางานหรือลดระดับลง</td></tr><tr><td>#7</td><td style="text-align: center;">โหมด FIPS</td><td>Linux, Windows</td><td style="text-align: center;"><b>FAIL</b> (Windows): เปิดใช้งานในรีจิสทรี, <b>PASS</b> ปิดใช้งาน FIPS <b>WARN</b> (Linux) ไม่ตรงกับ config.json <b>PASS</b> การจับคู่ OS และการกําหนดค่า</td></tr><tr><td>#7a</td><td style="text-align: center;">เวอร์ชัน PowerShell</td><td>Windows</td><td style="text-align: center;"><b>INFO</b> <span style="font-weight: normal;">เวอร์ชัน PowerShell</span></td></tr><tr><td>#7b</td><td style="text-align: center;">ภาษาของระบบ</td><td>Windows</td><td style="text-align: center;"><b>INFO</b> <span style="font-weight: normal;">ข้อมูลภาษาของระบบ</span></td></tr><tr><td>#7c</td><td style="text-align: center;">สถานะ WMI</td><td>Windows</td><td style="text-align: center;"><b>WARN</b> ที่เก็บ WMI ไม่สอดคล้องกัน</td></tr></tbody></table>

### บัญชีและสิทธิ์

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 161px;"><col style="width: 23%;"><col style="width: 23%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>ตรวจสอบ ID</b></td><td style="text-align: center;"><strong>ชื่อ</strong></td><td><b>แพลตฟอร์ม</b></td><td style="text-align: center;"><strong>เงื่อนไขความล้มเหลว (FAIL) / คําเตือน (WARN)</strong></td></tr><tr><td>#8</td><td style="text-align: center;">บัญชีบริการ</td><td>Linux, Windows</td><td style="text-align: center;"><b>FAIL</b> ไม่พบบัญชีบริการ RMT หรือบริการ Windows</td></tr><tr><td>#9</td><td style="text-align: center;">การเป็นสมาชิกกลุ่ม</td><td>Linux</td><td style="text-align: center;"><b>FAIL</b> กลุ่มบริการที่จําเป็น (เช่น rmtmasterapp, rmtmasterconfig เป็นต้น) หายไป</td></tr><tr><td>#10</td><td style="text-align: center;">Systemd ผู้ใช้</td><td>Linux</td><td style="text-align: center;"><b>FAIL</b> systemd daemon/linger ผู้ใช้ไม่ทํางาน</td></tr><tr><td>#44</td><td style="text-align: center;">ติดตั้ง pamtester แล้ว</td><td>Linux</td><td style="text-align: center;"><b>WARN</b> หากไม่ได้ติดตั้ง หากต้องการแก้ไขปัญหานี้ ให้ติดตั้ง <code>yum install pamtester</code> หรือ <code>apt install libpam-runtime</code></td></tr></tbody></table>

#### ความเป็นเจ้าของไดเรกทอรีและสิทธิ์สําหรับ Linux

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 136px;"><col style="width: 23%;"><col style="width: 21%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>ตรวจสอบ ID</b></td><td style="text-align: center;"><strong>ไดเรกทอรี</strong></td><td style="font-weight: bold;">Expected Owner:Group</td><td style="text-align: center;font-weight: bold;">โหมดที่คาดไว้</td></tr><tr><td>#11</td><td style="text-align: center;">ไดเรกทอรีกำหนดค่า</td><td>tabrmt-ต้นแบบ:rmtmasterconfig</td><td style="text-align: center;">2775</td></tr><tr><td>#12</td><td style="text-align: center;">ไดเรกทอรีบันทึก</td><td>tabrmt-master:rmtmasterlogs</td><td style="text-align: center;">2775</td></tr><tr><td>#13</td><td style="text-align: center;">ไดเรกทอรีข้อมูล (+ PG/RMQ ไดเรกทอรีย่อย)</td><td>ส่วนประกอบที่เหมาะสม</td><td style="text-align: center;">2775</td></tr><tr><td>#14</td><td style="text-align: center;">ไดเรกทอรีบันทึกข้อกําหนดเบื้องต้น</td><td><code>root</code> หรือผู้ใช้คอมโพเนนต์</td><td style="text-align: center;">755</td></tr><tr><td>#14a</td><td style="text-align: center;">ไฟล์ <code>rabbitmq-defaults</code></td><td>ต้องเขียนเป็นกลุ่ม</td><td style="text-align: center;">g+w</td></tr><tr><td>#15</td><td style="text-align: center;">ไดเรกทอรีใบรับรอง SSL</td><td>tabrmt-master:rmtopenssl</td><td style="text-align: center;">2775</td></tr><tr><td>#15a</td><td style="text-align: center;">ไดเรกทอรีหน้าหลัก</td><td>ผู้ใช้คอมโพเนนต์</td><td style="text-align: center;">770</td></tr><tr><td>#15b</td><td style="text-align: center;"><code>/etc/profile.d/tabrmt-*.sh</code></td><td>root</td><td style="text-align: center;">ค่าเริ่มต้น</td></tr><tr><td>#15c</td><td style="text-align: center;">setgid bit ไดเรกทอรีกำหนดค่า</td><td>--</td><td style="text-align: center;">ต้องใช้ 2xxx</td></tr><tr><td>#16</td><td style="text-align: center;"><code>environment.bash</code></td><td>ผู้ใช้คอมโพเนนต์</td><td style="text-align: center;">group-writable</td></tr></tbody></table>

ความร้ายแรง: **FAIL** เป็นเจ้าของสําหรับชุด data-dir (#13 และ #15) เท่านั้น การตรวจสอบไดเรกทอรี Linux อื่นๆ ทั้งหมด (#11, #12, #14, #14a, #15a–c, #16) จะส่ง **WARN** เกี่ยวกับความเป็นเจ้าของ/โหมดที่ไม่ตรงกันเนื่องจากการติดตั้งหลังการติดตั้งของตัวติดตั้งจะนําความเป็นเจ้าของไปใช้อีกครั้งระหว่างการอัปเกรด **WARN** หากโหมดการอนุญาตไม่ถูกต้อง แต่ความเป็นเจ้าของถูกต้อง

#### ความเป็นเจ้าของไดเรกทอรีและสิทธิ์สําหรับ Windows

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 136px;"><col style="width: 23%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>ตรวจสอบ</b></td><td style="text-align: center;"><strong>ชื่อ</strong></td><td style="font-weight: bold;">ความรุนแรง</td></tr><tr><td>#11</td><td style="text-align: center;">ACL ไดเรกทอรีกำหนดค่า</td><td><b>FAIL</b> หากผู้ใช้บริการไม่มี FullControl</td></tr><tr><td>#12</td><td style="text-align: center;">ACL ไดเรกทอรีบันทึก</td><td><b>FAIL</b> หากผู้ใช้บริการขาด Modify</td></tr><tr><td>#13</td><td style="text-align: center;">ACL ไดเรกทอรีข้อมูล (เซิร์ฟเวอร์ RMT)</td><td><b>FAIL</b> หากผู้ใช้บริการขาด FullControl บนไดเรกทอรีข้อมูล PG/RMQ</td></tr><tr><td>#14</td><td style="text-align: center;">ACL ไดเรกทอรีบันทึกข้อกําหนดเบื้องต้น (เซิร์ฟเวอร์ RMT)</td><td><b>WARN</b> หากขาด ReadAndExecute (คําแนะนํา — การอัปเกรดทุกครั้งจะติดตั้งข้อกําหนดเบื้องต้น MSI ใหม่และการดําเนินการหลังการติดตั้งจะนํา ACL ไปใช้ใหม่)</td></tr><tr><td>#15</td><td style="text-align: center;">ACL ไดเรกทอรีใบรับรอง SSL (RMT&nbsp;Server)</td><td><b>FAIL</b> หากผู้ใช้บริการไม่มี FullControl</td></tr><tr><td>#16a</td><td style="text-align: center;">ข้อมูลประจําตัวผู้ใช้บริการ</td><td><b>PASS</b> (ข้อมูล -- แสดงว่าบริการทํางานในฐานะผู้ใช้รายใด)</td></tr><tr><td>#16b</td><td style="text-align: center;">สิทธิ์ SeServiceLogonRight</td><td><b>INFO</b> หากพบ และ <b>WARN</b> หากไม่พบ หรือ secedit ล้มเหลว</td></tr><tr><td>#16c</td><td style="text-align: center;">ACL ของผู้ใช้บริการบนไดเรกทอรี RMT</td><td><b>FAIL</b> หากผู้ใช้บริการขาดสิทธิที่จําเป็น</td></tr></tbody></table>

### ฐานข้อมูล (PostgreSQL)

การตรวจสอบ PostgreSQL ทั้งหมดจะทํางานบนเซิร์ฟเวอร์ RMT เท่านั้น

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 233px;"><col style="width: 23%;"><col style="width: 23%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>ตรวจสอบ ID</b></td><td style="text-align: center;"><strong>ชื่อ</strong></td><td><b>ต้องใช้ --</b><b>ตัวเลือก</b> <code style="font-weight: bold;">db-password</code></td><td style="text-align: center;"><strong>เงื่อนไขความล้มเหลว (FAIL) / คําเตือน (WARN)</strong></td></tr><tr><td>#17</td><td style="text-align: center;">บริการ PG</td><td>ไม่</td><td style="text-align: center;"><b>FAIL</b> บริการในเครื่อง: หยุดและปิดใช้งาน</td></tr><tr><td>#18</td><td style="text-align: center;">พอร์ต 5555 รอรับข้อมูล</td><td>ไม่</td><td style="text-align: center;"><b>WARN</b> (กลุ่มความปลอดภัย / คําใบ้ VPC / RDS) ไม่รอรับข้อมูล</td></tr><tr><td>#19</td><td style="text-align: center;">DB Connection</td><td>ใช่</td><td style="text-align: center;"><b>WARN</b> ไม่สามารถเชื่อมต่อกับฐานข้อมูลภายใน (ปัญหา SSL รหัสผ่าน หรือเครือข่าย)</td></tr></tbody></table>

### การส่งข้อความ (RabbitMQ)

การตรวจสอบข้อความ (RabbitMQ) จะทํางานบน RMT Server เท่านั้น

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 234px;"><col style="width: 23%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>ตรวจสอบ ID</b></td><td style="text-align: center;"><strong>ชื่อ</strong></td><td style="text-align: center;"><strong>เงื่อนไขความล้มเหลว (FAIL) / คําเตือน (WARN)</strong></td></tr><tr><td>#22</td><td style="text-align: center;">บริการ RMQ</td><td style="text-align: center;"><b>FAIL</b> บริการในเครื่อง: หยุดและปิดใช้งาน</td></tr><tr><td>#24</td><td style="text-align: center;">รายการตกค้างคิว</td><td style="text-align: center;"><b>WARN</b> คิวที่มีข้อความ &gt; 10,000 ข้อความ</td></tr><tr><td>#25</td><td style="text-align: center;">ผู้ใช้ RabbitMQ</td><td style="text-align: center;"><b>WARN</b> หากผู้ใช้ <code>guest</code> เริ่มต้นยังคงมีอยู่</td></tr><tr><td>#26</td><td style="text-align: center;">การเชื่อมต่อที่ใช้งานอยู่</td><td style="text-align: center;"><b>INFO</b> เท่านั้น รายงานจํานวนการเชื่อมต่อที่ใช้งานอยู่</td></tr><tr><td>#27</td><td style="text-align: center;">คุกกี้ Erlang สามารถเข้าถึงได้</td><td style="text-align: center;"><b>WARN</b> หากไฟล์คุกกี้หายไป หากสิทธิ์ผิด (ควรเป็นโหมด 400 หรือ 600)</td></tr><tr><td>#27a</td><td style="text-align: center;">เซต ERLANG_HOME</td><td style="text-align: center;"><b>WARN</b> (Windows เท่านั้น) หากไม่ได้ตั้งค่า “ERLANG_HOME” หรือไม่มีพาธ</td></tr><tr><td>#27b</td><td style="text-align: center;">SSL อายุการใช้งาน</td><td style="text-align: center;"><b>FAIL</b> ใบรับรองหมดอายุแล้ว</td></tr><tr><td>#27c</td><td style="text-align: center;">สัญญาณเตือนดิสก์</td><td style="text-align: center;"><b>FAIL</b> มีพื้นที่ว่าง &lt; 10 GB บนพาร์ติชัน RMQ (การอัปเกรดจะค้างไว้)</td></tr><tr><td>#45</td><td style="text-align: center;">ไดเรกทอรีใบรับรองที่มีข้อมูลแล้ว</td><td style="text-align: center;"><b>WARN</b> หากมีไดเรกทอรีใบรับรอง แต่ว่างเปล่าหรือไม่มีไฟล์ใบรับรองที่คาดไว้ (ใบรับรองเซิร์ฟเวอร์, คีย์, ใบรับรอง CA)</td></tr></tbody></table>

### เครือข่ายและการกําหนดค่า

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 245px;"><col style="width: 23%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>ตรวจสอบ ID</b></td><td style="text-align: center;"><strong>ชื่อ</strong></td><td style="text-align: center;"><strong>เงื่อนไขความล้มเหลว (FAIL) / คําเตือน (WARN)</strong></td></tr><tr><td>#28a/b</td><td style="text-align: center;">การสื่อสารระหว่างเอเจนต์และ Master</td><td style="text-align: center;"><b>WARN</b> เอเจนต์ไม่สามารถติดต่อ Master ได้ที่ 5671, 5672, 80 หรือ 443</td></tr><tr><td>#33-35</td><td style="text-align: center;">JSON/Bash Config</td><td style="text-align: center;"><b>FAIL</b> config.json, setup.json หรือ environment.bash หายไปหรือไม่ถูกต้อง</td></tr><tr><td>#36a</td><td style="text-align: center;">เวอร์ชันที่ไม่ดี</td><td style="text-align: center;"><b>FAIL</b> เวอร์ชันปัจจุบันคือ 2025.3.0 (การอัปเกรดบล็อกการถดถอย)</td></tr></tbody></table>

### บริการและการสํารองข้อมูล

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 215px;"><col style="width: 23%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>ตรวจสอบ ID</b></td><td style="text-align: center;"><strong>ชื่อ</strong></td><td style="text-align: center;"><strong>เงื่อนไขความล้มเหลว (FAIL) / คําเตือน (WARN)</strong></td></tr><tr><td>#38</td><td style="text-align: center;">บริการ RMT ทั้งหมดที่ทํางานอยู่</td><td style="text-align: center;"><b>WARN</b> สําหรับบริการที่หยุดแต่ละครั้ง</td></tr><tr><td>#38a</td><td style="text-align: center;">กระบวนการที่ค้างอยู่</td><td style="text-align: center;"><b>FAIL</b> พบกระบวนการ tabrmt-* ที่ค้างอยู่หลังจากบริการหยุดทํางาน</td></tr><tr><td>#39</td><td style="text-align: center;">โปรเซสเซอร์พื้นหลังกําลังทํางานอยู่</td><td style="text-align: center;"><b>WARN</b> หากกระบวนการโฮสต์ไม่ทํางาน</td></tr><tr><td>#40</td><td style="text-align: center;">การแจ้งเตือนการสํารองข้อมูลก่อนการอัปเกรด</td><td style="text-align: center;"><b>WARN</b> ความจําให้สํารองข้อมูลการกําหนดค่าก่อนอัปเกรด</td></tr><tr><td>#41</td><td style="text-align: center;">โทโพโลยี</td><td style="text-align: center;"><b>INFO</b> เท่านั้น รายงาน ประเภทโหนดหลัก/เอเจนต์ และจํานวนเอเจนต์ที่ใช้งานอยู่ (พร้อม DB)</td></tr><tr><td>#42</td><td style="text-align: center;">คลังเวอร์ชันคอมโพเนนต์</td><td style="text-align: center;"><b>INFO</b> เท่านั้น รายงานเวอร์ชัน RMT, PostgreSQL, RabbitMQ, OpenSSL</td></tr><tr><td>#43</td><td style="text-align: center;">สรุปรายละเอียดเครื่อง</td><td style="text-align: center;"><b>INFO</b> เท่านั้น รายงาน OS, แกน CPU, RAM, พื้นที่ว่างในดิสก์</td></tr></tbody></table>

## การตรวจสอบสถานะหลังการอัปเกรด

การตรวจสอบเหล่านี้จะเรียกใช้หลังการอัปเกรด การไม่ปิดกั้นและความล้มเหลวจะไม่หยุดการอัปเกรด แต่บ่งบอกถึงปัญหาหลังการติดตั้ง

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 136px;"><col style="width: 23%;"><col style="width: 21%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>ตรวจสอบ ID</b></td><td style="text-align: center;"><strong>ชื่อ</strong></td><td><b>คอมโพเนนต์</b></td><td style="text-align: center;"><strong>เงื่อนไขความล้มเหลว (FAIL) / คําเตือน (WARN)</strong></td></tr><tr><td>#1a-d</td><td style="text-align: center;">บริการและกระบวนการ</td><td>RMT&nbsp;Server, Agent</td><td style="text-align: center;"><b>FAIL</b> บริการหลัก, PG หรือ RMQ ไม่ทํางาน</td></tr><tr><td>#2</td><td style="text-align: center;">หัวหน้างานกระบวนการโฮสต์</td><td>RMT&nbsp;Server, Agent</td><td style="text-align: center;"><b>WARN</b> กระบวนการผู้ดูแลโฮสต์ขาดหายไป (ไม่มีการกู้คืนอัตโนมัติ)</td></tr><tr><td>#3a-b</td><td style="text-align: center;">ความสมบูรณ์ไฟล์การกำหนดค่า</td><td>RMT&nbsp;Server, Agent</td><td style="text-align: center;"><b>FAIL</b> หาก JSON ขาดหายไปหรือไม่ถูกต้อง</td></tr><tr><td>#4a-b</td><td style="text-align: center;">สิทธิ์ของไฟล์</td><td>RMT&nbsp;Server, Agent</td><td style="text-align: center;"><b>FAIL</b> ไดเรกทอรีการกำหนดค่า/บันทึกไม่สามารถอ่าน/เขียนได้โดยบัญชีบริการ</td></tr><tr><td>#5a-d</td><td style="text-align: center;">พอร์ตรับข้อมูล</td><td>RMT&nbsp;Server</td><td style="text-align: center;"><b>FAIL</b> เว็บ (443), AMQP (5672) หรือ DB (5555) ไม่รับข้อมูล</td></tr><tr><td>#6</td><td style="text-align: center;">การเชื่อมต่อ PostgreSQL</td><td>RMT&nbsp;Server</td><td style="text-align: center;"><b>FAIL</b> PostgreSQL ไม่ยอมรับการเชื่อมต่อ</td></tr><tr><td>#7</td><td style="text-align: center;">สถานะ RabbitMQ</td><td>เซิร์ฟเวอร์ RMT</td><td style="text-align: center;"><b>SKIP</b> ถ้าภายนอก <b>FAIL</b> หลังจากพยายามใหม่ทั้งหมด</td></tr><tr><td>#8a</td><td style="text-align: center;">ผู้บริโภคคิว</td><td>RMT&nbsp;Server</td><td style="text-align: center;"><b>WARN</b> มีงานในมือแต่ไม่มีผู้บริโภคที่ใช้งานอยู่ (คนงานหลักถูกตัดการเชื่อมต่อ)</td></tr><tr><td>#9</td><td style="text-align: center;">สัญญาณเตือน RMQ</td><td>RMT&nbsp;Server</td><td style="text-align: center;"><b>FAIL</b> ตรวจพบการแจ้งเตือนหน่วยความจําที่ใช้งานอยู่หรือทรัพยากรดิสก์</td></tr><tr><td>#10</td><td style="text-align: center;">ใบรับรอง RabbitMQ SSL</td><td>เซิร์ฟเวอร์ RMT</td><td style="text-align: center;"><b>FAIL</b> หากใบรับรองหมดอายุ <b>WARN</b> หากใบรับรองหมดอายุภายใน 30 วัน</td></tr><tr><td>#11</td><td style="text-align: center;">การจับคู่ FIPS</td><td>RMT&nbsp;Server, Agent</td><td style="text-align: center;"><b>FAIL</b> OS FIPS ไม่ตรงการกำหนดค่า isFIPSEnabled</td></tr><tr><td>#12</td><td style="text-align: center;">การตอบสนอง HTTP ของเว็บเซิร์ฟเวอร์</td><td>เซิร์ฟเวอร์ RMT</td><td style="text-align: center;">ทําให้ HTTP GET “https://localhost:&lt;port&gt;/authentication/login” <b>PASS</b> 200 หรือ 302 <b>FAIL</b> เมื่อการเชื่อมต่อถูกปฏิเสธ/หมดเวลา <b>WARN</b> เกี่ยวกับข้อผิดพลาดอื่น</td></tr><tr><td>#13</td><td style="text-align: center;">ความถูกต้องของใบรับรอง HTTPS</td><td>RMT&nbsp;Server</td><td style="text-align: center;"><b>FAIL</b> ใบรับรอง TLS ของเว็บเซิร์ฟเวอร์หมดอายุแล้ว</td></tr><tr><td>#14a-d</td><td style="text-align: center;">พื้นที่ดิสก์</td><td>RMT&nbsp;Server, Agent</td><td style="text-align: center;"><b>FAIL</b> ว่าง &lt; 1 GB <b>WARN</b>: ว่าง &lt; 5 GB</td></tr><tr><td>#15</td><td style="text-align: center;">ข้อผิดพลาดของไฟล์บันทึกล่าสุด</td><td>RMT&nbsp;Server, Agent</td><td style="text-align: center;"><b>FAIL</b> เกิดข้อผิดพลาดร้ายแรงในบันทึก <b>WARN</b>: ข้อผิดพลาดร้ายแรง</td></tr><tr><td>#16</td><td style="text-align: center;">สถานะ RMT</td><td>RMT&nbsp;Server, Agent</td><td style="text-align: center;"><b>FAIL</b> <code>rmtadmin</code> สถานะส่งคืนรูปแบบความล้มเหลว</td></tr><tr><td>#17</td><td style="text-align: center;">ประวัติบันทึก Agent</td><td>Agent</td><td style="text-align: center;">ตรวจสอบไฟล์การติดตามบันทึก (<code>.history, .json</code>) ในไดเรกทอรีข้อมูลเอเจนต์ <b>WARN</b> หากไฟล์ไม่สามารถอ่านได้หรือเสียหาย</td></tr><tr><td>#18a-f</td><td style="text-align: center;">เวอร์ชันคลัง</td><td>RMT&nbsp;Server, Agent</td><td style="text-align: center;"><b>INFO</b> เกี่ยวกับเวอร์ชัน RMT, เวอร์ชัน PostgreSQL, เวอร์ชัน RabbitMQ, เวอร์ชัน Erlang/OTP, .NET Runtime (Windows) / OS (Linux), เวอร์ชัน OS (Windows) / Kernel (Linux)</td></tr></tbody></table>

## โค้ดการออกการตรวจสอบสถานะ

ใช้โค้ดการออกต่อไปนี้เพื่อแปลผลลัพธ์ของทั้งสคริปต์ตรวจสอบสถานะก่อนการอัปเกรดและหลังการอัปเกรด

### สคริปต์ก่อนการอัปเกรด

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 136px;"><col style="width: 23%;"><col style="width: 421px;"></colgroup><tbody><tr><td><b>โค้ดการออก</b></td><td style="text-align: center;"><strong>สถานะ</strong></td><td><b>ลักษณะการอัปเกรด</b></td></tr><tr><td>0</td><td style="text-align: center;">READY TO UPGRADE</td><td>รายได้จากการอัปเกรด</td></tr><tr><td>1</td><td style="text-align: center;">UPGRADE WITH CAUTION</td><td>ดําเนินการอัปเกรด ดูคําเตือน</td></tr><tr><td>2</td><td style="text-align: center;">อย่าอัปเกรด</td><td>การอัปเกรดถูกยกเลิก</td></tr><tr><td>3</td><td style="text-align: center;">ข้อผิดพลาดสคริปต์</td><td>ตรวจสอบสภาพแวดล้อมการดําเนินงาน</td></tr></tbody></table>

### สคริปต์หลังการอัปเกรด

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 136px;"><col style="width: 669px;"></colgroup><tbody><tr><td style="font-weight: bold;">โค้ดการออก</td><td style="text-align: center;"><strong>สถานะ</strong></td></tr><tr><td>0</td><td style="text-align: center;">ALL PASSED</td></tr><tr><td>1</td><td style="text-align: center;">WARNINGS PRESENT</td></tr><tr><td>2</td><td style="text-align: center;">CRITICAL FAILURES</td></tr></tbody></table>

## การเปลี่ยนแปลงความรุนแรงของ InstallerContext

เมื่อเรียกใช้กับ `-InstallerContext` ระหว่างการอัปเกรด Windows MSI อัตโนมัติ การตรวจสอบต่อไปนี้จะทํางานแตกต่างจากค่าเริ่มต้นด้วยตนเอง ลักษณะการทํางานเริ่มต้น (ที่ไม่ใช่ InstallerContext) คือการแจ้งเตือน WARN \*อยู่แล้ว\* สำหรับสถานะ “หยุดทำงานแต่ยังไม่ปิดใช้งาน” / “พอร์ตไม่รับข้อมูล” ส่วนการแจ้งเตือน FAIL นั้นสงวนไว้สำหรับสถานะ “หยุดทำงานและปิดใช้งาน” ภายใต้ "-`InstallerContext`" แม้แต่สาขา “ปิดใช้งาน” ก็จะถูกรายงานเป็น WARN ดังนั้นการอัปเกรดที่ดำเนินการโดยตัวติดตั้งจะไม่ถูกปฏิเสธโดยสถานะชั่วคราวที่ตัวติดตั้งกำลังจะแก้ไข

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 136px;"><col style="width: 23%;"><col style="width: 21%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>ตรวจสอบ</b></td><td style="text-align: center;"><strong>ชื่อ</strong></td><td><b>ค่าเริ่มต้น</b></td><td style="text-align: center;"><strong>InstallerContext</strong></td></tr><tr><td>#17</td><td style="text-align: center;">บริการ PG</td><td><b>WARN</b> หากหยุด, <b>FAIL</b> หากหยุดและปิดใช้งาน, <b>INFO</b> หากทั้งหมดหยุด</td><td style="text-align: center;">WARN</td></tr><tr><td>#18</td><td style="text-align: center;">พอร์ต PG</td><td><b>WARN</b> หากไม่รับข้อมูล, <b>INFO</b> หากบริการทั้งหมดหยุดทํางาน</td><td style="text-align: center;">WARN</td></tr><tr><td>#22</td><td style="text-align: center;">บริการ RabbitMQ</td><td><b>WARN</b> หากหยุด, <b>FAIL</b> หากหยุด+ปิดใช้งาน, <b>INFO</b> หากหยุดทั้งหมด</td><td style="text-align: center;">WARN</td></tr><tr><td>#23</td><td style="text-align: center;">Port 5672 (AMQP)</td><td><b>WARN</b> หากไม่รับข้อมูล, <b>INFO</b> หากบริการทั้งหมดหยุดทํางาน</td><td style="text-align: center;">WARN</td></tr><tr><td>#38a</td><td style="text-align: center;">กระบวนการ RMT ที่ค้างอยู่</td><td>(ดูตรวจสอบคําอธิบาย)</td><td style="text-align: center;">SKIP (ตัวติดตั้งจะจัดการวงจรชีวิตของกระบวนการ)</td></tr></tbody></table>

### เกณฑ์ก่อนการอัปเกรด

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 136px;"><col style="width: 23%;"><col style="width: 21%;"><col style="width: 21%;"></colgroup><tbody><tr><td><b>เกณฑ์</b></td><td style="text-align: center;"><strong>RMT&nbsp;Server</strong></td><td style="font-weight: bold;">Agent</td><td style="text-align: center;font-weight: bold;">หน่วย</td></tr><tr><td>พื้นที่ดิสก์ FAIL</td><td style="text-align: center;">20</td><td>5</td><td style="text-align: center;">GB ที่ว่าง</td></tr><tr><td>พื้นที่ดิสก์ WARN</td><td style="text-align: center;">50</td><td>10</td><td style="text-align: center;font-weight: bold;"><span style="font-weight: normal;">GB ที่ว่าง</span></td></tr><tr><td>ไดเรกทอรีชั่วคราว FAIL</td><td style="text-align: center;">5</td><td>5</td><td style="text-align: center;">GB ที่ว่าง</td></tr><tr><td>ไดเรกทอรีชั่วคราว WARN</td><td style="text-align: center;">10</td><td>10</td><td style="text-align: center;font-weight: bold;"><span style="font-weight: normal;">GB ที่ว่าง</span></td></tr><tr><td>RAM FAIL</td><td style="text-align: center;">8</td><td>4</td><td style="text-align: center;font-weight: bold;"><span style="font-weight: normal;">GB</span></td></tr><tr><td>RAM&nbsp;WARN</td><td style="text-align: center;">16</td><td>8</td><td style="text-align: center;font-weight: bold;"><span style="font-weight: normal;">GB</span></td></tr><tr><td>CPU FAIL</td><td style="text-align: center;">4</td><td>2</td><td style="text-align: center;">คอร์</td></tr><tr><td>CPU&nbsp;WARN</td><td style="text-align: center;">8</td><td>4</td><td style="text-align: center;">คอร์</td></tr><tr><td>ขนาดฐานข้อมูล FAIL</td><td style="text-align: center;">500</td><td>-</td><td style="text-align: center;">GB</td></tr><tr><td>ขนาดฐานข้อมูล WARN</td><td style="text-align: center;">200</td><td>-</td><td style="text-align: center;">GB</td></tr><tr><td>สคีมา Hangfire FAIL</td><td style="text-align: center;">10</td><td>-</td><td style="text-align: center;">GB</td></tr><tr><td>สคีมา Hangfire WARN</td><td style="text-align: center;">1</td><td>-</td><td style="text-align: center;">GB</td></tr><tr><td>ไดเรกทอรี WAL FAIL (Windows)</td><td style="text-align: center;">10</td><td>-</td><td style="text-align: center;">GB</td></tr><tr><td>ไดเรกทอรี WAL FAIL (Windows)</td><td style="text-align: center;">2</td><td>-</td><td style="text-align: center;">GB</td></tr><tr><td>ไดเรกทอรี WAL FAIL (Linux)</td><td style="text-align: center;">10</td><td>-</td><td style="text-align: center;">GB</td></tr><tr><td>ไดเรกทอรี Mnesia WARN</td><td style="text-align: center;">5</td><td>-</td><td style="text-align: center;">GB</td></tr><tr><td>สัญญาณเตือนดิสก์ RabbitMQ FAIL</td><td style="text-align: center;">10</td><td>-</td><td style="text-align: center;">GB ที่ว่าง</td></tr><tr><td>รายการตกค้างคิว WARN</td><td style="text-align: center;">10,000</td><td>-</td><td style="text-align: center;">ข้อความ</td></tr><tr><td>การหมดอายุของใบรับรอง WARN</td><td style="text-align: center;">30</td><td>30</td><td style="text-align: center;">วัน</td></tr><tr><td>การเก็บรักษาการล้างข้อมูล WARN</td><td style="text-align: center;">180</td><td>-</td><td style="text-align: center;">จำนวนวัน</td></tr><tr><td>อัตราส่วนทูเพิลที่ตายแล้ว WARN</td><td style="text-align: center;">20</td><td>-</td><td style="text-align: center;">เปอร์เซ็นต์</td></tr><tr><td>สัญญาณชีพเอเจนต์ขาดหาย</td><td style="text-align: center;">15</td><td>-</td><td style="text-align: center;">นาที</td></tr><tr><td>อายุไดรเวอร์เครือข่าย WARN</td><td style="text-align: center;">3</td><td>-</td><td style="text-align: center;">ปี</td></tr><tr><td>ขนาดไดเรกทอรีบันทึก WARN</td><td style="text-align: center;">5</td><td>5</td><td style="text-align: center;">GB</td></tr><tr><td>ขนาดไดเรกทอรีบันทึก WARN (รุนแรง)</td><td style="text-align: center;">20</td><td>20</td><td style="text-align: center;">GB</td></tr></tbody></table>

### เกณฑ์หลังการอัปเกรด

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 207px;"><col style="width: 23%;"><col style="width: 421px;"></colgroup><tbody><tr><td style="font-weight: bold;">เกณฑ์</td><td style="text-align: center;font-weight: bold;"><strong>ค่า</strong></td><td style="font-weight: bold;">หน่วย</td></tr><tr><td>พื้นที่ดิสก์ FAIL</td><td style="text-align: center;">1</td><td>GB ที่ว่าง</td></tr><tr><td>พื้นที่ดิสก์ WARN</td><td style="text-align: center;">5</td><td>GB ที่ว่าง</td></tr><tr><td>การหมดอายุของใบรับรอง WARN</td><td style="text-align: center;">30</td><td>จำนวนวัน</td></tr><tr><td>รายการตกค้างคิว WARN</td><td style="text-align: center;">10,000</td><td>ข้อความ</td></tr><tr><td>หน้าต่างสแกนบันทึก</td><td style="text-align: center;">60</td><td>นาที</td></tr><tr><td>การลองเริ่มทำงานของ RabbitMQ ใหม่อีกครั้ง</td><td style="text-align: center;">6 ครั้ง x 5 วินาที</td><td>ทั้งหมด 30 วินาที</td></tr></tbody></table>

## เวอร์ชันคอมโพเนนต์ขั้นต่ำที่รองรับ

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 136px;"><col style="width: 23%;"></colgroup><tbody><tr><td style="font-weight: bold;">คอมโพเนนต์</td><td style="text-align: center;font-weight: bold;"><strong>เวอร์ชันขั้นต่ำ</strong></td></tr><tr><td>RabbitMQ</td><td style="text-align: center;">&gt;= 3.10.10</td></tr><tr><td>เวอร์ชัน Agent</td><td style="text-align: center;">&gt;= 2023.1.0</td></tr></tbody></table>

### ระบบอัตโนมัติและการรวม CI/CD

**สำหรับ Linux:**

\`\`\`base  
\# Linux  
sudo bash rmt-pre-upgrade-check.sh --component master --db-password "$DB\_PASSWORD"  
EXIT\_CODE=$?  
if \[ $EXIT\_CODE -eq 2 \]; then  
echo "BLOCKED: Fix critical issues before upgrading"  
exit 1  
fi  
\`\`\`

**สำหรับ Windows:**

\`\`\`powershell  
\# Windows  
.\\rmt-pre-upgrade-check.ps1 -Component master  
if ($LASTEXITCODE -eq 2) {  
Write-Error "BLOCKED: Fix critical issues before upgrading"  
exit 1  
}  
\`\`\`

## การอ้างอิงไดเรกทอรีการติดตั้ง

หากต้องการเรียกใช้ยูทิลิตีการวินิจฉัยพื้นฐานด้วยตนเองหรือตรวจสอบโครงสร้างการติดตั้ง โปรดดูพาธไดเรกทอรีเฉพาะแพลตฟอร์มดังนี้

### โครงสร้างไดเรกทอรี Linux

\`\`\`

`/opt/tableau/tabrmt/ # Install root`

+`-- master/ # Master application binaries`

`+-- agent/ # Agent application binaries`

`+-- prerequisites/ # Bundled dependencies`

`/var/opt/tableau/tabrmt/ # Data root`

`+-- master/config/ # config.json, setup.json`

`+-- master/logs/ # Application logs`

`+-- data/postgresql15/ # PostgreSQL data files`

`+-- data/rabbitmq313/ # RabbitMQ data/mnesia`

`+-- data/ssl/ # TLS certificates`

`/etc/opt/tableau/tabrmt/`

`+-- master/environment.bash # Master environment variables`

`+-- agent/environment.bash # Agent environment variables`

\`\`\`

### โครงสร้างไดเรกทอรี Windows

\`\`\`

`C:\Program Files\Tableau\Tableau Resource Monitoring Tool\ # Install root`

`C:\ProgramData\Tableau\Tableau Resource Monitoring Tool\ # Data root`

\`\`\`

### พอร์ตเครือข่ายที่จำเป็น

<table style="width: 100%;margin-left: 0;margin-right: auto;" class="simple-table"><colgroup><col style="width: 136px;"><col style="width: 23%;"><col style="width: 421px;"></colgroup><tbody><tr><td><b>พอร์ต</b></td><td style="text-align: center;"><strong>บริการ</strong></td><td><b>Direction</b></td></tr><tr><td>80</td><td style="text-align: center;">UI เว็บ RMT (HTTP)</td><td>ขาเข้า</td></tr><tr><td>443</td><td style="text-align: center;">UI เว็บ RMT (HTTPS)</td><td>ขาเข้า</td></tr><tr><td>5672</td><td style="text-align: center;">RabbitMQ AMQP</td><td>ขาเข้าบนเซิร์ฟเวอร์ RMT</td></tr><tr><td>5671</td><td style="text-align: center;">RabbitMQ AMQP ผ่าน TLS</td><td>ขาเข้าบนเซิร์ฟเวอร์ RMT</td></tr><tr><td>15672</td><td style="text-align: center;">UI การจัดการ RabbitMQ</td><td>ในเครื่อง</td></tr><tr><td>25672</td><td style="text-align: center;">RabbitMQ ระหว่างโหนด</td><td>ในเครื่อง</td></tr><tr><td>5555</td><td style="text-align: center;">PostgreSQL ภายใน</td><td>ในเครื่อง</td></tr></tbody></table>