ACS icon indicating copy to clipboard operation
ACS copied to clipboard

Recommended upgrade method

Open blackbaud-brandonstirnaman opened this issue 8 years ago • 7 comments

We have several ACS clusters running right now but I'd like to get them upgraded to 1.5.x soon.

Is there a documented/recommended script to handle this? I've looked around and only found bits and pieces. Thanks!

(Also, to have a real bug here as well, the URLs on the README for the MS Code of Conduct are broken)

Thanks for filing this issue.

Fix for Code of Conduct links: https://github.com/Azure/ACS/pull/6

There is a discussion of how to do manual upgrades in this thread: https://github.com/colemickens/azure-kubernetes-status/issues/15

I'm going to leave this open so that we can go ahead and document manual upgrade procedures formally. When those are available, they'll be linked to from here and this issue will then be closed. Hopefully the link supplied can unblock you short-term.

colemickens avatar Jan 23 '17 22:01 colemickens

@colemickens .. If a cluster is deployed from acs-engine. Would it be possible/advisable to edit kubernetes.json file and redeploy the cluster as a way to upgrade the k8s version on the cluster?

I'm guessing nodes will be killed and new nodes will be deployed to replace them. Will the k8s cluster be able to "recover" and continue transparently?

I'm guessing we will not have a chance to cordon/drain nodes before they get killed! right?

Thanks for the help

kim0 avatar May 03 '17 00:05 kim0

@kim0 no changing that would try to create a new cluster in the same resource group and you would get issues with the master fqdn being already taken os the deployment would fail. If you modify the _output folders apimodel.json file you could get the same cluster again, but we wouldn't make new agents/masters so we wouldnt' rerun cloud-init to install the newer k8s.
We are still looking at this and should have steps, design up in our issues or as a project. Sadly I don't know the ETA on that.

JackQuincy avatar May 03 '17 00:05 JackQuincy

@JackQuincy Thanks! How about the following poor-man's upgrade method Edit apimodel.json and redeploy the same cluster. Then, in order to force re-running cloud-init

for node in agents; drain(node) && force-delete(node) && redeploy; done

Super ugly I know .. But might it work? I was hoping to also use the auto-scaler from https://github.com/wbuchwalter/Kubernetes-acs-autoscaler .. Any thoughts as to how those two may work together, is most appreciated. Thanks!

kim0 avatar May 03 '17 00:05 kim0

There is a serious security vulnerability affecting a dependent project of kubernetes, dnsmasq: https://groups.google.com/forum/#!topic/kubernetes-security-announce/C6IkCdk7opo. Is the ACS team any further along with implementing cluster upgrades?

alastairs avatar Oct 02 '17 15:10 alastairs

Is there a status update available for this issue? Either on automated cluster upgrade procedures (if any) and manual upgrade procedures?

It seems there is this example (k8s upgrade) but documentation is light..

ComeMaes avatar Nov 10 '17 12:11 ComeMaes

Is this the correct procedure for upgrading an k8s cluster created through the Azure portal? https://github.com/Azure/acs-engine/tree/master/examples/k8s-upgrade

Strandedpirate avatar May 02 '18 16:05 Strandedpirate