Skip to content

Running the ybrelay-init Script

After installing ybtools, you can run the ybrelay-init script to create and start the ybrelay systemd service.

Note: As a prerequisite to running the script, the JAVA_HOME environment variable must be set.

  1. On CentOS/RHEL 7 and Ubuntu 16.04/18.04, initialize the ybrelay service by running the following:
ybrelay-init
INFO: Creating System Group: ybrelay with GID: 923
INFO: Creating System User: ybrelay with UID: 923
INFO: Creating Systemd service
INFO: JAVA_HOME environment variable detected
INFO: Adding JAVA_HOME configuration to ybrelay.config
Created symlink from /etc/systemd/system/multi-user.target.wants/ybrelay.service to /etc/systemd/system/ybrelay.service.
INFO: Starting Systemd service
  1. Verify that ybrelay.service was started properly by running the following:
systemctl status ybrelay.service

  ybrelay.service - Yellowbrick Data Load Relay Service
   Loaded: loaded (/etc/systemd/system/ybrelay.service; enabled; vendor preset: disabled)

   Active: active (running) since Thu 2019-11-14 18:31:23 UTC; 57s ago

Main PID: 3320 (java)

   CGroup: /system.slice/ybrelay.service

           └─3320 /opt/java/jre11/bin/java -Dvisualvm.display.name=YB:Relay -Xms512m -Xmx8g -ea -classpath 
/opt/ybtools/etc:/opt/ybtools/lib/relay-service-3.2.0-SNAPSHOT.jar:/opt/ybtools/lib/client-com...
     
Nov 14 18:31:23 rhel7.localdomain systemd[1]: Started Yellowbrick Data Load Relay Service.
 
Nov 14 18:31:23 rhel7.localdomain ybrelay[3320]: Warning; java is not in your PATH. Using JAVA_HOME fallback: 
/opt/java/jre11/bin

Running ybrelay-init with the --keystore option

You can run the ybrelay-init script to create and start the ybrelay systemd service. To enable a TLS configuration for network communication between the ybrelay server and the data warehouse, use the --keystore option when you run the script. (To disable TLS trust for testing purposes, use the --disable-trust option.) See also ybrelay-init Options.

Note: The JAVA_HOME environment variable must be set before the ybrelay-init script can be run.

  1. On CentOS/RHEL 7 and Ubuntu 16.04/18.04, initialize the ybrelay service by running the following command:
$ sudo ybrelay-init --keystore /tmp/keystore.jks --prompt-password
Enter keystore password:
INFO: Creating system group: ybrelay with GID: 923
INFO: Creating system user: ybrelay with UID: 923
INFO: Copying keystore /tmp/keystore.jks to /opt/ybtools/config/keystore.jks
INFO: Creating keystore option: /opt/ybtools/config/keystore.jks:<PASSWORD>
INFO: Creating systemd service
INFO: JAVA_HOME environment variable detected
INFO: Adding JAVA_HOME configuration to ybrelay.config
Created symlink /etc/systemd/system/multi-user.target.wants/ybrelay.service → /etc/systemd/system/ybrelay.service.
INFO: Starting systemd service
  1. Verify that ybrelay.service was started properly by running the following command:
systemctl status ybrelay.service

  ybrelay.service - Yellowbrick Data Load Relay Service
   Loaded: loaded (/etc/systemd/system/ybrelay.service; enabled; vendor preset: disabled)

   Active: active (running) since Thu 2020-12-10 18:31:23 UTC; 57s ago

...

The ybrelay service is now running, and it is configured to listen with TLS enabled for all Spark jobs. You do not need to start the service again before submitting jobs. However, when you run Spark jobs, you will need to specify some required TLS options that are specific to each job submission.