Install the app and use an account with the required setup capabilities. If you enable authentication, update every existing Edge Processor instance before you run this procedure.
First-time setup is an idempotent PUT that replaces the complete supported setup state. The endpoint uses the nobody app namespace.
- Set the Splunk management URL.
export SPLUNK_MGMT_URL='https://splunk.example.com:8089'
- Run the first-time setup request.
curl --fail --user "$SPLUNK_SETUP_USER:$SPLUNK_SETUP_PASSWORD" \
--request PUT \
--header 'Content-Type: application/json' \
--data '{
"edgeProcessorEnabled": true,
"requireAuthentication": true,
"proxyHostPort": "https://splunk.example.com:8089",
"defaultTelemetryIndexer": "indexer.example.com:9997"
}' \
"$SPLUNK_MGMT_URL/servicesNS/nobody/dmx_cmp/admin/v1/edge-processor-setup"
- Confirm that the response includes the expected setup state.
edgeProcessorEnabled and requireAuthentication are required. If you omit proxyHostPort or send an empty value, the API derives https://<host-name>:8089. Provide proxyHostPort explicitly when the request's host name is not a usable public host name. If you omit defaultTelemetryIndexer or send an empty value, the API clears its explicit setting and uses the runtime fallback in Splunk.
- Restart Splunk only when
restartRequired is true.
POST to the returned restart.endpoint with a caller that has restart_splunkd. Do not restart when restartRequired is false.
- If the setup request reports a partial failure, retry the identical
PUT before you restart.
- Inspect the persisted setup values.
curl --fail --user "$SPLUNK_SETUP_USER:$SPLUNK_SETUP_PASSWORD" \
"$SPLUNK_MGMT_URL/servicesNS/nobody/dmx_cmp/admin/v1/edge-processor-setup"
First-time setup is complete. You can now deploy an Edge Processor pipeline.