Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nomad should choose the default pause container based on system architecture #8926

Closed
shannonmcin opened this issue Sep 18, 2020 · 2 comments · Fixed by #8957
Closed

Nomad should choose the default pause container based on system architecture #8926

shannonmcin opened this issue Sep 18, 2020 · 2 comments · Fixed by #8957
Assignees
Labels
stage/accepted Confirmed, and intend to work on. No timeline committment though. theme/consul/connect Consul Connect integration type/enhancement
Milestone

Comments

@shannonmcin
Copy link

Nomad version

Nomad v0.12.4 (8efaee4)

Operating system and Environment details

Ubuntu 20.04 on ARM64
Consul v1.8.4

Issue

Nomad should choose the default "pause" container based on system architecture, instead of always defaulting to the AMD64 image.

When deploying a job with a Consul Connect-enabled service on Nomad on an ARM64 system without specifying the infra_image, Nomad pulls the AMD64 pause container. This causes the pause container to exit with the error exec user process caused "exec format error", which causes the envoy container to exit with the error Failed to start container ***(envoy container id)***: API error (409): cannot join network of a non running container: ***(pause container id)***, which prevents Consul Connect from working (and any sibling tasks from running).

Reproduction steps

Run any job with a Consul-Connect enabled service on Nomad installed on an ARM64 machine, with the infra_image not specified in the Nomad agent config. For example, the example countdash job.

@shoenig shoenig added stage/accepted Confirmed, and intend to work on. No timeline committment though. theme/consul/connect Consul Connect integration type/enhancement labels Sep 18, 2020
@shoenig
Copy link
Member

shoenig commented Sep 18, 2020

Thanks for reporting @shannonmcin, this is something we'll want to get working properly.

@shoenig shoenig added this to the 0.13 milestone Sep 18, 2020
@shoenig shoenig self-assigned this Sep 18, 2020
shoenig added a commit that referenced this issue Sep 23, 2020
The 'docker.config.infra_image' would default to an amd64 container.
It is possible to reference the correct image for a platform using
the `runtime.GOARCH` variable, eliminating the need to explicitly set
the `infra_image` on non-amd64 platforms.

Also upgrade to Google's pause container version 3.1 from 3.0, which
includes some enhancements around process management.

Fixes #8926
shoenig added a commit that referenced this issue Sep 23, 2020
The 'docker.config.infra_image' would default to an amd64 container.
It is possible to reference the correct image for a platform using
the `runtime.GOARCH` variable, eliminating the need to explicitly set
the `infra_image` on non-amd64 platforms.

Also upgrade to Google's pause container version 3.1 from 3.0, which
includes some enhancements around process management.

Fixes #8926
fredrikhgrelland pushed a commit to fredrikhgrelland/nomad that referenced this issue Sep 28, 2020
The 'docker.config.infra_image' would default to an amd64 container.
It is possible to reference the correct image for a platform using
the `runtime.GOARCH` variable, eliminating the need to explicitly set
the `infra_image` on non-amd64 platforms.

Also upgrade to Google's pause container version 3.1 from 3.0, which
includes some enhancements around process management.

Fixes hashicorp#8926
roaks3 pushed a commit that referenced this issue Oct 7, 2020
The 'docker.config.infra_image' would default to an amd64 container.
It is possible to reference the correct image for a platform using
the `runtime.GOARCH` variable, eliminating the need to explicitly set
the `infra_image` on non-amd64 platforms.

Also upgrade to Google's pause container version 3.1 from 3.0, which
includes some enhancements around process management.

Fixes #8926
@github-actions
Copy link

github-actions bot commented Nov 1, 2022

I'm going to lock this issue because it has been closed for 120 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 1, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
stage/accepted Confirmed, and intend to work on. No timeline committment though. theme/consul/connect Consul Connect integration type/enhancement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants