Following an upgrade to Splunk 9.4.x, data ingestion unexpectedly stopped, and the KV Store service failed to start, even though the upgrade process showed KV Store had successfully upgraded to version 7.0.
Expired Default Certificates:
Default certificates can expire if they have been used for more than 3 years. If default certificates are used, follow these instructions:
$SPLUNK_HOME/bin/splunk show kvstore-status
Result: KV Store status showed as failed.
/opt/splunk/bin/splunk btool server list sslConfig --debug
If default certificates are being used (serverCert = $SPLUNK_HOME/etc/auth/server.pem caCertFile = $SPLUNK_HOME/etc/auth/cacert.pem), proceed to the next bullet point. If custom certificates are used, adjust the path in the following commands to check the expiration date:
--> openssl x509 -enddate -noout -in $SPLUNK_HOME/etc/auth/cacert.pem
--> openssl x509 -enddate -noout -in $SPLUNK_HOME/etc/auth/server.pem
Note: If any certificates were expired, they needed to be regenerated with valid parameters, ensuring proper Extended Key Usage (EKU) values (e.g., TLS Web Client Authentication for client certificates).Server Purpose:
cd $SPLUNK_HOME/etc/auth
b. Run the below command:
openssl x509 -noout -in server.pem -purpose
Expected output:
Certificate purposes:
SSL client : Yes
SSL client CA : No
SSL server : Yes
SSL server CA : No
If the above lines are returned with different values, the certificate purpose is not correct.
cd /opt/splunk/var/lib/splunk/kvstore/mongo
b. Move the spkunk.key file to the tmp directory:
mv splunk.key /tmp
c. Restart the Splunk service to take the change into effect:
$SPLUNK_HOME/bin/splunk restart
Splunk documentation on Upgrade the KV store server version 7.0 : here
steps for securing your splunk enterprise deployment with tls
How to prepare TLS certificates for use with the Splunk platform
Renew existing tls certificates
| Revision | Publish Date | Comments |
|---|---|---|
1.0 |
01-Oct-2026
|
Initial Release |