System Configuration for DSS Agent on Linux - DSS 6 | Data Source Solutions Documentation

Documentation: System Configuration for DSS Agent on Linux - DSS 6 | Data Source Solutions Documentation

System Configuration for DSS Agent on Linux

This section describes the system configuration required for DSS Agent installed on Linux. The steps mentioned on this page are normally performed during installing DSS Agent on Linux (step - Configure the system for DSS Agent).

There are different ways for configuring the DSS Agent to listen on a TCP/IP port:

Linux systemd

The following steps should be performed as user root to configure systemd:

  1. Create the systemd unit files dss.socket and dss@.service in /etc/systemd/system directory.

    1. dss.socket should contain the following:

      [Unit]
      Description=DSS service socket
       
      [Socket]
      ListenStream=4343
      Accept=true
      TriggerLimitIntervalSec=1s
      TriggerLimitBurst=10000
      MaxConnectionsPerSource=100
      MaxConnections=500
      KeepAlive=true
      
      [Install]
      WantedBy=sockets.target
      
  • TriggerLimitIntervalSec is supported since systemd version 230. - TriggerLimitBurst is supported since systemd version 230. - MaxConnectionsPerSource is supported since systemd version 232.
    <div class="callout callout-important">

In a IPv4/IPv6 mixed system, if you want to force systemd to use IPv4, set ListenStream=0.0.0.0:4343.

2.  **dss\@.service** should contain the following:

    ```plaintext
    [Unit]
    Description=DSS service

    [Service]
    Environment="DSS_HOME=/home/datasourcesolutions/dss_home"
    Environment="DSS_CONFIG=/home/datasourcesolutions/dss_config"
    Environment="DSS_TMP=/home/datasourcesolutions/dss_tmp"
    User=datasourcesolutions
    ExecStart=/home/datasourcesolutions/dss_home/bin/dssagent
    StandardInput=socket
    KillMode=process
    TimeoutStartSec=infinity

    [Install]
    WantedBy=multi-user.target
    ```

    <div class="callout callout-important">

User must be set to the user under which the DSS Agent is installed/running.

  1. If SELinux is enabled, execute the following commands on the DSS Agent server:

    sudo /sbin/restorecon -v $DSS_HOME/bin/dssagent
    sudo chcon -R -t bin_t $DSS_HOME/bin/
    
  2. To enable and start the service, execute the following commands:

    systemctl enable dss.socket
    
    systemctl start dss.socket
    
    1. To verify whether the service is active, execute the following command:

      systemctl status dss.socket
      

      Sample output:

      dss.socket - DSS service socket
       Loaded: loaded (/etc/systemd/system/dss.socket; enabled; vendor preset: enabled)
       Active: active (listening) since Mon 2020-09-07 17:54:44 CEST; 5s ago
       Listen: [::]:4343 (Stream)
       Accepted: 0; Connected: 0
      

Linux xinetd

The following steps should be performed as user root to configure xinetd:

  1. Create an xinetd service file dss in /etc/xinetd.d/ directory. This service file should contain the following:

    service dss
    
    {
      socket_type = stream
      wait = no
      user = datasourcesolutions
      server = /home/datasourcesolutions/dss_home/bin/dssagent
      env += DSS_HOME=/home/datasourcesolutions/dss_home
      env += DSS_CONFIG=/home/datasourcesolutions/dss_config
      env += DSS_TMP=/home/datasourcesolutions/dss_tmp
      disable = no
      cps = 10000 30
      per_source = 100
      instances = 500
    }
    

user must be set to the user under which DSS Agent is installed/running.

  1. If SELinux is enabled, execute the following commands on the DSS Agent server:

    sudo /sbin/restorecon -v $DSS_HOME/bin/dssagent
    sudo chcon -R -t bin_t $DSS_HOME/bin/
    
  2. Add the following to /etc/services - the name of the xinetd service for DSS Agent (created in the previous step) and the TCP/IP port number for DSS Agent Listener.

    dss 4343/tcp    #Port for DSS Agent
    
  3. Reload or restart the xinetd service to apply the changes. For information about restarting the xinetd service, refer to the operating system documentation.

DSS Agent Listener

The command dssagentlistener should be executed with option <b>-d</b> to start the DSS Agent Listener service as a daemon process on the required port:

dssagentlistener -d 4343

Testing Connection to an DSS Agent

To test the connection to DSS Agent, execute the command dssagenttest on the machine from which you are connecting to the DSS Agent. You can also check whether dssagentlistener is running by executing the command dssagenttest directly on the DSS Agent machine.

Following are few examples for testing the connection to an DSS Agent.

Example 1: Check connection to an DSS Agent

You can check the connection to an DSS Agent installed/running on a remote machine with username and password authentication enabled. Execute the following command on the hub machine or on the machine from which you are connecting to the DSS Agent:

dssagenttest -L myuser/mypassword mynode 4343

Sample output in Linux with successful authentication and also indicating that the DSS Agent Listener is running:

dssagenttest: Data Source Solutions 6.1.0/21 (linux_glibc2.17-x64-64bit)
dssagenttest: Agent version 6.1.0/21.
dssagenttest: Authentication with username and password enabled.
dssagenttest: Authentication successful.
dssagenttest: Finished. (elapsed=0.34s)

Example 2: Check whether dssagentlistener is running

After installing and starting the DSS Agent Listener service, you can verify whether the dssagentlistener is running on the agent machine. Execute the following command on the agent machine:

dssagenttest mynode 4343

Sample output in Windows with successful authentication indicating that the DSS Agent Listener is running:

dssagenttest: Data Source Solutions 6.1.0/21 (windows-x64-64bit)
dssagenttest: Agent version 6.1.0/21.
dssagenttest: Authentication with username and password enabled.
dssagenttest: Authentication successful.
dssagenttest: Finished. (elapsed=0.18s)

See Also