Where does Elasticsearch run in a Clustered deployment

Related to this one:

In the instructions there is no mention of elastic search anywhere. In the AIO deployment, you can see it running. But in the clustered deployment, there is no step or script that deploys elasctisarch.

I would of course run elasticsearch in at least two different nodes, but I do not even see any reference to it in system.ini or in the ans file.

In which node is is supposed to be running?

Hello @guillem_liarte ,

ES is not mandatory for the basic operation of Kaltura CE. It is used by the Kaltura esearch service to provide a better searching mechanism than that of Sphinx (see Searching with Kaltura eSearch API - Kaltura VPaaS API Documentation).

You can deploy the kaltura-elasticsearch package on the same nodes as you do Sphinx (that’s not a strict rule, however; ES can be deployed on any node, providing that it has the needed network and FS access). Please note that you should set it up such that the ES nodes are members of a cluster (for redundancy purposes) and that ES is very resource consuming so you must ensure the nodes in question have enough CPU and RAM resources.

Cheers,

@jess Thank you for the reply.

How does the rest of the deployment know about ES being present? Via database entry?

And another question: Does it then enhance or replace Sphinx?

@jess Hi!

So trying to get ES in its own nodes I get this:

/opt/kaltura/bin/kaltura-es-config.sh /root/xxx-yyy-kaltura.ans
kaltura-elasticsearch-1.0.0-7.noarch
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.mirror.transip.nl
 * extras: mirrors.xtom.nl
 * updates: centos.mirror.triple-it.nl
Package 1:java-1.8.0-openjdk-headless-1.8.0.292.b10-1.el7_9.x86_64 already installed and latest version
Nothing to do
Loaded plugins: fastestmirror
elasticsearch-oss-6.5.4.rpm                                                                                          |  33 MB  00:00:03     
Examining /var/tmp/yum-root-ea0QFk/elasticsearch-oss-6.5.4.rpm: elasticsearch-oss-6.5.4-1.noarch
Marking /var/tmp/yum-root-ea0QFk/elasticsearch-oss-6.5.4.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package elasticsearch-oss.noarch 0:6.5.4-1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

============================================================================================================================================
 Package                             Arch                     Version                      Repository                                  Size
============================================================================================================================================
Installing:
 elasticsearch-oss                   noarch                   6.5.4-1                      /elasticsearch-oss-6.5.4                    37 M

Transaction Summary
============================================================================================================================================
Install  1 Package

Total size: 37 M
Installed size: 37 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Creating elasticsearch group... OK
Creating elasticsearch user... OK
  Installing : elasticsearch-oss-6.5.4-1.noarch                                                                                         1/1 
### NOT starting on installation, please execute the following statements to configure elasticsearch service to start automatically using systemd
 sudo systemctl daemon-reload
 sudo systemctl enable elasticsearch.service
### You can start elasticsearch service by executing
 sudo systemctl start elasticsearch.service
Created elasticsearch keystore in /etc/elasticsearch
  Verifying  : elasticsearch-oss-6.5.4-1.noarch                                                                                         1/1 

Installed:
  elasticsearch-oss.noarch 0:6.5.4-1                                                                                                        

Complete!
sed: can't read /configurations/elastic/elasticsearch.template.yml: No such file or directory

That file is here:

[root@ndoamsel125 ~]# ll /opt/kaltura/app/configurations/elastic/elasticsearch.template.yml 
-rw-r--r-- 1 kaltura root 752 Jun 27  2019 /opt/kaltura/app/configurations/elastic/elasticsearch.template.yml

But for some reason the installation script does not find it. ???


May this be related?

/etc/kaltura.d/system.ini: broken symbolic link to `/opt/kaltura/app/configurations/system.ini'```

The rest of the scripts seem to be working on its own but this one seems to asssume that something s has happened before, so it needs some extra feeding.  

Install kaltura base beforehand maybe?

OK so after deploying first kaltura-base, we go further:

kaltura-elasticsearch-1.0.0-7.noarch
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.mirror.transip.nl
 * extras: nl.mirrors.clouvider.net
 * updates: centos.mirror.triple-it.nl
Package 1:java-1.8.0-openjdk-headless-1.8.0.292.b10-1.el7_9.x86_64 already installed and latest version
Nothing to do
Restarting elasticsearch (via systemctl):                  [  OK  ]
-> Downloading analysis-icu from elastic
[=================================================] 100%   
-> Installed analysis-icu
We've waited a minute and the ES daemon is still unreachable, we're giving up:(

The ES not going up is something I have also seen in the AIO, it needs you to go and start it manually.

@jess yes, this is always wrong in every deployment:

ls: cannot access /opt/kaltura/var/lib/elasticsearch/nodes: No such file or directory

It always needs to be created manually.

I have another question about this.

I have the distributed Kaltura deployed, I allocated two hots for Elasticsearch, load balanced.

I still have found no aswers about this:

There is no place in the answers file about configuration for the Elasticsearch. I find no documentation anywhere about this.

Does it replace Sphinx? Does it complement it?