Spotlight with Elasticsearch Backend
Using Elasticsearch as search engine, is the recommended setup for any deployment.
You have to install the following components:
Elasticsearch doesn't need any specific configuration to work with Samba, once it's installed and up and running, you're ready to index your filesystems with fscrawler.
You have to set a few global options to tell Samba how to connect to Elasticsearch and you have to enable Spotlight on a per share basis.
[global] spotlight backend = elasticsearch elasticsearch:address = localhost elasticsearch:port = 9200
[share] ... spotlight = yes
See the smb.conf manpage for detailed explanation of all available parameters.
There's a handy commandline tool that works as Spotlight client: mdfind. See the manpage of mdfind for usage details.