Skip to content

Conversation

rkuo-danswer
Copy link
Contributor

Description

Fixes https://linear.app/danswer/issue/DAN-1956/update-helm-charts-to-separate-workers

How Has This Been Tested?

[Describe the tests you ran to verify your changes]

Backporting (check the box to trigger backport action)

Note: You have to check that the action passes, otherwise resolve the conflicts manually and tag the patches.

  • This PR should be backported (make sure to check that the backport attempt succeeds)
  • [Optional] Override Linear Check

Copy link

vercel bot commented May 8, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
internal-search ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 12, 2025 11:49pm

@rkuo-danswer rkuo-danswer marked this pull request as ready for review May 8, 2025 23:40
@rkuo-danswer rkuo-danswer requested a review from a team as a code owner May 8, 2025 23:40
Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Summary

This PR separates the monolithic Celery background worker into specialized worker deployments in the Helm charts, enabling better resource allocation and task management.

  • Added 7 distinct Celery worker deployments in /deployment/helm/charts/onyx/templates/ for specialized tasks: indexing, heavy processing, light tasks, monitoring, primary tasks, user files indexing, and beat scheduling
  • Introduced celery_shared configuration in values.yaml for common image settings across workers
  • Each worker deployment uses dedicated queues (e.g., connector_indexing, monitoring, periodic_tasks) for task specialization
  • All workers currently run with privileged security context and root user access, which may need security review
  • Resource limits and requests are undefined in values.yaml, which should be configured for production deployments

9 file(s) reviewed, 5 comment(s)
Edit PR Review Bot Settings | Greptile

…ure/helm-separate-workers

# Conflicts:
#	backend/tests/integration/multitenant_tests/tenants/test_tenant_creation.py
privileged: true
runAsUser: 0
enableMiniChunk: "true"
resources: {}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is it best to leave all the resources as blank? Or do we have an idea of a reasonable resource limit/request we can put in based on our cloud?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could put something in. Was just defaulting to what was there.

@rkuo-danswer rkuo-danswer added this pull request to the merge queue May 13, 2025
Merged via the queue into main with commit d8068f0 May 13, 2025
10 of 11 checks passed
@rkuo-danswer rkuo-danswer deleted the feature/helm-separate-workers branch May 13, 2025 03:20
ferdinandl007 pushed a commit to ferdinandl007/onyx that referenced this pull request May 19, 2025
* add test

* try breaking out background workers

* fix helm lint complaints

* rename disabled files more

* try different folder structure

* fix beat selector

* vespa setup should break on success

* improved instructions for basic helm chart testing

---------

Co-authored-by: Richard Kuo (Onyx) <rkuo@onyx.app>
ZhipengHe pushed a commit to ZhipengHe/onyx that referenced this pull request Jun 6, 2025
* add test

* try breaking out background workers

* fix helm lint complaints

* rename disabled files more

* try different folder structure

* fix beat selector

* vespa setup should break on success

* improved instructions for basic helm chart testing

---------

Co-authored-by: Richard Kuo (Onyx) <rkuo@onyx.app>
AnkitTukatek pushed a commit to TukaTek/onyx that referenced this pull request Sep 23, 2025
* add test

* try breaking out background workers

* fix helm lint complaints

* rename disabled files more

* try different folder structure

* fix beat selector

* vespa setup should break on success

* improved instructions for basic helm chart testing

---------

Co-authored-by: Richard Kuo (Onyx) <rkuo@onyx.app>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants