Start or Stop Fusion
bin
directory below the Fusion home directory:/opt/fusion/latest.***__x__***/bin
(Unix)C:\lucidworks\fusion{backslash}latest.***__x__***{backslash}bin
(Windows)/opt/fusion/latest.***__x__***/bin/fusion <command>
C:\lucidworks\fusion{backslash}latest.***__x__***{backslash}bin{backslash}fusion.cmd <command>
/opt/fusion/latest.***__x__***/bin/<servicename> <command>
For example: /opt/fusion/latest.***__x__***/bin/proxy restart
C:\lucidworks\fusion{backslash}latest.***__x__***{backslash}bin{backslash}<servicename>.cmd <command>
For example: C:\lucidworks\fusion{backslash}latest.***__x__***{backslash}bin{backslash}proxy.cmd restart
fusion
/fusion.cmd
script to issue the command to all services in the correct sequence, or they can be issued to an individual service.start | Start one or all Fusion services. |
status | Display the status of one or all Fusion services. |
restart | Restart one or all Fusion services. |
stop | Stop one or all Fusion services. |
run | Start one or all Fusion services in the foreground. |
run-in-shell (Unix only) (Fusion 4.2+ only.) | Start an individual service using Bash’s exec function, which allows the service to assume the shell process’s PID. See Run Fusion in shell mode below. |
fusion.cors
(fusion.properties
in Fusion 4.x) file includes the property definition group.default
. This property defines the Fusion services to start and stop by default (if no property is named in the start or stop command).The default list of services out-of-the-box is also the minimum set of services, with the exception of the log-shipper
service, which you can remove if you do not use it.Here is the group.default
definition in fusion.cors
(fusion.properties
in Fusion 4.x):In Fusion 4.1+.log-shipper
service, these are all required services. Even if only using RPC connectors, the connectors-classic
service is required. The log-shipper
service is required to use the Log Shipper.In Fusion 4.0.x.connectors-classic
service is required.group.default
property, for example, to include Spark and SQL related services:group.default
property, for example, to include Spark related services:group
properties.In Fusion 4.1+.For example, define this group property to start and stop services for Spark and SQL together:C:\lucidworks
).Give the commands that follow from the directory fusion/latest.***__x__***/bin
.group.default
property.How to start all required services./fusion start
./fusion start default
. You can omit the group name default
.fusion.cors
(fusion.properties
in Fusion 4.x) that defines the group.Examples of when this is useful are:spark-master
, spark-worker
, and sql
services are interdependent and should be started and stopped together.
connectors-classic
and connectors-rpc
services to be running.
./admin-ui start
./api start
./connectors-classic start
./connectors-rpc start
./log-shipper start
./proxy start
./solr start
./spark-master start
./spark-worker start
./sql start
./webapps start
./zookeeper start
run
command-line argument in place of start
.exec
function, which allows the service to assume the shell process’s PID, use the run-in-shell
command-line argument in place of start
or run
. The run-in-shell
argument can only be used to start one service at a time.Examplesstop
command-line argument in place of start
, for example:./solr stop
systemd
for process management.systemd
to launch Fusion when your system starts.How to launch Fusion at system start:systemd
directory, for example:
fusion.service
to provide correct values for the FUSION_HOME
and JAVA_HOME
environment variables.
systemd
management file, which launches Fusion under systemd
management:
systemctl
command to start and stop Fusion:https://FUSION_HOST:FUSION_PORT/var/log
./opt/lucidworks/
directory.To configure upstart, run the following commands:no JAVA_HOME set
, replace sudo
with sudo -E
. Then you can use the service
command to control the server:stop
and status
.Log files for Fusion services are found in directories under https://FUSION_HOST:FUSION_PORT/var/log
.C:\lucidworks
).Give the commands that follow from the directory fusion\latest.***__x__***\bin
.admin-ui.cmd start
api.cmd start
connectors-classic.cmd start
connectors-rpc.cmd start
log-shipper.cmd start
proxy.cmd start
solr.cmd start
spark-master.cmd start
spark-worker.cmd start
sql.cmd start
webapps.cmd start
zookeeper.cmd start
run
command-line argument in place of start
, for example:connectors.cmd run
fusion.cmd stop
(Stop all Fusion services, if they are running as Java processes)stop-services.cmd
(Stop all Fusion services, if they are running as Windows services)stop
command-line argument in place of start
, for example:connectors.cmd stop
Field | Value |
---|---|
Account | FUSION_SVC |
Domain | qe |
Installation directory | C:\fusion<version> |
Server | EC2AMAZ-79FD9JL |
install-services.cmd
as a local administrator:
FUSION_SVC
user account.
http://localhost:8764/
(replace localhost
with your server name or IP address if necessary).The first time you access Fusion, you must set the password for the user admin
and agree to the Fusion Licensing Agreement (which contains terms of service). This is followed by an optional registration step. After this, Fusion displays the Fusion launcher (the page from which you can open apps).Install Fusion 4.x on a Single Node
:fusion.properties
file in https://FUSION_HOST:FUSION_PORT/conf/
(on Unix or macOS) or fusion\4.2.x\conf\
(on Windows).Port | Service |
---|---|
8091 | Fusion agent |
8763 | Fusion UI service (use port 8764 to access the Fusion UI) |
8764 | Fusion proxy This service includes the Fusion Authorization Proxy. |
8765 | Fusion API Services |
8766 | Spark Master |
8769 | Spark Worker |
8771 | Connectors RPC Service This service can distribute connector jobs to as many Fusion nodes as you want. It uses HTTP/2 and has an SDK that you can use to build your own connectors. |
8780 | Web Apps This service delivers the UIs of Fusion apps. |
8781 | Log shipper Monitoring port that agent uses to check the health of the log shipper process. This port does not need to be accessible from other nodes. |
8983 | Solr This is the embedded Solr instance included in the Fusion distribution. |
8984 | Connectors Classic Service This service runs nondistributed connector jobs. It uses HTTP/1.1 and has no SDK. |
9983 | ZooKeeper The embedded ZooKeeper used by Fusion services. IMPORTANT: The ZooKeeper port is also defined in the configuration file for the embedded ZooKeeper, https://FUSION_HOST:FUSION_PORT/conf/zookeeper/zoo.cfg (on Unix or macOS) or fusion\4.2.x\conf\zookeeper\zoo.cfg (on Windows). Look for clientPort . If you run Fusion with the embedded ZooKeeper, remember to change the port number in both places. |
47100-48099 | Apache Ignite TCP communication port range (used by the API, Connectors Classic, Connectors RPC, and Proxy services) |
48100-48199 | Apache Ignite shared memory port range (used by the API, Connectors Classic, Connectors RPC, and Proxy services) |
49200-49299 | Apache Ignite discovery port range (used by API, Connectors Classic, Connectors RPC, and Proxy services) |
/opt/lucidworks
).
fusion-version.x.tar.gz
file, for example:
$ cd /opt/lucidworks
tar -xf
(or tar -xvf
), for example:
$ tar -xf fusion-version.x.tar.gz
The resulting directory is named https://FUSION_HOST:FUSION_PORT
. You can rename this if you wish. This directory is considered your Fusion home directory. See Directories, Files, and Ports for the contents of the https://FUSION_HOST:FUSION_PORT
directory.
C:\lucidworks
).Give the commands that follow from the directory fusion/latest.x/bin
.Start the required services that are defined in the group.default
property.How to start all required services./fusion start
./fusion start default
. You can omit the group name default
.run
command-line argument in place of start
.stop
command-line argument in place of start
.systemd
for process management.For more information about using systemd
, see Using systemd to manage processes./opt/lucidworks/
directory.For more information about using Upstart, see Using Ubuntu Upstart to manage processes.fusion\latest.x
. This directory is considered your Fusion home directory. See Directories, Files, and Ports for the contents of the fusion\latest.x
directory.
bin\install-services.cmd
.
COMPUTERNAME\username
or DOMAIN\username
(if your computer is part of a Windows domain).
C:\lucidworks
).Give the commands that follow from the directory fusion\latest.x\bin
.How to start all required Fusion services as Java processesstop
command-line argument in place of start
.Install a Fusion 4.x Cluster
Install a Fusion 4.x Cluster (Unix)
.tar.gz
). Move this file to each node that will run Fusion.
https://FUSION_HOST:FUSION_PORT
. You can rename this if you wish. This directory is considered your Fusion home directory. See Directories, files, and ports for the contents of the https://FUSION_HOST:FUSION_PORT
directory.https://FUSION_HOST:FUSION_PORT/data/zookeeper
directory, and a file called myid
in that directory. Edit the file and save the ZooKeeper myid assigned for this node as the only contents.https://FUSION_HOST:FUSION_PORT/conf/zookeeper/zoo.cfg
file in a text editor and add the following after the clientPort
line (change the hostnames or IP addresses to the correct ones for your servers):
localhost
or 127.0.0.1
as the hostname/IP. Specify the hostname/IP that other nodes will use when communicating with the current node.default.zk.connect
in https://FUSION_HOST:FUSION_PORT/conf/fusion.cors
(fusion.properties
in Fusion 4.x) to point to the ZooKeeper hosts:
bin/zookeeper start
. Zookeeper should start without errors. If a ZooKeeper instance fails to start, check the log at https://FUSION_HOST:FUSION_PORT/var/log/zookeeper/zookeeper.log
.bin/fusion start
.http://FIRST_NODE_IP:8764
, where FIRST_NODE_IP
is the IP address of your first Fusion node.http://ANY_NODE_IP:8983/solr/#/~cloud
, where ANY_NODE_IP
is the IP address of a Solr node. All of the nodes should appear green.http://NODE_IP:8764
.fusion\latest.x\data\zookeeper
directory, and a file called myid
in that directory. Edit the file and save the ZooKeeper myid assigned for this node as the only contents.fusion\latest.x\conf\zookeeper\zoo.cfg
file in a text editor and add the following after the clientPort
line (change the hostnames or IP addresses to the correct ones for your servers):
conf/fusion.cors
(fusion.properties
in Fusion 4.x) and remove zookeeper
from the group.default
list. This will make it so that ZooKeeper does not start when you start Fusion.default.zk.connect
in https://FUSION_HOST:FUSION_PORT/conf/fusion.cors
(fusion.properties
in Fusion 4.x) to point to the ZooKeeper hosts:
bin/zookeeper start
. Zookeeper should start without errors. If a ZooKeeper instance fails to start, check the log at https://FUSION_HOST:FUSION_PORT/var/log/zookeeper/zookeeper.log
.bin/fusion start
.http://FIRST_NODE_IP:8764
, where FIRST_NODE_IP
is the IP address of your first Fusion node.http://ANY_NODE_IP:8983/solr/#/~cloud
, where ANY_NODE_IP
is the IP address of a Solr node. All of the nodes should appear green.http://NODE_IP:8764
.
Consult your load balancer’s documentation for instructions./tmp/.java_pid<pid>
file is created and is the socket used:/tmp/.java_pid<pid>
is deleted after ten days on a standard Amazon Linux in EC2.When the JVM code the agent uses cannot locate the file, then it:-QUIT
message to the JVMagent.log
from the logstash configuration. The logshipping is turned off for the file. The disadvantage to this option is that the metrics are missing./tmp
files older than “x” days to exclude deleting the /tmp/.java_pid<pid>
files. If your system is running the Linux Systemd software suite on EC2, the setting is typically located in the usr/lib/tmpfiles.d/tmp.conf
file. For Dial On Demand (DOD), remove the call that configures the JMX Metrics requirement for the debugger attachment to the Java service.Install a Fusion 4.x Cluster (Windows)
.zip
). Download the Fusion zip file for the latest version of Fusion to each node that will run Fusion, and move the file to where you would like Fusion to reside in your filesystem. It will appear as a compressed folder.
fusion\latest.x
. This directory is considered your Fusion home directory. You can rename it if you wish. See Directories, Files, and Ports for the contents of the Fusion home directory.
fusion\latest.x\data\zookeeper
directory, and a file called myid
in that directory. Edit the file and save the ZooKeeper myid assigned for this node as the only contents.fusion\latest.x\conf\zookeeper\zoo.cfg
file in a text editor and add the following after the clientPort
line (change the hostnames or IP addresses to the correct ones for your servers):
localhost
or 127.0.0.1
as the hostname/IP. Specify the hostname/IP that other nodes will use when communicating with the current node.default.zk.connect
in fusion\latest.x\conf\fusion.cors
(fusion.properties
in Fusion 4.x) to point to the ZooKeeper hosts:bin\zookeeper start
. Zookeeper should start without errors. If a ZooKeeper instance fails to start, check the log at fusion\latest.x\var\log\zookeeper\zookeeper.log
.
bin\fusion start
.
http://FIRST_NODE_IP:8764
, where FIRST_NODE_IP
is the IP address of your first Fusion node.
http://ANY_NODE_IP:8983/solr/#/~cloud
, where ANY_NODE_IP
is the IP address of a Solr node. All of the nodes should appear green.
http://NODE_IP:8764
.fusion\latest.x\data\zookeeper
directory, and a file called myid
in that directory. Edit the file and save the ZooKeeper myid assigned for this node as the only contents.fusion\latest.x\conf\zookeeper\zoo.cfg
file in a text editor and add the following after the clientPort
line (change the hostnames or IP addresses to the correct ones for your servers):
conf\fusion.cors
(fusion.properties
in Fusion 4.x) and remove zookeeper
from the group.default
list. This will make it so that ZooKeeper does not start when you start Fusion.default.zk.connect
in fusion\latest.x\conf\fusion.cors
(fusion.properties
in Fusion 4.x) to point to the ZooKeeper hosts:
bin\zookeeper start
. Zookeeper should start without errors. If a ZooKeeper instance fails to start, check the log at fusion\latest.x\var\log\zookeeper\zookeeper.log
.bin\fusion start
.http://FIRST_NODE_IP:8764
, where FIRST_NODE_IP
is the IP address of your first Fusion node.http://ANY_NODE_IP:8983/solr/#/~cloud
, where ANY_NODE_IP
is the IP address of a Solr node. All of the nodes should appear green.http://NODE_IP:8764
.
Consult your load balancer’s documentation for instructions.Integrate Fusion 4.x with an Existing Solr Deployment
Troubleshoot When Installing Fusion 4.x
bin
directory not in the PATH
environment variable.https://FUSION_HOST:FUSION_PORT/conf/fusion.cors
(fusion.properties
in Fusion 4.x):JAVA_HOME
.
To check the setting of this variable, log in to the account used to run Fusion, and check that this variable is set to the proper value.
On a linux, Mac, or other Unix system, use the following command:java
and javac
commands.
To check the Java version invoked by these commands, run the following commands from a shell or terminal window:https://FUSION_HOST:FUSION_PORT/bin/fusion start
completes without reporting an error, but the
Fusion UI displays a message that it cannot find Collections or Datasources,
this may be due to Fusion services not being able to communicate properly (via ZooKeeper).
This can happen with developer deployments running on a laptop if the network connection
changes or is interrupted, especially when using the embedded ZooKeeper instance
that is bundled with Fusion.In this situation, you should stop Fusion, inspect the system processes
and if necessary, manually terminate running processes and cleanup .pid
files
to bring the system back to a clean state, then start Fusion once again.Although the Fusion run script bin/fusion
provides a restart option,
the restart option assumes a correctly functioning system and cannot
always recover from system failure.To stop Fusion:Run the script https://FUSION_HOST:FUSION_PORT/bin/fusion
with the argument stop
:.pid
file in the directory https://FUSION_HOST:FUSION_PORT/var
.
For a Fusion instance that is up and running, we see the following set of .pid
files:.pid
created by a single Fusion instance running with embedded ZooKeeper and Solr.But if no Fusion services are running, there should not be any .pid
files.
In the case that all services have been stopped, but there are still some .pid
files found,
these files should be deleted before starting Fusion.https://FUSION_HOST:FUSION_PORT/var/log
.If you experience unexpected termination when running Fusion, first look in the log files for clues.One setting you can look into is in $FUSION_HOME/conf/fusion.cors: default.supervision.pollingFailureCountThreshold
.By default, pollingFailureCountThreshold
is set to 1
, so the Agent restarts all services the second time it fails to reach a service. Try a modest increase, for example set pollingFailureCountThreshold
to 3
.Log file names that start with “oom” indicate out-of-memory problems.
You might need to increase the amount of memory allotted to that service.
The amount of memory allotted to each kind of Fusion service is controlled by
environment variables that are set in the
fusion.cors
(fusion.properties
in Fusion 4.x) file.java
installed on the %PATH%
? To use a different Java, specify it in bin/windows-service-wrapper.xml
.var/log/windows-service-wrapper.log
?bin\fusion start
?conf/fusion.cors
(fusion.properties
in Fusion 4.x). Go to the jvmOptions
for the service in question and change the value of the -Xmx
flag. By default you will see something like:-Xmx1g
means this service will fail if it needs more than 1 gigabyte of memory to operate. Increase this memory, for example set the flag to Xmx4g
for an additional 3 gigabytes. 1g can be very low for some workloads.Upgrade to Fusion 4.x
/opt/fusion/x.y.z/var/upgrade/tmp/migrator.log
(on Unix) or C:\lucidworks\var\fusion\x.y.z\upgrade\tmp\migrator.log
(on Windows). The x.y.z directory is for the Fusion version that you are migrating from.Migrate Fusion Objects
Export an app | Import an app | Export an object | Import an object | Add an object to an app | |
Fusion UI | App configuration | Launcher (entire app) App configuration (combine apps) | - | - | Object Explorer |
Objects API (endpoints) | GET from export endpoint | POST to import endpoint | GET from export endpoint | POST to import endpoint | - |
Scale a Fusion 4.x Cluster
fusion.cors
(fusion.properties
in Fusion 4.x) file to match your requirements.
If you will also run the embedded ZooKeeper, add the new node’s IP/hostname and port to the default.zk.connect
string and copy this change to all other instances in your cluster. Configure the memory and other JVM options for the Fusion modules, then save the file.
$FUSION_HOME/conf/zookeeper/zoo.cfg
file from one of the existing nodes to the new node, overwriting the default file.
zoo.cfg
file.
The entry format is server.x=IP:port:port
. For example, if this is the 5th node, then the new entry in zoo.cfg
is server.5=IP:port:port
.
zookeeper
folder under $FUSION_HOME/data
.
myid
file in $FUSION_HOME/data/zookeeper
.
The contents of this file must be an integer equal to the number of the new ZooKeeper node in the ensemble. For example, if the new node will be the 5th node in your ZooKeeper ensemble, then the myid
file should contain the value “5”.
$FUSION_HOME/data/zookeeper/version-2
directory from one of the existing nodes to the new node, overwriting the default directory.
zkcli
script, located in $FUSION_HOME/apps/solr-dist/server/scripts/cloud-scripts
. Use zkcli.sh
for Unix or zkcli.bat
for Windows. The examples below use the Unix script.
/lucid/search-clusters/default
/lwfusion/<fusion_version>/core/search-clusters/default
connectString
key and replace the old IP value with the IP of the new Fusion node.
fusion.cors
(fusion.properties
in Fusion 4.x) as follows:
group.default
to include only the Solr service.
For example, change
default.zk.connect
and point it to the cluster’s ZooKeeper instances.
For example, change
http://<new-node-hostname>:8983/solr/
.