告警解釋
系統每60秒周期性檢測nscd服務的狀態,如果連續4次(3分鐘)查詢不到nscd進程或者無法獲取LdapServer中的用戶時,產生該告警。
當進程恢復且可以獲取LdapServer中的用戶時,告警恢復。
告警屬性
| 告警ID | 告警級別 | 是否自動清除 |
|---|---|---|
| 25005 | 重要 | 是 |
告警參數
| 參數名稱 | 參數含義 |
|---|---|
| 來源 | 產生告警的集群名稱。 |
| 服務名 | 產生告警的服務名稱。 |
| 主機名 | 產生告警的主機節點信息。 |
對系統的影響
nscd服務不可用時,可能會影響該節點從LdapServer上同步數據,此時,使用id命令可能會獲取不到Ldap中的數據,影響上層業務。
可能原因
- nscd服務未啟動。
- 網絡故障,無法訪問Ldap服務器。
- Name Service服務異常。
- OS執行命令慢導致無法查詢用戶。
處理步驟
檢查nscd服務是否啟動
1.在FusionInsight Manager界面,選擇“運維 > 告警 > 告警”。記錄該告警定位信息中的“主機名”的IP地址為IP1(若出現多個告警,則分別記錄其中的IP地址為IP1、IP2、IP3等)。
2.聯系運維人員,以root用戶登錄IP1節點,在該節點上執行ps -ef | grep nscd命令,查看是否有/usr/sbin/nscd進程啟動。
- 是,執行步驟5。
- 否,執行步驟3。
3.以root用戶執行service nscd restart命令,重啟nscd服務,執行ps -ef | grep nscd命令,查看服務是否啟動。
- 是,執行步驟4。
- 否,執行步驟15。
4.五分鐘后,以root用戶再次執行命令,查看服務是否存在。
- 是,執行步驟11。
- 否,執行步驟15。
檢查網絡是否故障,無法訪問ldap服務器
5.用root用戶登錄故障節點,在這個節點上使用ping命令檢查該節點與LdapServer節點的網絡是否暢通。
- 是,執行步驟6。
- 否,請聯系網絡管理員,解決網絡故障。
檢查Name Service服務是否異常
6.用root用戶登錄故障節點,執行cat /etc/nsswitch.conf命令,查看NameService配置中的“passwd”、“group”、“services”、“netgroup”、“aliases”五項配置是否正確。
正確配置請參照:“passwd: compat ldap”、“group: compat ldap”、“services: files ldap”、“netgroup: files ldap”、“aliases: files ldap”。
- 是,執行步驟7。
- 否,執行步驟9。
7.用root用戶登錄故障節點,執行cat /etc/nscd.conf命令,查看配置文件中“enable-cache passwd”、“positive-time-to-live passwd”、“enable-cache group”、“positive-time-to-live group”四項配置是否正確。
正確配置請參照: “enable-cache passwd yes ”、“positive-time-to-live passwd 600”、“enable-cache group yes”、“positive-time-to-live group 3600”。
- 是,執行步驟8。
- 否,執行步驟10。
8.用root用戶執行/usr/sbin/nscd -i group和/usr/sbin/nscd -i passwd命令,等待2分鐘,繼續執行id admin和id backup/manager命令,查看是否能查詢到結果。
- 是,執行步驟11。
- 否,執行步驟15。
9.以root用戶執行vi /etc/nsswitch.conf命令,將步驟6中的五項配置項改成正確配置,保存后執行service nscd restart命令重啟nscd服務,等待2分鐘,執行id admin和id backup/manager命令,查看是否能查詢到結果。
- 是,執行步驟11。
- 否,執行步驟15。
10.以root用戶執行vi /etc/nscd.conf命令,將步驟7中的四項配置項改成正確配置,保存后執行service nscd restart命令重啟nscd服務,等待2分鐘,執行id admin和id backup/manager命令,查看是否能查詢到結果。
- 是,執行步驟11。
- 否,執行步驟15。
11.登錄FusionInsight Manager界面,等待5分鐘,然后查看“Nscd服務異常”告警是否恢復。
- 是,處理完畢。
- 否,執行步驟12。
檢查操作系統執行命令是否卡頓
12.用root用戶登錄故障節點,執行命令 id admin ,觀察命令返回結果時長,觀察執行命令是否緩慢(超過3s即可認為執行命令慢)。
- 是,執行步驟13。
- 否,執行步驟15。
13.執行命令 cat /var/log/messages ,查看nscd是否頻繁重啟或者存在Can't contact LDAP server的異常信息。
nscd異常信息樣例:
Feb 11 11:44:42 10-120-205-33 nscd: nss_ldap: failed to bind to LDAP server ldaps://10.120.205.55:21780: Can't contact LDAP server
Feb 11 11:44:43 10-120-205-33 ntpq: nss_ldap: failed to bind to LDAP server ldaps://10.120.205.55:21780: Can't contact LDAP server
Feb 11 11:44:44 10-120-205-33 ntpq: nss_ldap: failed to bind to LDAP server ldaps://10.120.205.92:21780: Can't contact LDAP server
- 是,執行步驟14。
- 否,執行步驟15。
14.執行命令vi $BIGDATA_HOME/tmp/random_ldap_ip_order ,修改末尾數字,若原本為奇數則改為偶數,若原本為偶數則修改為奇數;
執行命令vi /etc/ldap.conf進入編輯模式,按“Insert”鍵開始編輯,然后將URI配置項的前兩個IP進行調換。
修改完成后按“Esc”鍵退出編輯模式,并輸入:wq保存退出。
執行命令 service nscd restart ,重啟nscd服務,等待5分鐘,再次執行id admin命令,觀察返回結果時長,觀察執行命令是否緩慢。
- 是,執行步驟15。
- 否,登錄其他故障節點執行步驟12至步驟14;排查“/etc/ldap.conf”修改前URI中第一個LdapServer節點,是否故障,例如業務IP不可達、網絡延時過長或者部署其他異常的軟件。
收集故障信息
15.在FusionInsight Manager界面,選擇“運維 > 日志 > 下載”。
16.在“服務”中勾選待操作集群的“LdapClient”。
17.單擊右上角的
設置日志收集的“開始時間”和“結束時間”分別為告警產生時間的前后1小時,單擊“下載”。
18.請聯系運維人員,并發送已收集的故障日志信息。
告警清除
此告警修復后,系統會自動清除此告警,無需手工清除。
參考信息
無。