[opensuse-kubic] How many Kubernetes Versions should we support?
Hi all, I've been working on changing our kubernetes package to be 'truely multi-versioned', so not only will we have two versions of kubelet packaged, but the whole control plane. This is so we can offer the containers of both control plane versions, so we'll be able to do more realistic upgrade testing without worrying that the old control plane containers get tidied up when they're obsoleted. This is looking good, but has lead to an interesting side effect. In theory Kubic will now be able to support not only the latest kubernetes version, but all upstream supported versions. At time of writing this would mean packaging not only 1.18.x and 1.17.x but also 1.16.x and 1.15.x. Given there are some conservative kubernetes users out there, I can see some finding that appealing. But I don't want to package 4 versions of kubernetes all by myself. Does anyone like this idea of extending our kubernetes packaging to all currently supported upstream versions? If so, are you willing to help keep those packages updated and tested? it shouldn't be too hard for a beginner packager once we get it started :) Regards, -- Richard Brown Linux Distribution Engineer - Future Technology Team Phone +4991174053-361 SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, D-90409 Nuernberg (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer -- To unsubscribe, e-mail: opensuse-kubic+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kubic+owner@opensuse.org
Hi Richard, On 08.04.20 at 10:44 Richard Brown wrote:
Does anyone like this idea of extending our kubernetes packaging to all currently supported upstream versions? If so, are you willing to help keep those packages updated and tested? it shouldn't be too hard for a beginner packager once we get it started :)
I'd be willing to help out, at least for the packaging part. But maybe this gives me an opportunity to finally start using kubernetes :-) Kind Regards, Johannes -- Johannes Kastl Linux Consultant & Trainer Tel.: +49 (0) 151 2372 5802 Mail: kastl@b1-systems.de B1 Systems GmbH Osterfeldstraße 7 / 85088 Vohburg http://www.b1-systems.de GF: Ralph Dehner Unternehmenssitz: Vohburg / AG: Ingolstadt,HRB 3537
On Thu, 2020-04-09 at 08:48 +0200, Johannes Kastl wrote:
Hi Richard,
On 08.04.20 at 10:44 Richard Brown wrote:
Does anyone like this idea of extending our kubernetes packaging to all currently supported upstream versions? If so, are you willing to help keep those packages updated and tested? it shouldn't be too hard for a beginner packager once we get it started :)
I'd be willing to help out, at least for the packaging part. But maybe this gives me an opportunity to finally start using kubernetes :-)
Kind Regards, Johannes
thanks Johannes (and Emiliano) who reached out to me privately :) I've gone ahead and bootstrapped the beginning of the kubernetes1.16 packaging in devel:kubic, you can find it here https://build.opensuse.org/package/show/devel:kubic/kubernetes1.16 I expect it to be wrong as it's mostly just a copy/paste from the kubernetes1.17 packaging For example, the requires: for go/go API versions is almost certainly wrong and will need adjusting And as you can see the build is failing because the patches do not apply - they probably need 1.16 related ones..there are probably also patches from 1.16 that need to be restored. Copy/pasting stuff from our old kubernetes packaging we used to use for 1.16 might be a very quick way to address these issues https://build.opensuse.org/package/show/devel:kubic/kubernetes?rev=56 Once we have kubernetes1.16 building properly, we'll also need containers for the control plane This will likely be in the form of '*-minus2-*' containers referencing the new packages that otherwise match the '*-minus1-*' containers we already have in devel:kubic:containers https://build.opensuse.org/project/show/devel:kubic:containers But I'll be happy to help get that started once kubernetes1.16 is packaged Alternatively, given 1.16 is kinda getting long in the tooth, the alternative approach to this would be to forgo packaging 1.16 but instead I'd like your help maintaining 1.17 and 1.18 once kubernetes1.19 is available. This is relatively easy to do (when everything goes ok), as it primarily involves watching/subscribing to https://github.com/kubernetes/kubernetes/releases Then when there is a new version following the rough process documented below: - Branch+checkout the appropriate package eg. osc bco kubernetes1.17 - In the checked out package, edit _service and replace the currently packaged version (eg 1.17.4) with the newly released version (eg 1.17.5) - Run the OBS service macros locally: osc service disabledrun - Remove the old tarball and add the new tarball that was just created by the service run: osc rm kubernetes-1.17.4.tar.xz osc add kubernetes-1.17.5.tar.xz - Sanity check all the automatically updated changes osc diff - If they look good, check them in osc ci - Wait for OBS to do it's thing and build the package. If they build, test them if you can (or trust openQA to do so later..I know testing k8s locally can be tricky). -Fix any issues, then then submit the package to devel:kubic osc sr -m "Update to kubernetes 1.17.5" It would be a great help if I dont have to look after all the kubernetes versions we now have on my own :) Thanks in advance. - Richard -- Richard Brown Linux Distribution Engineer - Future Technology Team Phone +4991174053-361 SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, D-90409 Nuernberg (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer -- To unsubscribe, e-mail: opensuse-kubic+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kubic+owner@opensuse.org
On 4/24/20 11:44 AM, Richard Brown wrote:
Alternatively, given 1.16 is kinda getting long in the tooth, the alternative approach to this would be to forgo packaging 1.16 but instead I'd like your help maintaining 1.17 and 1.18 once kubernetes1.19 is available.
1.16 is the first release to have 1year LTS support, not decided yet though, but most probably, details on the link below https://groups.google.com/d/msg/kubernetes-keps/Sa4zHLh4YUo/s_oOwnDuAwAJ -- To unsubscribe, e-mail: opensuse-kubic+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kubic+owner@opensuse.org
On Fri, 2020-04-24 at 11:57 +0200, Antonio Ojea wrote:
On 4/24/20 11:44 AM, Richard Brown wrote:
Alternatively, given 1.16 is kinda getting long in the tooth, the alternative approach to this would be to forgo packaging 1.16 but instead I'd like your help maintaining 1.17 and 1.18 once kubernetes1.19 is available.
1.16 is the first release to have 1year LTS support, not decided yet though, but most probably, details on the link below
https://groups.google.com/d/msg/kubernetes-keps/Sa4zHLh4YUo/s_oOwnDuAwAJ
Perfect, then I guess doing the work to get the kubernetes1.16 package up to spec is worth it! Still glad I shared the general workflow for all the other kubernetes1.1x packages too though, help is welcome everywhere :) Regards, -- Richard Brown Linux Distribution Engineer - Future Technology Team Phone +4991174053-361 SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, D-90409 Nuernberg (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer -- To unsubscribe, e-mail: opensuse-kubic+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kubic+owner@opensuse.org
participants (3)
-
Antonio Ojea
-
Johannes Kastl
-
Richard Brown