...
In this section, the Automated Deployment method for Syndeia Cloud on Linux OS is presented. In the Automated Deployment method, Syndeia admins will run scripts that download and configure Syndeia Cloud and its infrastructure components - Cassandra, JanusGraph, Kafka, and Zookeeper.
There is also an option to first download Syndeia Cloud and its infrastructure components, and then run the automated scripts to install. This is useful when working deploying Syndeia in an air-gapped environment. See the Offline Installation Mode (Optional) section below to learn more.
Syndeia admins must use either the Automated Deployment (presented here) or the Semi-Automated Deployment method. See the guidance on the parent page: Deployment Methods.
...
Deployment pageread and understanding of:
Hardware that meets Requirements
Software that meets Version Requirements
Supported OS deployed:
Preferred and Recommended - RHEL/CentOS/Alma Linux v7.9+ -8.6 with Console and/or SSH access enabled
( INFORMATIONAL: SC Web Ports 9000 (HTTP) | 9443 (HTTPS) will be opened automatically by adding a
firewall
service definition/etc/firewalld/services/syndeia.xml
)
Software: Compatibility Layer Components
Linux:
JRE/JDK (automatically installed during Cassandra installation)
Software: Infrastructure Components (automatically downloaded OR can use offline mode, see below)
Apache Cassandra
Janusgraph
Apache Zookeeper
Apache Kafka
Software: Syndeia Cloud (SC) Components
Syndeia Cloud (SC) media file .ZIPs downloaded : Download .ZIPs from password-protected links provided in the Intercax Helpdesk ticket request where you originally requested received your Syndeia Cloud license. Filenames for each are as follows.
syndeia-cloud-3.5-SP2_cassandra_zookeeper_kafka_setup.zip
syndeia-cloud-3.5-SP2_janusgraph_setup.zip
syndeia-cloud-3.5-SP2.zip
...
If you are not in an offline environment, ex: air-gapped , & your server has internet access, simply skip to the next step.
If you are in an air-gapped environment, or wish to do an offline installation, please see the Offline Installation Mode (Optional) page.
...
Steps
Info |
---|
Note, 3.5 implies latest version of Syndeia Cloud 3.5 (e.g. 3.5 SP1, 3.5 SP2, etc.) |
Extract SC Media
Launch a Terminal with
bash
(ensure you are are in your home directory)Place all SC packages in your home directory)
for Windows Cygwin (and Linux!), this means~/
NOTC:\Users\...
Unzip all SC packages:
Code Block language bash unzip syndeia-cloud-3.5-SP2*.zip
Deploy Apache Cassandra
cd to the
cassandra_zookeeper_kafka_setup
package’sbin
directory:Code Block language bash cd ~/syndeia-cloud-3.5-SP2*_cassandra_zookeeper_kafka_setup/bin
Run the Apache Cassandra pre-setup script:
Code Block language bash ./syndeia-cloud-3.5_cassandra_pre-setup.bash
...
Verify Cassandra is up and functioning by running
nodetool status
:
If you are on Linux:Code Block language bash nodetool status
You should get output similar to the following:
Code Block language bash Datacenter: dc1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 192.168.1.3 644.57 KiB 256 100.0% 141c21db-4f79-476b-b818-ee6d2da16d7d rack1
Deploy Apache Zookeeper (ZK)
Run the Apache Zookeeper (ZK) pre-setup script:
Code Block language bash ./syndeia-cloud-3.5_zookeeper_pre-setup.bash
...
Verify Zookeeper is up and functioning by running
zkCli.sh
:Code Block language bash sudo -u zookeeper /opt/zookeeper-current/bin/zkCli.sh -server localhost:2181
You should get output similar to the following:
Code Block language bash Connecting to localhost:2181 Welcome to ZooKeeper! JLine support is enabled WATCHER:: WatchedEvent state:SyncConnected type:None path:null [zk: localhost:2181(CONNECTED) 0]
Deploy Apache Kafka
Run the Apache Kafka pre-setup script:
...
Verify Kafka is up and functioning by creating a test topic, producer with test events and a consumer that replays them:
Code Block /opt/kafka-current/bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092
… producer:
Code Block /opt/kafka-current/bin/kafka-console-producer.sh --topic quickstart-events --bootstrap-server localhost:9092
Code Block Test event1 Test event2
… consumer:
Code Block /opt/kafka-current/bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092
You should see:
Code Block Test event1 Test event2
Deploy JanusGraph (JG)
cd to the
janusgaph_setup
package’sbin
directory:Code Block language bash cd ~/syndeia-cloud-3.5-SP2*_janusgraph_setup/bin
Run the JanusGraph (JG) pre-setup script:
Code Block language bash ./syndeia-cloud-3.5_janusgraph_pre-setup.bash
Run the (main) JanusGraph (JG) setup script, ie:
Code Block language bash ./syndeia-cloud-3.5_janusgraph_setup.bash
...
Verify JG is up and functioning by running the Gremlin client, ie:
Code Block language bash /opt/janusgraph-current/bin/gremlin.sh
Then execute the following commands after it starts up:
Code Block :remote connect tinkerpop.server conf/remote.yaml session :remote console graph = ConfiguredGraphFactory.open('syndeia_cloud_graph'); // should return: ==>standardjanusgraph[cql:[cassandra.mydomain.com]] g = graph.traversal(); g.V(); g.E(); // The last 2 commands above should not return any results since the graph (syndeia_cloud_graph) is empty - no vertices or edges.
Deploy Syndeia Cloud (SC)
cd to the
syndeia-cloud
package’sbin
directory:Code Block language bash cd ~/syndeia-cloud-3.5-SP2*/bin
Run the Syndeia Cloud (SC) pre-setup script:
Code Block language bash ./syndeia-cloud-3.5_install_pre-setup.bash
During execution, you will be prompted to set credentials for JMX monitoring. By default Syndeia Cloud has been configured with JMX enabled & the script will prompt to set a reader & read-write credentials. If you do not wish to use JMX, you can do so pre or post-SC setup via the steps in Appendix C3.6).
Run the (main) Syndeia Cloud (SC) setup script, ie:
Code Block language bash ./syndeia-cloud-3.5_install.bash
...
http://<syndeia_server_FQDN>:9000 should give you:
To log in as the default administrator and create users, see the User Management section.
Once logged in, please verify you see:
a bar graph gets rendered (and not a never-ending spinner followed by an error message) on the Dashboard home page and
the installed version shows correctly under Help > About in the sidebar.
Tip |
---|
Congratulations! ⭐ You have a running Syndeia Cloud instance. |
...
How to Manage Services & Check Logs
Services
Linux
Services are all managed using systemd’s systemctl
command with a verb, ie: status
, start
, stop
, restart
, followed the service name, ie: cassandra
, janusgraph
, zookeeper
, kafka
, sc-
SC-short-service-name(s) (or sc-*
to reference all SC services). For more information run systemctl --help
and/or man systemctl
.
Example usage for Cassandra, Zookeeper, Kafka, JanusGraph, and Syndeia Cloud follows:
Apache Cassandra
To check the summary status:
Code Block sudo systemctl status cassandra
To start the service:
Code Block sudo systemctl start cassandra
To stop the service:
Code Block sudo systemctl stop cassandra
To restart the service:
Code Block sudo systemctl restart cassandra
Apache Zookeeper
To check the summary status:
Code Block sudo systemctl status zookeeper
To start the service:
Code Block sudo systemctl start zookeeper
To stop the service:
Code Block sudo systemctl stop zookeeper
To restart the service:
Code Block sudo systemctl restart zookeeper
Apache Kafka
To check the summary status:
Code Block sudo systemctl status kafka
To start the service:
Code Block sudo systemctl start kafka
To stop the service:
Code Block sudo systemctl stop kafka
To restart the service:
Code Block sudo systemctl restart kafka
JanusGraph
To check the summary status:
Code Block sudo systemctl status janusgraph
To start the service:
Code Block sudo systemctl start janusgraph
To stop the service:
Code Block sudo systemctl stop janusgraph
To restart the service:
Code Block sudo systemctl restart janusgraph
Syndeia Cloud
Syndeia Cloud 3.5 is defined by two sets of services:
...
To stop a service, ex: web-gateway:
Code Block sudo systemctl stop sc-web-gateway
To restart a service, ex: web-gateway:
Code Block sudo systemctl restart sc-web-gateway
...
Logs & Monitoring
...
Logs on Linux can be viewed using the journalctl
command, ex: sudo journalctl -xeu
service-name, ie: cassandra
, janusgraph
, zookeeper
, kafka
, sc-
SC-short-service-name(s)
...
Raw log files are located in the following locations:
Apache Cassandra
Code Block |
---|
/var/log/cassandra/system.log |
Apache Zookeeper
Zookeeper creates a log file of the form zookeeper-
accountName -server-
serverFQDN .log
...
Code Block |
---|
/opt/zookeeper-current/logs/zookeeper.log |
Apache Kafka
Apache Kafka generates several files with the extension .log
in its logs
folder
...
Code Block |
---|
/opt/kafka-current/logs/server.log |
JanusGraph
Code Block |
---|
/opt/janusgraph-current/logs/gremlin-server.log |
Syndeia Cloud
For single-node deployments, one can use the common logs directory with symlinks to every service’s logs
folder (this is useful is say one wishes to quickly archive all logs to submit for troubleshooting)
...