Ive recently upgraded my airbyte deployment (im ru...
# replication-ask-ai
t
Ive recently upgraded my airbyte deployment (im running it on K8S using the helm chart). Everything was working smoothly while I was on the 0.50.2 version. Im using an exclusive node pool for all the jobs. After upgrading to 0.50.11, my jobs (specifically the read connector jobs) arent respecting the env variable
JOB_MAIN_CONTAINER_CPU_REQUEST
and are requesting more CPU than what i configure in my
jobs.resources.requests.cpu
config. I've noticed that the value being requested varies depending on the connector being consumed. Im using the latest helm chart available
k
Based on the information provided in the extracts, it seems like you're encountering an issue with the
JOB_MAIN_CONTAINER_CPU_REQUEST
environment variable not being respected after upgrading your Airbyte deployment. From the [documentation](https://docs.airbyte.com/operator-guides/configuring-connector-resources),
JOB_MAIN_CONTAINER_CPU_REQUEST
is used to define the job container's minimum CPU usage. However, there's no mention of a specific issue related to this environment variable in the provided extracts. In a [forum discussion](https://discuss.airbyte.io/t/4533), a user mentioned a similar issue where the environment variables weren't being handled correctly by the Helm chart. They managed to resolve their issue by declaring all the specific environment variables (
SPEC_JOB_KUBE_NODE_SELECTORS
,
CHECK_JOB_KUBE_NODE_SELECTORS
, and
DISCOVER_JOB_KUBE_NODE_SELECTORS
). However, this was related to node selectors, not CPU requests. Unfortunately, without more specific information related to your issue, it's hard to provide a definitive solution. It might be a good idea to check the Helm chart's configuration and ensure that the
JOB_MAIN_CONTAINER_CPU_REQUEST
environment variable is being set correctly. If the issue persists, consider reaching out to the Airbyte community on their [Slack channel](https://airbytehq.slack.com) or [forum](https://discuss.airbyte.io) for more targeted assistance.
t
the JOB_MAIN_CONTAINER_CPU_REQUEST env variable is being passed down correctly to the worker pod - sadly I think its not something helm related but airbyte itself
i managed to fix it - basically, apparently airbyte only cares about JOB_MAIN_CONTAINER_CPU_LIMIT - once i set it, the job pods started using its values as both the limit and request value for the job.
the problem happens only with the source pods. gonna open an issue on gh ASAP
a
Hey @Thiago Villani did you ever resolve this or file an issue? My team is struggling with it as well.
t
hey @Alan McCarty! i actually did find a way to make it work - i can only guarantee my workaround at 50.12 though. what i did was setting the env variable
JOB_MAIN_CONTAINER_CPU_LIMIT
env var on my values.yaml so i could customize it. it was the only env var that the source job pods remotely cared about when configuring cpu usage i didnt file an issue - actually, i tried upgrading airbyte's version last week and this bug kinda evolved - now the source jobs (I tested mongodb and postgres sources) ignore even
JOB_MAIN_CONTAINER_CPU_REQUEST
There were some updates in the documentation and, theoretically, now we are supposed to use the env vars:
JOB_MAIN_CONTAINER_CPU_REQUEST
- Define the job container's minimum CPU usage. Units follow either Docker or Kubernetes, depending on the deployment. Defaults to none.
JOB_MAIN_CONTAINER_CPU_LIMIT
- Define the job container's maximum CPU usage. Units follow either Docker or Kubernetes, depending on the deployment. Defaults to none.
JOB_MAIN_CONTAINER_MEMORY_REQUEST
- Define the job container's minimum RAM usage. Units follow either Docker or Kubernetes, depending on the deployment. Defaults to none.
JOB_MAIN_CONTAINER_MEMORY_LIMIT
- Define the job container's maximum RAM usage. Units follow either Docker or Kubernetes, depending on the deployment. Defaults to none. ive tried to use all of them but none seem to work on source pods 🤡
l
So only modify JOB_MAIN_CONTAINER_CPU_LIMIT to increase resources on the jobs container...
Seems like the correct format would be same as in the yaml configs e.g.
2Gi