Skip to main content
To start working with Sawmills, you’ll install the Sawmills OpenTelemetry (OTel) Collector distribution. Installation deploys a remote operator into your Kubernetes cluster, which then manages the Sawmills Collector.
A Sawmills account and access to the product dashboard is required to proceed with installation.

Prerequisites

  • Kubernetes Cluster: Access to the target cluster.
  • kubectl: Installed and configured to interact with the cluster.
  • Helm 3+: Installed and configured.
  • Permissions: Ability to create namespaces, secrets, and deploy Helm charts.

Install the Sawmills Collector

  1. Log in to the Sawmills dashboard.
  2. Go to the Collectors section (located at the bottom tab of the left navigation menu).
  3. Click New Collector to open the installation wizard.
If you use Kubectl to check Sawmills collector pods, initially you will only see the Sawmills operator running, as the collector service is started when a pipeline is deployed. See How to deploy a pipeline.

Step 1: Configure the Collector

  • Name: Provide a unique, descriptive name for the collector.
  • Namespace: The Kubernetes namespace where the collector will be installed.
The name should follow your organization’s naming conventions.

Advanced Options

  • Require manual deployment for pipeline changes: Enable this only if your environment prevents Sawmills from applying collector updates automatically. When enabled, you must run the provided Helm upgrade command after every pipeline change to deploy the update to the collector.
Click Next to proceed.

Step 2: Install the Collector

This step provides the commands needed to deploy the remote operator, which manages the collector in your cluster.
  1. Create a Namespace (only if it does not already exist)
kubectl create namespace sawmills
  1. Create a Secret with your organization API key (only if it does not already exist)
kubectl create secret generic sawmills-secret \
  -n sawmills --from-literal api-key=****************
If you use a different secret name or key, update:
  • apiKeyExistingSecret and apiKeySecretKey in values.yaml
  • managedCharts.sawmills-collector.apiSecret.name and managedCharts.sawmills-collector.apiSecret.key
  1. Install or Upgrade the Remote Operator using Helm
helm upgrade --install sawmills-remote-operator \
  oci://public.ecr.aws/s7a5m1b4/sawmills-remote-operator-chart \
  --version 0.172.0 \
  --create-namespace \
  --namespace sawmills \
  --set apiKeyExistingSecret=sawmills-secret \
  --set operatorAddress=https://controller.ue1.prod.plat.sm-svc.com \
  --set collectorName="test-collector"

Updating Collector Values

The remote operator deploys the collector into the cluster. Collector values are passed as a values file to the remote operator Helm chart. To change collector configuration, update the managedCharts.sawmills-collector section in values.yaml and upgrade the remote operator. For details, see Collector Customization.

Step 3: Validate the Collector

Wait for the install to complete and all pods to enter a Running state. Validate the collector by clicking Test Installation. This confirms the collector is deployed and communicating back to Sawmills.
When validation passes, you’ll see success messages and a link to create or assign a pipeline via Pipelines Editor. If you created the collector but haven’t completed installation yet, its status will show as Awaiting Deployment on the Collectors page.

Next Actions

  • Pipelines Editor: Create a new pipeline or assign an existing pipeline to your collector.
  • Done: Finish without creating a pipeline.
  • Previous: Go back to change settings.

Remote Operator Resources

By default, 3 replicas of the remote operator are deployed with the following resource requests and limits:
requests:
  memory: 256Mi
  cpu: 250m
limits:
  memory: 1Gi
  cpu: 500m

Autoscaling

Autoscaling is enabled by default with a minimum of 3 and a maximum of 10 collector instances.

Capacity Planning

For detailed guidance on sizing and scaling, see Capacity Planning.

KEDA Autoscaling

We recommend using KEDA for autoscaling. KEDA supports more flexible scaling rules and metrics. Enable it by setting keda.enabled to true in values.yaml:
managedCharts:
  sawmills-collector:
    keda:
      enabled: true
See KEDA Autoscaling for more information.

Anti-Affinity

Anti-affinity is enabled by default to ensure collector pods are spread across nodes.