
# ALM-45427 ClickHouse服务在ZooKeeper的容量配额使用率超过阈值
#### 告警解释
告警模块按60秒周期检测ClickHouse服务在ZooKeeper的容量配额使用百分比，当检测到使用百分比超过阈值（90%），系统产生此告警。
当系统检测到使用百分比低于阈值，且告警处理完成时，告警恢复。
#### 告警属性
| 告警ID  | 告警级别     | 是否自动清除 |
|:---|:---|:---|
| 45427 | 重要（默认级别） | 是      |
   
#### 告警参数
| 参数名称 | 参数含义      |
|:---|:---|
| 来源   | 产生告警的集群名称 |
| 服务名  | 产生告警的服务名称 |
| 角色名  | 产生告警的角色名称 |
| 主机名  | 产生告警的主机名  |
   
#### 对系统的影响
ClickHouse在ZooKeeper的容量配额超过阈值后，无法通过FusionInsight Manager对ClickHouse进行集群操作，无法使用ClickHouse服务功能。
#### 可能原因
- ClickHouse在使用过程中，如表创建、插入或删除表数据等操作时，ClickHouse会在ZooKeeper的节点中创建znode，随着业务量的增加该znode实际容量可能会超过配置的阈值。
- ClickHouse在ZooKeeper上的元数据目录/clickhouse未设置有效的配额限制。
 
#### 处理步骤
**检查** **ClickHouse** **在ZooKeeper的znode节点容量值**
1. 登录ZooKeeper客户端所在主机节点，执行以下命令登录ZooKeeper客户端工具。
   
   切换到客户端安装目录。
   例如**：cd /opt/client**
   执行以下命令配置环境变量。
   **source bigdata_env**
   执行以下命令进行用户认证。(普通模式跳过此步骤)
   **kinit** *组件业务用户*
   执行以下命令登录客户端工具。
   **zkCli.sh -server** *ZooKeeper角色实例所在节点业务IP* **:** *clientPort*
   
   
2. 执行如下命令查看ZooKeeper上ClickHouse使用的配额情况，查看配额信息是否设置正常。 
   **listquota /clickhouse**
   ```
   absolute path is /zookeeper/quota/clickhouse
   Quota for path /clickhouse does not exist.
   ```
   - 如上显示为ClickHouse使用的配额信息设置异常，执行[步骤 3]。
   
   - 否则，执行[步骤 5]。
   
   
   
   
3. 在FusionInsight Manager首页，选择"集群 \> 服务 \> ZooKeeper \> 配置 \> 全部配置"，搜索"quotas.auto.check.enable"，检查参数的值是否为"true"。
   
   如果"quotas.auto.check.enable"参数设置不为"true"，则修改该参数为"true"，单击"保存"保存配置。
   
   
4. 在FusionInsight Manager首页，选择"集群 \> 服务 \> ClickHouse \> 更多 \> 同步配置"，执行ClickHouse同步配置操作，同步配置成功后，执行[步骤 1]。
5. 计算返回的结果中Output stat的bytes值与Output quota的bytes值之比是否大于0.9。
   
   **listquota /clickhouse**
   ```
   absolute path is /zookeeper/quota/clickhouse
   Output quota for /clickhouse count=200000,bytes=1000000000
   Output stat for /clickhouse count=2667,bytes=60063
   ```
   如上，Output stat对应的bytes为：60063，Output quota的bytes为：1000000000。
   - 是，执行[步骤 6]。
   
   - 否，等待五分钟查看告警是否清除，若还未消除，执行[步骤 8]。
    
   
   
6. 在FusionInsight Manager首页，选择"集群 \> 服务 \> ClickHouse \> 配置 \> 全部配置"，搜索"clickhouse.zookeeper.quota.size"参数，将该参数的值调整为[步骤 5]中Output stat的bytes值的2倍，**6000000为上限，超过6000000存在较高风险，请谨慎配置**。
7. 重启告警信息对应的ClickHouse实例，等待五分钟，查看告警是否消除。 
   - 是，处理完毕。
   
   - 否，再次执行[步骤 6]，等待五分钟，查看告警是否消除，若还未消除，执行[步骤 8]。
     ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/notice_3.0-zh-cn.png)
     重启实例期间实例不可用，当前实例节点的ClickHouse业务会执行失败。
     
   
   
   
   
**收集故障信息**
8. 在FusionInsight Manager界面，选择"运维 \> 日志 \> 下载"。
9. 在"服务"中勾选待操作集群的"ClickHouse"。
10. 在"主机"中选择对应的主机。
11. 单击右上角的![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0295706662.png)设置日志收集的"开始时间"和"结束时间"分别为告警产生时间的前后1小时，单击"下载"。
12. 请联系运维人员，并发送已收集的故障日志信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
#### 参考信息
无
