• Logo
    Juju
  • juju.is/docs
  • More resources
    • Discourse
    • Matrix
    • GitHub
Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
Juju documentation
Juju documentation
  • Tutorial
  • How-to guides
    • Manage your deployment
      • Set up your Juju deployment
      • Set up your deployment - local testing and development
      • Set up your Juju deployment - offline
      • Harden your Juju deployment
      • Troubleshoot your Juju deployment
      • Upgrade your Juju deployment
      • Tear down your deployment – local testing and development
    • Manage juju
    • Manage plugins
    • Manage clouds
    • Manage credentials
    • Manage metadata
    • Manage controllers
    • Manage the Juju dashboard
    • Manage models
    • Manage secret backends
    • Manage logs
    • Manage SSH keys
    • Manage users
    • Manage charms
    • Manage applications
    • Manage resources
    • Manage actions
    • Manage relations
    • Manage offers
    • Manage units
    • Manage secrets
    • Manage machines
    • Manage storage
    • Manage storage pools
    • Manage spaces
    • Manage subnets
    • Define resource tags in a cloud
  • Reference
    • Action
    • Agent
    • Application
    • Bundle
    • Charm
      • Charm maturity
    • Client
    • Cloud (substrate)
      • List of supported clouds
        • Amazon EC2
        • Amazon EKS
        • Canonical K8s
        • Google GCE
        • Google GKE
        • LXD
        • MAAS
        • MicroK8s
        • Microsoft Azure
        • Microsoft AKS
        • OpenStack
        • Oracle OCI
        • Unmanaged
        • VMware vSphere
      • Kubernetes clouds and Juju
    • Configuration
      • List of controller configuration keys
        • audit-log-exclude-methods
        • juju-mgmt-space
      • List of model configuration keys
    • Constraint
    • containeragent
    • Controller
    • Credential
    • High availability (HA)
    • Hook
    • Hook command
      • List of hook commands
        • action-fail
        • action-get
        • action-log
        • action-set
        • application-version-set
        • close-port
        • config-get
        • credential-get
        • goal-state
        • is-leader
        • juju-log
        • juju-reboot
        • network-get
        • open-port
        • opened-ports
        • relation-get
        • relation-ids
        • relation-list
        • relation-model-get
        • relation-set
        • resource-get
        • secret-add
        • secret-get
        • secret-grant
        • secret-ids
        • secret-info-get
        • secret-remove
        • secret-revoke
        • secret-set
        • state-delete
        • state-get
        • state-set
        • status-get
        • status-set
        • storage-add
        • storage-get
        • storage-list
        • unit-get
    • Juju
      • Juju component cross-version compatibility
      • Juju Roadmap & Releases
    • juju CLI
      • List of juju CLI commands
        • juju actions
        • juju add-cloud
        • juju add-credential
        • juju add-k8s
        • juju add-machine
        • juju add-model
        • juju add-secret
        • juju add-secret-backend
        • juju add-space
        • juju add-ssh-key
        • juju add-storage
        • juju add-unit
        • juju add-user
        • juju attach-resource
        • juju attach-storage
        • juju autoload-credentials
        • juju bind
        • juju bootstrap
        • juju cancel-task
        • juju change-user-password
        • juju charm-resources
        • juju clouds
        • juju config
        • juju constraints
        • juju consume
        • juju controller-config
        • juju controllers
        • juju create-backup
        • juju create-storage-pool
        • juju credentials
        • juju dashboard
        • juju debug-code
        • juju debug-hooks
        • juju debug-log
        • juju default-credential
        • juju default-region
        • juju deploy
        • juju destroy-controller
        • juju destroy-model
        • juju detach-storage
        • juju diff-bundle
        • juju disable-command
        • juju disable-user
        • juju disabled-commands
        • juju documentation
        • juju download
        • juju download-backup
        • juju enable-command
        • juju enable-destroy-controller
        • juju enable-user
        • juju exec
        • juju export-bundle
        • juju expose
        • juju find
        • juju find-offers
        • juju firewall-rules
        • juju grant
        • juju grant-cloud
        • juju grant-secret
        • juju help
        • juju help-action-commands
        • juju help-hook-commands
        • juju import-filesystem
        • juju import-ssh-key
        • juju info
        • juju integrate
        • juju kill-controller
        • juju login
        • juju logout
        • juju machines
        • juju migrate
        • juju model-config
        • juju model-constraints
        • juju model-defaults
        • juju model-secret-backend
        • juju models
        • juju move-to-space
        • juju offer
        • juju offers
        • juju operations
        • juju refresh
        • juju regions
        • juju register
        • juju reload-spaces
        • juju remove-application
        • juju remove-cloud
        • juju remove-credential
        • juju remove-k8s
        • juju remove-machine
        • juju remove-offer
        • juju remove-relation
        • juju remove-saas
        • juju remove-secret
        • juju remove-secret-backend
        • juju remove-space
        • juju remove-ssh-key
        • juju remove-storage
        • juju remove-storage-pool
        • juju remove-unit
        • juju remove-user
        • juju rename-space
        • juju resolved
        • juju resources
        • juju resume-relation
        • juju retry-provisioning
        • juju revoke
        • juju revoke-cloud
        • juju revoke-secret
        • juju run
        • juju scale-application
        • juju scp
        • juju secret-backends
        • juju secrets
        • juju set-constraints
        • juju set-credential
        • juju set-firewall-rule
        • juju set-model-constraints
        • juju show-action
        • juju show-application
        • juju show-cloud
        • juju show-controller
        • juju show-credential
        • juju show-machine
        • juju show-model
        • juju show-offer
        • juju show-operation
        • juju show-secret
        • juju show-secret-backend
        • juju show-space
        • juju show-status-log
        • juju show-storage
        • juju show-task
        • juju show-unit
        • juju show-user
        • juju spaces
        • juju ssh
        • juju ssh-keys
        • juju status
        • juju storage
        • juju storage-pools
        • juju subnets
        • juju suspend-relation
        • juju switch
        • juju sync-agent-binary
        • juju trust
        • juju unexpose
        • juju unregister
        • juju update-cloud
        • juju update-credential
        • juju update-k8s
        • juju update-public-clouds
        • juju update-secret
        • juju update-secret-backend
        • juju update-storage-pool
        • juju upgrade-controller
        • juju upgrade-model
        • juju users
        • juju version
        • juju whoami
      • juju environment variables
    • juju-dashboard (The Juju dashboard)
    • juju web CLI
    • jujuc
    • jujud
    • Log
    • Machine
    • Simplestreams metadata
    • Model
    • Offer
    • Pebble
    • Placement directive
    • Plugin
      • List of known Juju plugins
        • Plugin juju-metadata
        • Plugin juju-stash
      • Plugin flags
    • Relation (integration)
    • Removing things
    • Resource (charm)
    • Resource (compute)
      • List of commands available on a compute resource provisioned by Juju
        • juju-dumplogs
        • juju-exec
        • juju-introspect
          • List of juju-introspect macros
            • juju_controller_agent_name
            • juju_cpu_profile
            • juju_engine_report
            • juju_goroutines
            • juju_heap_profile
            • juju_controller_agent_name
            • juju_machine_lock
            • juju_metrics
            • juju_pubsub_report
            • juju_start_unit
            • juju_statepool_report
            • juju_statetracker_report
            • juju_stop_unit
            • juju_unit_agent_name
            • juju_unit_status
    • Scaling
    • Script
    • Secret
    • Space
    • SSH key
    • Status
    • Storage
    • Subnet
    • Telemetry
    • Unit
    • Upgrading things
    • User
    • Worker
    • Zone
  • Explanation
    • Architecture
    • Security
    • Performance
    • Application modelling
    • Charms vs. Kubernetes operators
    • About charming history
  • For contributors
    • How-to guides
      • Compile and run Juju agents on different architectures
      • Create a unit test suite
      • Debug a Dqlite core dump issue
      • Merge forward
      • Write a unit test
      • Write an integration test
      • Write tests
    • Reference
      • Agent
      • Binary container agent
      • Catacomb package
      • Conventional commits
      • CVEs
      • Dependency package
      • Entity lifecycle
      • High Availability (HA)
      • Testing
        • Integration testing
          • Integration test suite
          • Test include
        • Unit testing
          • Checker
          • Unit test suite
          • Util suite
      • Tomb package
      • Worker
      • Worker interface
      • Worker package
      • Writing workers
Back to top

Worker¶

See first: User docs | Worker

In Juju, a worker is any type that implements the worker interface.

Examples of workers include the dependency engine, instances run by the dependency engine (the typical usage of the term “worker”), and watchers .

A Juju agent runs one or more workers at the same time in parallel. A worker may run / be run by another worker.

Next
Worker interface
Previous
Tomb package
Copyright © 2025 CC-BY-SA, Canonical Ltd.
Last updated on Oct 15, 2025
Manage your tracker settings
Contents
  • Worker