TDengine 運維——巡檢工具(定期檢查)

在這里插入圖片描述

背景

TDengine 在運行一段時間后需要針對運行環境和 TDengine 本身的運行狀態進行定期巡檢,本文檔旨在說明如何使用巡檢工具對 TDengine 的運行環境進行自動化檢查。

安裝工具使用方法

工具支持通過 help 參數查看支持的語法

Usage: taosinspect [OPTIONS]Check Database deployment environmentOptions:-m, --model [local|ssh]     connection model, default: local-f, --config TEXT           Full path of test config file  [required]-r, --result TEXT           Full path of result directory  [required]-b, --backend BOOLEAN       Run process in backend. default: False-cn, --check-nginx BOOLEAN  Whether check nginx's config, default: False-v, --version               Show version--help                      Show this message and exit.

參數詳細說明

  • model:安裝工具運行模式,分為 local 和 ssh。安裝環境的多節點間支持 SSH 通信,可選擇 ssh 模式,在任意節點上運行安裝工具,會依次對所有節點環境完成安裝操作。反之,節點間不支持 SSH 通信時,可選擇 local 模式,僅對工具運行所在機器完成安裝操作,默認為 local 模式。
  • config:安裝工具加載的配置文件,其具體配置方式詳見 配置文件使用說明 章節。不配置 config 參數時配置文件默認值為/etc/taos/inspect.cfg。
  • result:巡檢運行結束后結果文件和相關日志文件的存儲目錄,默認是用戶在 taos.cfg 中配置的 logDir 對應目錄。
  • backend:后臺運行安裝工具,選擇 True 后安裝工具在自動在后臺運行,默認為 False。
  • check-nginx:是否檢測負載均衡 nginx 的配置文件,默認值為 False。
  • version:打印安裝工具版本信息。

配置文件使用說明

########################################################
#                                                      #
#                  Configuration                       #
#                                                      #
######################################################### 安裝部署TDengine的環境信息,支持免密登錄和SSH登錄兩種方式,當環境配置了免密登錄后不用配置password信息。
# 除此外還支持從TDengine自動獲取集群信息,該模式下不需配置集群節點的ip和FQDN,僅需要配置連接各節點的用戶信息(免密時不用配置password信息)
# 配置方式1、2和3不可配置
[test_env]
# 配置方式1: 通過TDengine獲取集群信息
username=root
password=123456
port=22# 配置方式2: 節點間通過SSH協議訪問
# firstep=192.168.0.1||fqdn=tdengine1||username=root||password=123456||port=22
# secondep=192.168.0.2||fqdn=tdengine2||username=root||password=123456||port=22
# dnode3=192.168.0.3||fqdn=tdengine3||username=root||username=123456||port=22# 配置方式3: 節點間配置免密登錄
# firstep=192.168.0.1||fqdn=tdengine1||username=root||port=22
# secondep=192.168.0.2||fqdn=tdengine2||username=root||port=22
# dnode3=192.168.0.3||fqdn=tdengine3||username=root||port=22# TDegine的Restful連接信息
[database]
username=root
password=taosdata
port=6030
rest_port=6041# Nginx服務所在服務器的連接信息
[nginx]
ip=192.168.0.100
username=root
password=123456
port=22# oem版本的版本名稱,默認不使用
# [oem]
# version=prodb# /etc/sysctl.conf中系統參數,工具會按照下面配置修改系統參數值
[sys_vars:/etc/sysctl.conf]
fs.nr_open=2147483584
fs.file-max=2147483584
net.ipv4.ip_local_port_range=10000 65534# /etc/security/limits.conf中系統參數,工具會按照下面配置修改系統參數值
[sys_vars:/etc/security/limits.conf]
* soft nproc=65536
* soft nofile=1048576
* soft stack=65536
* hard nproc=65536
* hard nofile=1048576
* hard stack=65536
root soft nproc=65536
root soft nofile=1048576
root soft stack=65536
root hard nproc=65536
root hard nofile=1048576
root hard stack=65536# 預安裝軟件列表
[app_list]
app1=screen
app2=tmux
app3=gdb
app4=fio
app5=iperf,iperf3
app6=sysstat
app7=net-tools 
app8=jansson
app9=snappy
app10=ntp,chrony
app11=tree
app12=wget# 巡檢覆蓋的TDengine服務范圍
[td_services]
ts1=taosd
ts2=taosadapter
ts3=taoskeeper
ts4=taosx
ts5=taos-explorer# 可忽略的TDengine錯誤日志
[skip_error_strs]
str1=failed to get monitor info
str2=Table does not exist
str3=failed to send
str4=Fail to get table info

巡檢范圍

磁盤巡檢范圍

No巡檢項目詳細說明告警規則
1磁盤基本信息磁盤類型和磁盤空間
2磁盤掛載信息通過 lsblk 查詢的磁盤掛載信息
3數據庫數據目錄使用情況數據目錄的掛載路徑,文件系統,存儲類型,已用空間,可用空間和空間使用率磁盤已用空間低于 15%
4數據庫數據目錄 Inode 情況數據目錄對應的 idnode 已用空間,可用空間和空間使用率

系統巡檢范圍

No巡檢項目詳細說明告警規則
1系統基本信息系統名稱、系統啟動時間、防火墻和 SELinux 服務狀態防火墻或 SElinux 服務未關閉
2域名解析配置FQDN 和 IP 信息是否配置到/etc/hosts 文件缺少任一 FQDN 的域名解析
3預安裝軟件指定的原裝軟件是否已安裝,若安裝記錄其版本
4系統參數配置檢查系統參數值是否與配置文件中指定系統參數的配置一致
5系統內存錯誤收集系統內核錯誤日志信息存在內核錯誤日志
6SWAPNESS 配置SWAPNESS 配置狀態及其配置值大小SWAPNESS 配置值大于 10
7Coredump 配置coredump 路徑是否配置1. coredump 未配置;2. coredump 掛載目錄為系統根目錄;3. coredump 文件個數大于 0

數據庫巡檢范圍

No巡檢項目詳細說明告警規則
1數據庫版本taosd、taos、taosKeeper、taosAdapter、taosX 和 taos-explorer 的版本信息服務端和客戶端的版本不一致
2taosd 進行打開文件數taosd 進行打開文件數大小文件數量跟預設值不一致
3數據庫服務狀態服務當前運行狀態任一服務運行狀態異常
4數據庫服務詳情服務自啟動配置、啟動時間、持續運行時間、內存占用空間和 CPU 使用率CPU 使用率超過 80% 持續時間超過 30 分鐘
5數據庫參數配置數據庫所有參數信息
6數據庫錯誤日志統計 taosd、taos 和 taosAdapter 的錯誤日志數量有任意錯誤日志
7數據庫 dnode 信息每個 Dnode 分配的 vnodes 數量,dnode 狀態,dnode 啟動時間和最近一次重啟時間dnode 存活數量小于集群 dnode 的總和
8數據庫 mnode 信息每個 mnode 的角色,mnode 狀態,mnode 啟動時間和最近一次重啟時間mnode 存活數量小于集群 dnode 的總和
9數據庫 vnode 信息每個 vnode 所在 dnodeId、vgroupId、db 名稱、當前狀態、啟動時間和 restored 狀態任一 vnode 的 restored 狀態部位 True
10數據庫用戶信息數據庫用戶的相關配置和權限1. Root 用戶的默認密碼未修改;2. 未配置監控專用的數據庫用戶;3. 普通數據庫用戶未定義
11數據庫權限信息數據庫 Instance 的權限信息1. 測點使用數超過授權數的 80%;2. 數據庫授權到期時間距現在少于 90 天
12數據庫慢查詢最近 30 天慢查詢數量最近 30 天有慢查詢記錄
13taosx 數據目錄taosx 數據目錄taosX 數據目錄是默認系統根目錄

庫表巡檢范圍

No巡檢項目詳細說明告警規則
1庫表占用空間數據庫本地占用磁盤空間
2庫表概要統計數據庫數量、超級表數量、子表數量、普通表數量、流數量、topic 數量和訂閱數量。數據庫本地占用磁盤空間
3測點統計每個數據庫已用測點數測點使用數超過授權數的 80%
4vgroup 分布信息每個數據庫的 vgroup 數量,每個 dnode 的 vgroup 數量
5vgroup 詳細信息每個數據庫對應 vgroup 的 Leader 和 Follower 分布情況以及 vgroups 詳情
6vnode 詳細信息每個數據庫對應 vnode 的角色、FQDN、數據目錄、占用磁盤空間、role_time、start_time 和 restored 狀態1. 目錄下 SMA 或 WAL 文件占用磁盤空間超過 DATA 文件大小;2. vnode 數量大于 CPU 核數 * 2
7數據庫副本數每個數據庫的副本數量集群副本數小于 3
8數據庫 Schema 定義每個數據庫的 Schema 定義
9超級表 Schema 定義每個超級表的 Schema 定義
10超級表詳細信息每個超級表以及對應子表數量數據庫中沒有任何超級表
11流計算信息流 Schema 定義、流計算詳情和任務詳情
12訂閱主題信息主題 schema 定義、主題詳情
13訂閱消費者信息消費者詳情
14訂閱信息訂閱詳情

Nginx 配置巡檢(可選)

No巡檢項目詳細說明告警規則
1Nginx 配置各節點的 hostanme 和 ip 是否正確配置到 Nginx 配置文件配置文件中 FQDN 配置信息缺失或錯誤

結果文件

巡檢工具運行后會在工具運行用戶在 taos.cfg 中配置的 logDir 目錄下生成三類文件,包含了巡檢報告 inspect_report.md,巡檢結構化數據 inspect.json,數據庫和超級表初始化文件 stabel_schemas.md、各節點 taos、taosd 和 taosKeeper 對應的錯誤日志文件和各服務對應的配置文件。最后會將出錯誤日志文件以外的其他所有文件壓縮為 results.zip

應用示例

在工具所在節點執行巡檢任務

./taosinspect -m local

在集群所有節點執行巡檢任務

./taosinspect -m ssh

指定配置文件并在集群所有節點執行巡檢任務

./taosinspect -m ssh -f /path_to_file/install.cfg

在集群所有節點執行巡檢任務,包括檢查 nginx 服務配置文件

./taosinspect -m ssh -f /path_to_file/install.cfg -cn true

訪問官網

更多內容歡迎訪問 TDengine 官網

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/82252.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/82252.shtml
英文地址,請注明出處:http://en.pswp.cn/web/82252.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

DHCP應用

一、DHCP介紹 在LAN(局域網)中我們常會遇到以下的情況: 1.不知道如何配置IP地址及相關信息的員工,無法上網;2.IP地址配置沖突,無法上網;3.來訪用戶因不熟悉公司網絡情況無法上網; 以上這些情況都是日常最…

LabVIEW多按鍵自動化檢測系統

LabVIEW開發一套高精度按鍵力與行程自動化檢測系統,針對傳統檢測設備自動化程度低、定位誤差大等痛點,實現多按鍵產品的全流程自動化測試。系統集成 6 軸工業機器人、高精度傳感器及實時數據處理模塊,滿足汽車電子、消費電子等領域對按鍵手感…

嵌入式硬件篇---蜂鳴器

蜂鳴器是一種常用的電子發聲元件,主要分為有源蜂鳴器和無源蜂鳴器兩類。它們在結構、工作原理、驅動方式、應用場景等方面存在顯著差異。以下是詳細介紹: 一、核心定義與結構差異 1. 有源蜂鳴器 定義: “有源” 指內部自帶振蕩電路&#x…

600+純CSS加載動畫一鍵獲取指南

CSS-Loaders.com 完整使用指南:600純CSS加載動畫庫 🎯 什么是 CSS-Loaders.com? CSS-Loaders.com 是一個專門提供純CSS加載動畫的資源網站,擁有超過600個精美的單元素加載器。這個網站的最大特色是所有動畫都只需要一個HTML元素…

國內高頻混壓PCB廠家有哪些?

一、技術領先型廠商(聚焦材料與工藝突破) 獵板PCB 技術亮點:真空層壓工藝實現FR-4與羅杰斯高頻材料(RO4350B/RO3003)混壓,阻抗公差3%,支持64單元/板的5G天線模塊,插損降低15%。 應用…

volatile,synchronized,原子操作實現原理,緩存一致性協議

文章目錄 緩存一致性協議(MESI)volatile1. volatile 的作用2.volatile的底層實現3,volatile 實現單例模式的雙重鎖(面手寫) synchronized1,基本用法2,可重入性3,Java對象頭4,實現原理(1)代碼塊同步的實現&a…

webfuture:如何屏蔽后臺發文界面的保存為新文章按鈕?

問題描述: 如何屏蔽后臺發文界面的保存為新文章按鈕? 問題解決:修改這個文件 /Admin/Content/Base/css/base.css 定義這個的id saveAsNewItemSubmit #saveAsNewItemSubmit{display: none;}

SpringBoot集成第三方jar的完整指南

原文地址:https://blog.csdn.net/weixin_43826336/article/details/141640152?ops_request_misc%257B%2522request%255Fid%2522%253A%25227d4118ef2d572ba4428caf83f1d2bb28%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id7d4118…

題目 3293: 藍橋杯2024年第十五屆決賽真題-數位翻轉

題目 3293: 藍橋杯2024年第十五屆決賽真題-數位翻轉 時間限制: 2s 內存限制: 192MB 提交: 1046 解決: 318 題目描述 小明創造了一個函數 f(x) 用來翻轉 x 的二進制的數位(無前導 0)。比如f(11) 13,因為 11 (1011)2,將其左右翻轉…

word為跨頁表格新加表頭和表名

問題: 當表格過長需要跨頁時(如下圖所示),某些格式要求需要轉頁接排加續表。 方法一: 1、選中表格,在“表布局”區域點開“自動調整”,選擇“固定列寬”(防止后續拆分表格后表格變…

Ubuntu上進行VS Code的配置

1. 安裝VS code sudo snap install code --classic 2. 安裝GCC sudo apt install build-essential 3. 安裝VS Code中文包 打開 VS Code 點擊左側活動欄中的擴展圖標(或按Ctrl+Shift+X) 在搜索框中輸入:Chinese (Simplified) 選擇由 Microsoft 提供的 中文(簡體)語言包…

vr中風--數據處理模型搭建與訓練2

位置http://localhost:8888/notebooks/Untitled1-Copy1.ipynb # -*- coding: utf-8 -*- """ MUSED-I康復評估系統(增強版) 包含:多通道sEMG數據增強、混合模型架構、標準化處理 """ import numpy as np impor…

【LLM vs Agent】從語言模型到智能體,人工智能邁出的關鍵一步

目錄 一、什么是 LLM?語言的天才,思維的起點 ? 特點小結: 二、什么是 Agent?智能的執行者,自主的決策者 ? 特點小結: 三、LLM 與 Agent 的關系:是工具,更是大腦 四、案例實戰…

安裝DockerDocker-Compose

Docker 1、換掉關鍵文件 vim /etc/yum.repos.d/CentOS-Base.repo ▽ [base] nameCentOS-$releasever - Base - Mirrors Aliyun baseurlhttp://mirrors.aliyun.com/centos/$releasever/os/$basearch/ gpgcheck1 enabled1 gpgkeyhttp://mirrors.aliyun.com/centos/RPM-GPG-KEY-C…

Perl One-liner 數據處理——基礎語法篇【匠心】

Perl(Practical Extraction and Report Language)是一種功能強大且靈活的腳本語言,因其強大的文本處理能力和簡潔的語法而廣受開發者和系統管理員的喜愛。特別是在命令行環境下,Perl 的 one-liner(單行腳本&#xff09…

Go語言defer關鍵字:延遲執行的精妙設計

深度解析Go語言defer關鍵字:延遲執行的精妙設計 引言 在Go語言中,defer語句是一種獨特而強大的控制流機制,它通過??延遲執行??的方式解決資源管理、錯誤處理和異常恢復等關鍵問題。理解defer的工作原理是掌握Go并發編程和錯誤處理的關鍵…

C#項目07-二維數組的隨機創建

實現需求 創建二維數組,數組的列和寬為隨機,數組內的數也是隨機 知識點 1、Random類 Public Random rd new Random(); int Num_Int rd.Next(1, 100);2、數組上下限。 //定義數組 int[] G_Array new int[1,2,3,4];//一維數組 int[,] G_Array_T …

.NET WinForm圖像識別二維碼/條形碼并讀取其中內容

需求:圖像識別出一張圖片中的二維碼或者條形碼,并讀取其中內容。 一、安裝庫(特別注意,網上很多都沒說清楚) 如果是基于.net framework,則安裝ZXing.Net(建議0.14.0版本左右,具體看實際,版本太高,部分接口…

Guava限頻器RateLimiter的使用示例

文章目錄 1. 背景說明2. API與方法3. 示例代碼3.1 基礎工具方法3.2 測試任務類3.3 測試和統計方法3.4 測試兩種模式的限頻器3.5 測試緩沖時間與等待耗時 4. 完整的測試代碼5. 簡單小結 1. 背景說明 高并發應用場景有3大利器: 緩存、限流、熔斷。 也有說4利器的: 緩存、限流、…

(面試)獲取View寬高的幾種方式

Android 中獲取 View 寬高的幾種方式,以及它們的適用場景和注意事項: 1. View.getWidth() 和 View.getHeight() 原理: 直接從 View 對象中獲取已經計算好的寬度和高度。 優點: 簡單直接。 缺點: 在 onCreate()、onStart() 等生命周期方法中&#xff0…