Hi AML,
Here is how it works:
on each batch and front node, you have:
/opt/kaltura/app/configurations/db.ini
The parts relevant to Sphinx are:
[sphinx_datasources]
datasources.0 = sphinx1
datasources.1 = sphinx2
Which later in the file are mapped to:
sphinx1.adapter = mysql
sphinx1.connection.dsn = "mysql:host=mysphinx0;port=9312;"
sphinx2.adapter = mysql
sphinx2.connection.dsn = "mysql:host=mysphinx1;port=9312;"
On each Sphinx node, you should have the kaltura-populate daemon running, which is started with:
#/etc/init.d/kaltura-populate start
This daemon writes a log to /opt/kaltura/log/kaltura_populate.log
its job is to make sure Sphinx is always synchronized with the operational DB [MySQL].
The load balancing between Sphinx instances is done at the application level. If one is unresponsive, the app will not route requests to it.
Hope this helps,