Deployment Architecture

Deployment Server with multiple repository locations using repositoryLocation=

JHill
Explorer

Trying to configure a deployment server to support multiple organizations. I have created a directory structure within deployment-apps for this purpose.

I have a serverclass.conf file which should support this structure using repositoryLocation= but it doesn't seem to be working correctly as my test client is not receiving the proper configuration files.

serverclass.conf

[global]
stateOnClient = enabled
blacklist.0=*
continueMatching = true

[serverClass:aa]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/aa/
blacklist.0=*
whitelist.0=aa
[serverClass:aa:app:SplunkLightForwarder]
stateOnClient = enabled
restartSplunkd = true
[serverClass:aa:app:sample_app]
stateOnClient = disabled
[serverClass:aa:app:gettingstarted]
stateOnClient = disabled
[serverClass:aa:app:windows]
machineTypes = windows-intel,windows-x64
restartSplunkd = true
[serverClass:aa:app:unix]
machineTypes = linux-i686,linux-x86_64,freebsd-i386,sunos-sun4u
restartSplunkd = true

[serverClass:ba]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/ba/
blacklist.0=*
whitelist.0=ba
[serverClass:ba:app:SplunkLightForwarder]
stateOnClient = enabled
restartSplunkd = true
[serverClass:ba:app:sample_app]
stateOnClient = disabled
[serverClass:ba:app:gettingstarted]
stateOnClient = disabled
[serverClass:ba:app:windows]
machineTypes = windows-intel,windows-x64
restartSplunkd = true
[serverClass:ba:app:unix]
machineTypes = linux-i686,linux-x86_64,freebsd-i386,sunos-sun4u
restartSplunkd = true

deploymentclient.conf

[deployment-client]
disabled = false
clientName = ba
[target-broker:deploymentServer]
targetUri=<serverip>:8089
Tags (2)
0 Karma
1 Solution

JHill
Explorer

UPDATED Ended up changing the configuration once again. Removed the filterType= and blacklist= stanzas all together to get the configuration working properly.

I used the filterType=blacklist stanza which worked but ended up breaking the machineTypes filter further into the configuration.

Upon removing filterType=blacklist and blacklist.0=* the clients are properly parsing through the serverclass.conf file and receiving the proper apps and configurations for those apps.

So my configuration ends up as below.

[serverClass:aa]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/aa/
whitelist.0=aa
[serverClass:aa:app:SplunkLightForwarder]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/aa/
stateOnClient = enabled
restartSplunkd = true
[serverClass:aa:app:sample_app]
stateOnClient = disabled
[serverClass:aa:app:gettingstarted]
stateOnClient = disabled
[serverClass:aa:app:windows]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/aa/
machineTypes = windows-intel,windows-x64
restartSplunkd = true
[serverClass:aa:app:unix]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/aa/
machineTypes = linux-i686,linux-x86_64,freebsd-i386,sunos-sun4u
restartSplunkd = true

View solution in original post

JHill
Explorer

UPDATED Ended up changing the configuration once again. Removed the filterType= and blacklist= stanzas all together to get the configuration working properly.

I used the filterType=blacklist stanza which worked but ended up breaking the machineTypes filter further into the configuration.

Upon removing filterType=blacklist and blacklist.0=* the clients are properly parsing through the serverclass.conf file and receiving the proper apps and configurations for those apps.

So my configuration ends up as below.

[serverClass:aa]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/aa/
whitelist.0=aa
[serverClass:aa:app:SplunkLightForwarder]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/aa/
stateOnClient = enabled
restartSplunkd = true
[serverClass:aa:app:sample_app]
stateOnClient = disabled
[serverClass:aa:app:gettingstarted]
stateOnClient = disabled
[serverClass:aa:app:windows]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/aa/
machineTypes = windows-intel,windows-x64
restartSplunkd = true
[serverClass:aa:app:unix]
repositoryLocation = $SPLUNK_HOME/etc/deployment-apps/aa/
machineTypes = linux-i686,linux-x86_64,freebsd-i386,sunos-sun4u
restartSplunkd = true
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Event Series: The Agentic SOC: Trust Before Autonomy

AI is fundamentally changing security operations, but true progress requires more than just automation—it ...

Free Professional Services for .conf26 Attendees

This year at .conf26, we are doing something a little different. We are bringing the best minds from ...

Defend at Machine Speed: Your Guide to Security Sessions at .conf26

Splunk .conf26   With threats moving at machine speed and attack surfaces expanding across hybrid ...