Remote Collectors
  • 06 Feb 2024
  • Dark
    Light
  • PDF

Remote Collectors

  • Dark
    Light
  • PDF

Article Summary

The Remote Collector gathers and forwards your data from various sources to Seemplicity. This enables management, without direct system access.

Prerequisites

Hardware (On-Premises VM/EC2)

RAMCPUFree Disk Space
4GB2-Cores60 GB

Software

Ensure your platform is running on one of the following supported Operating Systems. For other options, contact Customer Services.

OSVersion
RedHat8.7 or 9.1
Amazon Linux2023 AMI
CentOS8.4
Ubuntu22.04

Ensure your platform uses one of the following supported Software Platforms, install jq (a lightweight and flexible command-line JSON processor) on your machine, and depending on your OS, install and make sure that a lower privilege user is able to use:

PlatformComments
DockerWhen using any other OS
PodmanWhen using RedHat OS

Networking Access from Container

According to where you log in to the Seemplicity Platform, ensure you and your Docker/Podman platform can connect to the relevant domains. See Troubleshooting for a command line script that will check if Docker can access the domain.

Europe - https://app.seemplicity.io/

DomainComment
api.seemplicity.ioThe endpoint for Seemplicity API calls.
cognito-idp.eu-central-1.amazonaws.comThe endpoint that creates the JWT. This is the temporary secret key that allows the remote collector to communicate with Seemplicity. A form of this endpoint is used when you use the Seemplicity Platform to allow your browser to communicate with Seemplicity.
104338399232.dkr.ecr.eu-central-1.amazonaws.comThe Seemplicity Docker container repository used to pull and run the current remote collector image.
prod-eu-central-1-starport-layer-bucket.s3.eu-central-1.amazonaws.comThe S3 domain where the Docker image layers are stored. When Seemplicity performs a Docker pull from the ECR, the Docker pulls from here too.
seemplicity-prod-euc1-1-remote-collector-out.s3.amazonaws.comThe S3 bucket that enables the remote collector to upload the findings, logs, and statistics about its collection.

USA - https://app.us.seemplicity.io/

DomainComment
api.us.seemplicity.ioThe endpoint for Seemplicity API calls.
cognito-idp.us-east-2.amazonaws.comThe endpoint that creates the JWT. This is the temporary secret key that allows the remote collector to communicate with Seemplicity. A form of this endpoint is used when you use the Seemplicity Platform to allow your browser to communicate with Seemplicity.
104338399232.dkr.ecr.us-east-2.amazonaws.comThe Seemplicity Docker container repository that used to pull and run the current remote collector image.
prod-us-east-2-starport-layer-bucket.s3.us-east-2.amazonaws.comThe S3 domain where the Docker image layers are stored. When Seemplicity performs a Docker pull from the ECR, the Docker pulls from here too.
seemplicity-prod-use2-1-remote-collector-out.s3.amazonaws.comThe S3 bucket that enables the remote collector to upload the findings, logs, and statistics about its collection.

Installation Instructions

Follow these steps to install and configure a new Remote Collector instance at Seemplicity.

  1. Go to Settings > Integrations - Remote Collector > +Add Instance.

  2. Enter a descriptive Instance Name that relates to the remote collector's purpose.

  3. (Optional) Select the Enable Proxy toggle and enter the IP address and port through which to connect. If your proxy requires a username and password, provide the details as follows: username:password@proxyserver:proxyport.

  4. When finished (steps 2 and 3), select Save. Seemplicity generates the Installation Script with the necessary details.

  5. Copy the contents of the script.

  6. On the machine you are using as the remote collector, paste the script into a terminal window running as a lower privilege user. This will run the script and establish a connection with Seemplicity. The connection establishes within approximately 10 minutes.

    NOTE

    Ensure you have the necessary permissions to run the script on this machine.

  7. Monitor the script output to ensure there are no errors during the installation process.
    Once the script completes successfully and a connection is established, your Remote Collector will check with Seemplicity every 5 minutes for updates.

Troubleshooting

Check Docker Connectivity and jq Status

Use the following command line script to check if Docker can access the necessary domain(s) and ensure that jq is working correctly. The messages printed after running this list of commands can be:

Result MessageMeaning
GoodAll Ok
Errorsjq not working correctly
StuckMissing connectivity and/or jq not working correctly

EU Domains

echo "\n\n\nStarting to check the docker/podman accesibility to the relevant domains"
docker run -i -t fedora curl -X GET https://api.seemplicity.io >/dev/null && echo "Good 1/5"
docker run -i -t fedora curl -X GET https://cognito-idp.eu-central-1.amazonaws.com >/dev/null && echo "Good 2/5"
docker run -i -t fedora curl -X GET https://104338399232.dkr.ecr.eu-central-1.amazonaws.com >/dev/null && echo "Good 3/5"
docker run -i -t fedora curl -X GET https://prod-eu-central-1-starport-layer-bucket.s3.eu-central-1.amazonaws.com >/dev/null && echo "Good 4/5"
docker run -i -t fedora curl -X GET https://seemplicity-prod-euc1-1-remote-collector-out.s3.amazonaws.com >/dev/null && echo "Good 5/5"
echo "Checking if JQ is available"
echo '{"jq":"available"}' | jq >/dev/null &&  echo "JQ is good"

USA Domains

echo "\n\n\nStarting to check the docker/podman accesibility to the relevant domains"
docker run -i -t fedora curl -X GET https://api.us.seemplicity.io >/dev/null && echo "Good 1/5"
docker run -i -t fedora curl -X GET https://cognito-idp.us-east-2.amazonaws.com >/dev/null && echo "Good 2/5"
docker run -i -t fedora curl -X GET https://104338399232.dkr.ecr.us-east-2.amazonaws.com >/dev/null && echo "Good 3/5"
docker run -i -t fedora curl -X GET https://prod-us-east-2-starport-layer-bucket.s3.us-east-2.amazonaws.com >/dev/null && echo "Good 4/5"
docker run -i -t fedora curl -X GET https://seemplicity-prod-use2-1-remote-collector-out.s3.amazonaws.com >/dev/null && echo "Good 5/5"
echo "Checking if JQ is available"
echo '{"jq":"available"}' | jq >/dev/null &&  echo "JQ is good"

What's Next