BE と CN のブラックリストを管理する
このトピックでは、BE と CN のブラックリストの管理方法について説明します。
バージョン v3.3.0 以降、StarRocks は BE ブラックリスト機能をサポートしており、特定の BE ノードのクエリ実行を禁止することで、BE ノードへの接続失敗による頻繁なクエリ失敗やその他の予期しない動作を回避できます。
バージョン v4.0 以降、StarRocks は COMPUTE NODE (CN) をブラックリストに追加することをサポートしています。
デフォルトでは、StarRocks は自動的に BE と CN のブラックリストを管理し、接続が失われた BE または CN ノードをブラックリストに追加し、接続が再確立されたときにブラックリストから削除します。ただし、手動でブラックリストに追加されたノードは、StarRocks によってブラックリストから削除されません。
- この機能を使用できるのは、SYSTEM レベルの BLACKLIST 権限を持つユーザーのみです。
- 各 FE ノードは独自の BE と CN のブラックリストを保持し、他の FE ノードと共有しません。
BE/CN をブラックリストに追加する
ADD BACKEND/COMPUTE NODE BLACKLIST を使用して、手動で BE/CN ノードをブラックリストに追加できます。このステートメントでは、ブラックリストに追加する BE/CN ノードの ID を指定する必要があります。BE ID は SHOW BACKENDS を実行して取得し、CN ID は SHOW COMPUTE NODES を実行して取得できます。
例:
-- BE ID を取得します。
SHOW BACKENDS\G
*************************** 1. row ***************************
BackendId: 10001
IP: xxx.xx.xx.xxx
...
-- BE をブラックリストに追加します。
ADD BACKEND BLACKLIST 10001;
-- CN ID を取得します。
SHOW COMPUTE NODES\G
*************************** 1. row ***************************
ComputeNodeId: 10005
IP: xxx.xx.xx.xxx
...
-- CN をブラックリストに追加します。
ADD COMPUTE NODE BLACKLIST 10005;
ブラックリストから BE/CN を削除する
DELETE BACKEND/COMPUTE NODE BLACKLIST を使用して、手動で BE/CN ノードをブラックリストから削除できます。このステートメントでも、BE/CN ノードの ID を指定する必要があります。
例:
-- BE をブラックリストから削除します。
DELETE BACKEND BLACKLIST 10001;
-- CN をブラックリストから削除します。
DELETE COMPUTE NODE BLACKLIST 10005;
BE/CN ブラックリストを表示する
SHOW BACKEND/COMPUTE NODE BLACKLIST を使用して、ブラックリストにある BE/CN ノードを表示で きます。
例:
-- BE ブラックリストを表示します。
SHOW BACKEND BLACKLIST;
+-----------+------------------+---------------------+------------------------------+--------------------+
| BackendId | AddBlackListType | LostConnectionTime | LostConnectionNumberInPeriod | CheckTimePeriod(s) |
+-----------+------------------+---------------------+------------------------------+--------------------+
| 10001 | MANUAL | 2024-04-28 11:52:09 | 0 | 5 |
+-----------+------------------+---------------------+------------------------------+--------------------+
-- CN ブラックリストを表示します。
SHOW COMPUTE NODE BLACKLIST;
+---------------+------------------+---------------------+------------------------------+--------------------+
| ComputeNodeId | AddBlackListType | LostConnectionTime | LostConnectionNumberInPeriod | CheckTimePeriod(s) |
+---------------+------------------+---------------------+------------------------------+--------------------+
| 10005 | MANUAL | 2025-08-18 10:47:51 | 0 | 5 |
+---------------+------------------+---------------------+------------------------------+--------------------+
次のフィールドが返されます:
AddBlackListType: BE/CN ノードがブラックリストに追加された方法。MANUALはユーザーによって手動でブラックリストに追加されたことを示します。AUTOは StarRocks によって自動的にブラックリストに追加されたことを示します。LostConnectionTime:MANUALタイプの場合、BE/CN ノードが手動でブラックリストに追加された時間を示します。AUTOタイプの場合、最後に成功した接続が確立された時間を示します。
LostConnectionNumberInPeriod:CheckTimePeriod(s)内で検出された切断の数で、これは StarRocks がブラックリスト内の BE/CN ノードの接続状態を確認する間隔です。CheckTimePeriod(s): StarRocks がブラックリストにある BE/CN ノードの接続状態を確認する間隔。この値は FE 設定項目black_host_history_secに指定した値に評価されます。単位: 秒。