You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Output from nomad version
mix of 1.8-beta+ent and 1.7.4+ent
Operating system and Environment details
Debian 12 client nodes with Nomad 1.8-beta+ent and Consul 1.17.2
Debian 12 client nodes with Nomad 1.7.4+ent and Consul 1.17.2
Issue
When scheduling a job that contains the new transparent_proxy{} block, it seems Nomad will ignore that attribute and possibly schedule it on non-transparent proxy nodes. In my case it would be client nodes that are version 1.7.4. To workaround, I created a constraint for nomad.version to ensure it's schedule on the correct node.
I either use a constraint to force it upon a host that is older than 1.8 or I set the 1.8 node to ineligible.
Submit job. Nomad schedules it and tells me the allocation is healthy.
Expected Result
I'm sure I could add in a health check, but I would expect Nomad to read the transparent_proxy{} block and read the attributes of the nodes before making the scheduling decision just like the other attributes.
Actual Result
Nomad will schedule transparent_proxy jobs on nodes without transparent proxy
Hi @awanaut! Thanks for this report! I added constraints for the CNI plugin in #20244 but you're right that doesn't restrict the client version appropriately. I'll get this fixed for the final release.
tgross
changed the title
Transparent proxy jobs can be scheduled on nodes without transparent proxy (ie. older versions)
[beta] Transparent proxy jobs can be scheduled on nodes without transparent proxy (ie. older versions)
May 16, 2024
The new transparent proxy feature already has an implicity constraint on the
presence of the CNI plugin. But if the CNI plugin is installed on an older
version of Nomad, this isn't sufficient to protect against placing tproxy
workloads on clients that can't support it. Add a Nomad version constraint as
well.
Fixes: #20614
The new transparent proxy feature already has an implicity constraint on the
presence of the CNI plugin. But if the CNI plugin is installed on an older
version of Nomad, this isn't sufficient to protect against placing tproxy
workloads on clients that can't support it. Add a Nomad version constraint as
well.
Fixes: #20614
Nomad version
Output from
nomad version
mix of 1.8-beta+ent and 1.7.4+ent
Operating system and Environment details
Debian 12 client nodes with Nomad 1.8-beta+ent and Consul 1.17.2
Debian 12 client nodes with Nomad 1.7.4+ent and Consul 1.17.2
Issue
When scheduling a job that contains the new transparent_proxy{} block, it seems Nomad will ignore that attribute and possibly schedule it on non-transparent proxy nodes. In my case it would be client nodes that are version 1.7.4. To workaround, I created a constraint for nomad.version to ensure it's schedule on the correct node.
Reproduction steps
Expected Result
I'm sure I could add in a health check, but I would expect Nomad to read the transparent_proxy{} block and read the attributes of the nodes before making the scheduling decision just like the other attributes.
Actual Result
Nomad will schedule transparent_proxy jobs on nodes without transparent proxy
Job file (if appropriate)
The text was updated successfully, but these errors were encountered: