Skip to content

On-Premises Scheduler Setup

This guide covers installing additional scheduler instances on your on-premises EasyTask deployment. You should have already completed the Host Setup which deploys the default scheduler as part of the full infrastructure.


Prerequisites

Requirement Details
Host Setup Complete Infrastructure must be running — see Host Setup
PostgreSQL Running Database accessible on port 5432
KeyDB Running Message broker accessible on port 6379
OpenBao Running Secrets store accessible on port 8200
Keycloak Running Identity management accessible on port 8081

Step 1 — Launch the Installer

If the installer is still running from the host setup, you can continue using the same session. Otherwise, run the installer again on your host:

cd ~/easytask
./easytask_installer.bin

You will see the main menu:

============================================================
   EasyTask Installer V2
============================================================

  What would you like to do?

    1. Setup EasyTask Host (Infrastructure)
    2. Install Scheduler Instance
    3. Install Agent
    4. Install Integration Server
    5. Install EasyTask CLI
    6. Uninstall EasyTask (Full)
    7. Uninstall Scheduler Instance
    8. Uninstall Agent
    9. Uninstall Integration Server
    0. Exit

  Enter choice [0-9]:

Step 2 — Select "Install Scheduler Instance"

Select 2 from the menu. The installer prompts for an instance name:

  Enter choice [0-9]: 2

  Scheduler instance name [default]:

Instance Names

  • Press Enter to accept the default instance name (default)
  • Type a custom name to create a separate scheduler instance (e.g., production, staging, etl)

Each scheduler instance runs as its own container: easytask-scheduler-<instance_name>

When to add scheduler instances

The default scheduler handles all workflows out of the box. Add additional instances when you need workload isolation — for example, separating production workloads from development, or dedicating a scheduler to a specific team's tasks.


Step 3 — Installation Process

The installer automatically:

  1. Validates prerequisites — checks that PostgreSQL, KeyDB, Keycloak, and OpenBao are all reachable
  2. Verifies the license — confirms license certificates are in place
  3. Fetches the image manifest — pulls the latest scheduler image reference from the registry
  4. Pulls the container image — downloads the scheduler image from the EasyTask registry
  5. Creates the container — starts the scheduler inside the easytask_pod
  Checking prerequisites...
    Broker      (127.0.0.1:6379) ... OK
    Vault       (http://127.0.0.1:8200/v1/sys/health) ... OK
    Podman      ... OK (5.4.0)

  Checking license certificates...
  [OK]

  Fetching app image manifest from backend...
  [OK] Image manifest loaded.

  Starting app installation...
    Scheduler:
      Container: easytask-scheduler-production
      Instance:  production
      ... OK

Step 4 — Verify

Check that the new scheduler container is running:

podman ps | grep scheduler

You should see:

xxxxxxxxxxxx  .../app/easytask-scheduler:latest  easytask-scheduler-production  Up ...

Check Scheduler Logs

podman logs -f easytask-scheduler-production

Verify in the Web Console

Log in to the web console at http://<your-host-ip>:8002 and navigate to Schedulers in the sidebar. The new scheduler instance should appear as online.


Removing a Scheduler Instance

To remove a scheduler instance, use the installer menu:

  Enter choice [0-9]: 7

  Removing scheduler container: easytask-scheduler-production
  Removed container: easytask-scheduler-production

Active workloads

Removing a scheduler stops all tasks currently assigned to it. Ensure no active workflows depend on the instance before uninstalling.


Next Steps

With additional schedulers running:

  1. Install Agents — Deploy worker agents on this or other hosts: Agent Setup
  2. Install Integration Server — Add integration capabilities: Host Setup → Integration Server
  3. Configure Autostart — Ensure everything starts on boot: Post-Installation Setup

Frequently Asked Questions

Can I run multiple schedulers on the same host? Yes. Each scheduler instance runs in its own container within the pod. They share the same PostgreSQL database and KeyDB broker.

How are scheduler instances isolated? Each scheduler instance processes its own set of tasks. Tasks are assigned to schedulers via instance-specific configuration in the web console.

Does adding a scheduler require more resources? Each scheduler container typically requires 512 MB – 1 GB of RAM. Ensure your host has sufficient resources.