Installation

You can install Hardware Sentry OpenTelemetry Collector on the operating system of your choice as they are equally supported.

Note: Starting from v2.0.00, you can retrieve hardware information exposed by WMI from Linux and MacOs systems through the Windows Remote Management (WinRM) protocol.

Prerequisites

Hardware Sentry OpenTelemetry Collector requires Java Runtime Environment (JRE) version 11 or higher.

The OpenTelemetry Collector will use the $JAVA_HOME environment variable to determine that path to the JRE. If $JAVA_HOME is not set, it will use any java executable found in the $PATH.

Run the following command to verify the version installed on:

  • Docker:

    docker exec <containerId> java -version
    
  • Linux or MacOS:

    $JAVA_HOME/bin/java -version
    
  • On Windows:

    %JAVA_HOME%\bin\java -version
    

If needed, you can download the latest versions of the Java Runtime Environment from Adoptium (formerly AdoptOpenJDK).

Install

On Docker

Download

From Sentry Software's Web site, download:

  • hws-otel-collector-2.0.00-docker.tar.gz

Install

First, unzip and untar the content of hws-otel-collector-2.0.00-docker.tar.gz into a docker directory, like /docker. There is no need to create a specific subdirectory for hws-otel-collector as the archive already contains an hws-otel-collector directory.

/ $ cd /docker
/docker $ sudo tar xf /tmp/hws-otel-collector-2.0.00-docker.tar.gz

Then, build the docker image using the following command:

/ $ cd /docker/hws-otel-collector
/docker/hws-otel-collector $ sudo docker build -t hws-otel-collector:latest .

Configure

There are 2 configuration files:

Before starting the OpenTelemetry Collector, make sure to configure ./config/otel-config.yaml, since a restart of the Collector is required to take into account its changes.

Start

You can start the Hardware Sentry OpenTelemetry Collector with the below command:

/$ cd /docker/hws-otel-collector
/docker/hws-otel-collector$ sudo docker run --name=hws-otel -p 8888:8888 -p 4317:4317 -p 13133:13133 hws-otel-collector:latest

This will start the Hardware Sentry OpenTelemetry Collector with the default OpenTelemetry Collector configuration file: ./config/otel-config.yaml.

You can start the Hardware Sentry OpenTelemetry Collector with an alternate configuration file path with the command bellow:

/$ cd /docker/hws-otel-collector
/docker/hws-otel-collector$ sudo docker run --name=hws-otel -p 8888:8888 -p 4317:4317 -p 13133:13133 -v /docker/hws-otel-collector/config:/opt/hws-otel-collector/config hws-otel-collector:latest

See Ports and Firewalls for port details.

Docker Compose Example

You can start the Hardware Sentry OpenTelemetry Collector with docker-compose:

/docker/hws-otel-collector$ sudo docker-compose up -d --build

Example docker-compose.yaml

version: "2.1"
services:
  hws-otel-collector:
    build: .                                        # for image we will use ``image: sentrysoftware/hws-otel-collector:latest``
    container_name: hws-otel-collector
    ports:
      - 8888:8888                                   # _OpenTelemetry Collector_ Exporter
      - 4317:4317                                   # _OpenTelemetry Collector_ gRPC Receiver
      - 13133:13133                                 # _OpenTelemetry Collector_ HealthCheck
    volumes:
      - ./logs:/opt/hws-otel-collector/logs         # redirects logs to ./logs folder
      - ./config:/opt/hws-otel-collector/config     # redirects config folder to ./config
    restart: unless-stopped

On Linux

Download

From Sentry Software's Web site, download:

  • hws-otel-collector-2.0.00-linux-amd64.tar.gz

Install

Unzip and untar the content of hws-otel-collector-2.0.00-linux-amd64.tar.gz into a program directory, like /usr/local or /opt. There is no need to create a specific subdirectory for hws-otel-collector as the archive already contains an hws-otel-collector directory.

/ $ cd /usr/local
/usr/local $ sudo tar xf /tmp/hws-otel-collector-2.0.00-linux-amd64.tar.gz

Configure

There are 2 configuration files:

Before starting the OpenTelemetry Collector, make sure to configure ./config/otel-config.yaml, since a restart of the Collector is required to take into account its changes.

Start

You can start the Hardware Sentry OpenTelemetry Collector with the below command:

/usr/local/hws-otel-collector/bin/hws-otel-collector

This will start the Hardware Sentry OpenTelemetry Collector with the default OpenTelemetry Collector configuration file: ./config/otel-config.yaml.

You can start the Hardware Sentry OpenTelemetry Collector with an alternate configuration file with the below command:

/usr/local/hws-otel-collector/bin/hws-otel-collector --config <PATH>

Example:

/$ cd /usr/local/hws-otel-collector
/usr/local/hws-otel-collector$ bin/hws-otel-collector --config config/my-otel-config.yaml

On MacOS (Apple Silicon)

Download

From Sentry Software's Web site, download:

  • hws-otel-collector-2.0.00-darwin-arm64.tar.gz

Install

Unzip and untar the content of hws-otel-collector-2.0.00-darwin-arm64.tar.gz into a program directory, like /Library or /opt. There is no need to create a specific subdirectory for hws-otel-collector as the archive already contains an hws-otel-collector directory.

/ $ cd /Library
/Library $ sudo tar xf /tmp/hws-otel-collector-2.0.00-darwin-arm64.tar.gz

Configure

There are 2 configuration files:

Before starting the OpenTelemetry Collector, make sure to configure ./config/otel-config.yaml, since a restart of the Collector is required to take into account its changes.

Start

You can start the Hardware Sentry OpenTelemetry Collector with the below command:

/Library/hws-otel-collector/bin/hws-otel-collector

This will start the Hardware Sentry OpenTelemetry Collector with the default OpenTelemetry Collector configuration file: ./config/otel-config.yaml.

You can start the Hardware Sentry OpenTelemetry Collector with an alternate configuration file with the below command:

/Library/hws-otel-collector/bin/hws-otel-collector --config <PATH>

Example:

/$ cd /Library/hws-otel-collector
/Library/hws-otel-collector$ bin/hws-otel-collector --config config/my-otel-config.yaml

On MacOS (x86)

Download

From Sentry Software's Web site, download:

  • hws-otel-collector-2.0.00-darwin-amd64.tar.gz

Install

Unzip and untar the content of hws-otel-collector-2.0.00-darwin-amd64.tar.gz into a program directory, like /Library or /opt. There is no need to create a specific subdirectory for hws-otel-collector as the archive already contains an hws-otel-collector directory.

/ $ cd /Library
/Library $ sudo tar xf /tmp/hws-otel-collector-2.0.00-darwin-amd64.tar.gz

Configure

There are 2 configuration files:

Before starting the OpenTelemetry Collector, make sure to configure ./config/otel-config.yaml, since a restart of the Collector is required to take into account its changes.

Start

You can start the Hardware Sentry OpenTelemetry Collector with the below command:

/Library/hws-otel-collector/bin/hws-otel-collector

This will start the Hardware Sentry OpenTelemetry Collector with the default OpenTelemetry Collector configuration file: ./config/otel-config.yaml.

You can start the Hardware Sentry OpenTelemetry Collector with an alternate configuration file with the below command:

/Library/hws-otel-collector/bin/hws-otel-collector --config <PATH>

Example:

/$ cd /Library/hws-otel-collector
/Library/hws-otel-collector$ bin/hws-otel-collector --config config/my-otel-config.yaml

On Windows

Download

From Sentry Software's Web site, download:

  • hws-otel-collector-2.0.00-windows-amd64.zip

Install

Unzip the content of hws-otel-collector-2.0.00-windows-amd64.tar.gz into a program folder. There is no need to create a specific subfolder for hws-otel-collector as the archive already contains an hws-otel-collector folder.

Note: You will need administrative privileges to unzip into C:\Program Files.

Configure

There are 2 configuration files:

and two configuration examples:

  • ./config/otel-config-example.yaml, a configuration example of the OpenTelemetry Collector
  • ./config/hws-config-example.yaml, a configuration example of the Hardware Sentry Agent.

Before starting the OpenTelemetry Collector, make sure to configure ./config/otel-config.yaml, since a restart of the Collector is required to take into account its changes.

Start

Start Hardware Sentry OpenTelemetry Collector in CMD.EXE or Windows Terminal with elevated privilages (Run As Administrator).

c:
cd "Program Files"
cd hws-otel-collector
bin\hws-otel-collector

This will start the Hardware Sentry OpenTelemetry Collector with the default OpenTelemetry Collector configuration file: .\config\otel-config.yaml.

You can start the Hardware Sentry OpenTelemetry Collector with an alternate configuration file with the below command:

"c:\Program Files\hws-otel-collector\bin\hws-otel-collector" --config "c:\Program Files\hws-otel-collector\config\my-otel-config.yaml"

Start As a Service

It is recommended to install and run the Hardware Sentry OpenTelemetry Collector as a Windows Service.

Run the below sc command to create the service (assuming the product has been installed in c:\Program Files):

sc create hws-otel binPath="c:\Program Files\hws-otel-collector\bin\hws-otel-collector.exe" start=auto DisplayName="Hardware Sentry OpenTelemetry Collector"

The service appears in services.msc:

Hardware Sentry OpenTelemetry Collector running as a service on Windows

Upgrade

Warning: It is recommended to make a backup copy of the hws-keystore.p12 file stored in hws-otel-collector\security if you previously encrypted your passwords as specified in Encrypting Passwords.

Stop Hardware Sentry OpenTelemetry Collector, unzip the installation package into your existing folder and start Hardware Sentry OpenTelemetry Collector.

Post-install

Verify

Verify that Hardware Sentry OpenTelemetry Collector is properly running as explained in the Health Check section.

Ports and Firewalls

Hardware Sentry OpenTelemetry Collector opens several TCP ports for listening. None of these ports need to be open to the outside network, as they are used internally only.

Component Port Required
OpenTelemetry Collector OTLP gRPC Receiver TCP/4317 Used internally only
OpenTelemetry Collector HealthCheck TCP/13133 Optional, if you need to verify the status of the collector
OpenTelemetry Collector Exporter TCP/8888 Used internally only
No results.