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

kubeadm manifests should use multi-arch images #1030

Closed
dims opened this issue Aug 2, 2018 · 8 comments
Closed

kubeadm manifests should use multi-arch images #1030

dims opened this issue Aug 2, 2018 · 8 comments
Assignees
Labels
area/ecosystem kind/documentation Categorizes issue or PR as related to documentation. kind/feature Categorizes issue or PR as related to a new feature. lifecycle/active Indicates that an issue or PR is actively being worked on by a contributor. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete.
Milestone

Comments

@dims
Copy link
Member

dims commented Aug 2, 2018

Just like we started using the pause image with fat manifest, we should switch to using all the kubernetes components to use images without say the -amd64 in their name. Starting with the items below:

https://github.com/kubernetes/kubernetes/blob/master/cmd/kubeadm/app/images/images.go#L70-L73

TODO(@neolit123): this page needs a bump, possibly others too:
https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/

@neolit123 neolit123 added area/ecosystem priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. kind/feature Categorizes issue or PR as related to a new feature. labels Aug 2, 2018
@neolit123
Copy link
Member

these end up calling GetGenericArchImage() which was a recent addition and it uses runtime.GOARCH.
we do have manifest lists nowadays in the gcr bucket, but do we have them for everything?

@rosti WDYT?

@neolit123 neolit123 added this to the v1.12 milestone Aug 2, 2018
@rosti
Copy link

rosti commented Aug 2, 2018

I'll prepare a PR for this tomorrow.

@dims
Copy link
Member Author

dims commented Aug 2, 2018

@neolit123 if we find something missing then we fix it :)

@neolit123
Copy link
Member

neolit123 commented Aug 3, 2018

/lifecycle active

^ testing new labels 😎

edit: hmm, halp doesn't work.
adding manually.

@neolit123 neolit123 added the lifecycle/active Indicates that an issue or PR is actively being worked on by a contributor. label Aug 3, 2018
@BenTheElder
Copy link
Member

BenTheElder commented Aug 3, 2018 via email

@neolit123
Copy link
Member

got it, thanks.

@neolit123
Copy link
Member

/kind documentation

this needs an update:
https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/

@k8s-ci-robot k8s-ci-robot added the kind/documentation Categorizes issue or PR as related to documentation. label Aug 3, 2018
@neolit123 neolit123 self-assigned this Aug 3, 2018
@luxas
Copy link
Member

luxas commented Aug 4, 2018

Closing this in favor for the oldest open issue we have atm: #51 sigh
Sooooon we're there 😎 🎉

@luxas luxas closed this as completed Aug 4, 2018
k8s-github-robot pushed a commit to kubernetes/kubernetes that referenced this issue Aug 28, 2018
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

kubeadm: Drop arch suffixes

**What this PR does / why we need it**:

This change removes arch suffixes from control plane images (etcd, kube-apiserver, kube-scheduler, kube-proxy, etc.). These are not needed, as almost all control plane images have a fat manifest now. It also adds a missing unit test for `GetGenericImage`

We have arch suffixes only for kube-dns images now.

Sample output of `kubeadm config images pull` with this change:

```
$ ./_output/bin/kubeadm config images pull
[config/images] Pulled k8s.gcr.io/kube-apiserver:v1.11.1
[config/images] Pulled k8s.gcr.io/kube-controller-manager:v1.11.1
[config/images] Pulled k8s.gcr.io/kube-scheduler:v1.11.1
[config/images] Pulled k8s.gcr.io/kube-proxy:v1.11.1
[config/images] Pulled k8s.gcr.io/pause:3.1
[config/images] Pulled k8s.gcr.io/etcd:3.2.18
[config/images] Pulled k8s.gcr.io/coredns:1.1.3
$ ./_output/bin/kubeadm config images pull --feature-gates=CoreDNS=false
[config/images] Pulled k8s.gcr.io/kube-apiserver:v1.11.1
[config/images] Pulled k8s.gcr.io/kube-controller-manager:v1.11.1
[config/images] Pulled k8s.gcr.io/kube-scheduler:v1.11.1
[config/images] Pulled k8s.gcr.io/kube-proxy:v1.11.1
[config/images] Pulled k8s.gcr.io/pause:3.1
[config/images] Pulled k8s.gcr.io/etcd:3.2.18
[config/images] Pulled k8s.gcr.io/k8s-dns-kube-dns-amd64:1.14.10
[config/images] Pulled k8s.gcr.io/k8s-dns-sidecar-amd64:1.14.10
[config/images] Pulled k8s.gcr.io/k8s-dns-dnsmasq-nanny-amd64:1.14.10
```

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Refs kubernetes/kubeadm#1030 kubernetes/kubeadm#51

**Special notes for your reviewer**:
/cc @kubernetes/sig-cluster-lifecycle-pr-reviews
/area kubeadm
/kind feature
/assign @luxas
/assign @timothysc
/assign @dims 
/assign @neolit123 

**Release note**:

```release-note
kubeadm: Control plane images (etcd, kube-apiserver, kube-proxy, etc.) don't use arch suffixes. Arch suffixes are kept for kube-dns only.
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/ecosystem kind/documentation Categorizes issue or PR as related to documentation. kind/feature Categorizes issue or PR as related to a new feature. lifecycle/active Indicates that an issue or PR is actively being worked on by a contributor. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete.
Projects
None yet
Development

No branches or pull requests

6 participants