簡介
本檔案介紹對雲原生部署平台(CNDP)PCF中看到的Splunk問題進行故障排除的程式。
必要條件
需求
思科建議您瞭解以下主題:
·策略控制功能(PCF)
· 5G CNDP
·多克和庫伯內特
採用元件
本文中的資訊係根據以下軟體和硬體版本:
· PCF REL_2023.01.2
· Kubernetes v1.24.6
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
背景資訊
在此設定中,CNDP承載PCF。
Splunk Server是Splunk軟體平台的核心元件。它是一種可擴展且功能強大的解決方案,可用於收集、索引、搜尋、分析和視覺化機器生成的資料。
Splunk Server作為一個分散式系統運行,可以處理來自各種源的資料,包括日誌、事件、度量和其他電腦資料。它提供了收集和儲存資料、執行即時索引和搜尋的基礎架構,並通過其基於Web的使用者介面提供洞察。
PCF Ops-Center for Splunk Connection Down中存在警報規則
alerts rules group splunk-forwarding-status-change
rule splunk-forwarding-status-change
expression "splunk_log_forwarding_status== 1"
duration 1m
severity major
type "Equipment Alarm"
annotation description
value "splunk-forward-log Down"
注意:您需要驗證此規則是否在PCF運營中心中存在,以便有效告警Splunk連線問題。
問題
您會看到有關Splunk轉發故障的通用執行環境(CEE)操作中心的警報。
Command:
cee# show alerts active summary summary
Example:
[pcf01/pcfapp] cee# show alerts active summary
NAME UID SEVERITY STARTS AT DURATION SOURCE SUMMARY
----------------------------------------------------------------------------------------------------------
splunk-forwarding-sta 23df441759f5 major 05-12T22:47:21 43h33m50s pcf-master-3 Unknown
splunk-forwarding-sta 0bf8ad5f91f1 major 05-12T19:07:51 3h20m20s pcf-master-2 Unknown
splunk-forwarding-sta 612f428fa42e major 05-09T06:43:01 70h32m40s pcf-master-2 Unknown
splunk-forwarding-sta 23df441759f5 major 05-12T22:47:21 43h33m50s pcf-master-3 Unknown
疑難排解
步驟 1.連線到主節點並驗證Podconsolidated-logging-0
狀態。
Command:
cloud-user@pcf01-master-1$ kubectl get pods -A |grep consolidated-logging-0
Example:
cloud-user@pcf01-master-1:~$ kubectl get pods -A -o wide | grep consolidated-logging-0
NAMESPACE NAME READY STATUS RESTARTS AGE
pcf-pcf01 consolidated-logging-0 1/1 Running 0 2d22h xxx.xxx.x.xxx pcf01-primary-1 <none> <none>
cloud-user@pcf01-master-1:~$
步驟 2.使用以下命令登入到統一的Pod,以驗證Splunk連線。
若要檢查連線是否已在連線埠8088上建立,可以使用以下命令:
cloud-user@pcf01-master-1:~$ kubectl exec -it -n pcf-pcf01 consolidated-logging-0 bash
kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl exec [POD] -- [COMMAND] instead.
groups: cannot find name for group ID 303
I have no name!@consolidated-logging-0:/$
I have no name!@consolidated-logging-0:/$
I have no name!@consolidated-logging-0:/$ netstat -anp | grep 8088
I have no name!@consolidated-logging-0:/$
I have no name!@consolidated-logging-0:/$
步驟 3.如果沒有與Splunk的連線,請驗證PDF Ops-Center上的配置。
cloud-user@pcf01-master-1:~$ ssh -p 2024 admin@$(kubectl get svc -A -o wide |grep 2024 | grep ops-center-pcf | awk '{ print $4}')
[pcf01/pcfapp] pcf#show running-config| include splunk
[pcf01/pcfapp] pcf# debug splunk hec-url https://xx.xxx.xxx.xx:8088
[pcf01/pcfapp] pcf# debug splunk hec-token d3a6e077-d51b-4669-baab-1ddf19aba325
[pcf01/pcfapp] pcf#
步驟 4.如果未建立連線,請重新建立consolidated-logging-0
Pod。
cloud-user@pcf01-master-1:~$ kubectl delete pod -n pcf-pcf01 consolidated-logging-0
步驟 5.刪除後consolidated-logging-0
,驗證Pod。
cloud-user@pcf01-master-1:~$ kubectl get pods -A | grep consolidated-logging-0
步驟 6.連線到Podconsolidated-logging
,完成到端口netstat
8088的連線,並檢驗Splunk連線是否建立。
cloud-user@pcf01-master-1:$ kubectl exec -it -n pcf-wscbmpcf consolidated-logging-0 bash
I have no name!@consolidated-logging-0:/$ netstat -anp | grep 8088
tcp 0 0 xxx.xxx.xx.xxx:60808 xx.xxx.xxx.xx:8088 ESTABLISHED 1/java
tcp 0 4957 xxx.xxx.xx.xxx:51044 xx.xxx.xxx.xx:8088 ESTABLISHED 1/java
tcp 0 4963 xxx.xxx.xx.xxx:59298 xx.xxx.xxx.xx:8088 ESTABLISHED 1/java
tcp 0 0 xxx.xxx.xx.xxx:34938 xx.xxx.xxx.xx:8088 ESTABLISHED 1/java
tcp 0 0 xxx.xxx.xx.xxx:43964 xx.xxx.xxx.xx:8088 ESTABLISHED 1/java