License Server
Starting with version 5.17 Collectord can download the license from the remote URL. Using remote URL for storing license allows you upgrade the license in just one place.
Important details about using the remote license URL for providing the license:
- Local license server only serves the purpose of distributing the license between your clusters and nodes.
- Collectord needs to have access to this remote URL on first start. If Collectord fails to load the license it will fail to start.
- Collectord caches license internally, so on second start, if the URL is not available, Collectord uses license from the cache.
- Collectord verifies every 30 minutes for the new license.
- If Remote URL provides a new license, Collectord uses it immediately.
- If the provided license requires internet verification, the license clients will be talking to the License Server hosted by Outcold Solutions.
Configure remote URL with the license key
Using own HTTP server to serve the license
Collectord does not have requirements for how you want to provide the license. One of the easiest way is to save the license
key in the file, for example license
and start a HTTP server
python3 -m http.server 9199
Verify that you can download the license from the remote servers
curl http://license-server.example.local:9199/license
Using Collectord as a license server
Collectord can be used as a license server, the benefits of using Collectord as a license server, it will count for you the license usage.
To run Collectord as a license server, please use the following command, where you need replace the license ...
with your
license key, and remove the line about the basicAuth
or use some password in a format username:password
, in the example
below we use blank as a username, and password
as a password.
docker run -d \ --name collectordlicenseserver \ --cpus=0.5 \ --cpu-shares=102 \ --memory=64M \ --restart=always \ --publish 9199:9199 \ --env "COLLECTOR__ACCEPTLICENSE=general__acceptLicense=true" \ --env "COLLECTOR__HTTP_BINDING=general__httpServerBinding=0.0.0.0:9199" \ --env "COLLECTOR__LICENSE_KEY=general__license=..." \ --env "COLLECTOR__LICENSESERVER_BASICAUTH=license.server__basicAuth=:password" \ --entrypoint /collectord \ outcoldsolutions/collectorfordocker:5.23.431 license-server
Verify with the curl
that you can download the license
curl -u :password http://license-server.example.local:9199/license
License server will publish on stdout the license usage reports every hours
INFO 2021/10/15 18:36:32.205219 outcoldsolutions.com/collectord/license_server.go:71: LicenseID: C5KBS5R69NH9G, Expiration: 1642116759, Limit: 200, Count: 54
Configuring collectorfordocker using the remote license URL
Instead of configuring the license key in the docker command, now you can point it to the license URL (in the example
below we also use the basic authentication :password
, to be able to communicate with the license server running with
the help of Collectord that we configured above)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | docker run -d \ --name collectorfordocker \ --volume /sys/fs/cgroup:/rootfs/sys/fs/cgroup:ro \ --volume /proc:/rootfs/proc:ro \ --volume /var/log:/rootfs/var/log:ro \ --volume /var/lib/docker/:/rootfs/var/lib/docker/:ro \ --volume /var/run/docker.sock:/rootfs/var/run/docker.sock:ro \ --volume collector_data:/data/ \ --cpus=1 \ --cpu-shares=204 \ --memory=256M \ --restart=always \ --env "COLLECTOR__SPLUNK_URL=output.splunk__url=https://hec.example.com:8088/services/collector/event/1.0" \ --env "COLLECTOR__SPLUNK_TOKEN=output.splunk__token=B5A79AAD-D822-46CC-80D1-819F80D7BFB0" \ --env "COLLECTOR__SPLUNK_INSECURE=output.splunk__insecure=true" \ --env "COLLECTOR__ACCEPTLICENSE=general__acceptLicense=true" \ --env "COLLECTOR__LICENSE_URL=license.client__url=http://license-server.example.local:9199/license" \ --env "COLLECTOR__LICENSECLIENT_BASICAUTH=license.client__basicAuth=:password" \ --env "COLLECTOR__CLUSTER=general__fields.docker_cluster=-" \ --privileged \ outcoldsolutions/collectorfordocker:5.23.431 |
Updating the license with the License Server
To update the license for all Collectord instances that read the license from the remote URL you just need to replace the license in one place, on the License Server. Just restart the license server with the new valid License Key to update the license on all of your clusters.
Links
-
Installation
- Start monitoring your docker environments in under 10 minutes.
- Automatically forward host, container and application logs.
- Test our solution with the embedded 30 days evaluation license.
-
Collector Configuration
- Collector configuration reference.
- Build custom image on top collector image with embedded configuration.
-
Container Annotations
- Forwarding application logs.
- Multi-line container logs.
- Fields extraction for application and container logs (including timestamp extractions).
- Hiding sensitive data, stripping terminal escape codes and colors.
-
Configuring Splunk Indexes
- Using not default HTTP Event Collector index.
- Configure the Splunk application to use not searchable by default indexes.
-
Splunk fields extraction for container logs
- Configure search-time fields extractions for container logs.
- Container logs source pattern.
-
Configurations for Splunk HTTP Event Collector
- Configure multiple HTTP Event Collector endpoints for Load Balancing and Fail-overs.
- Secure HTTP Event Collector endpoint.
- Configure the Proxy for HTTP Event Collector endpoint.
-
Collecting metrics from Prometheus format
- Configure collector to forward metrics from the services in Prometheus format.
-
Monitoring multiple clusters
- Learn how you can monitor multiple clusters.
- Learn how to set up ACL in Splunk.
-
Streaming Docker Objects from API Engine
- Learn how you can poll docker containers and images and forward them to Splunk.
-
License Server
- Learn how you can configure remote License URL for Collectord.
- Alerts
- Troubleshooting
- Release History
- Upgrade instructions
- Security
- FAQ and the common questions
- License agreement
- Pricing
- Contact