Comments (17)
I am still investigating this issue. To be more specific, after this scale up request, I can still reach the apiserver via the insecure port. It looks like a problem in network level. I will keep updating with my findings.
from acs-engine.
yes, it is definitely related to the VM types. When I try to create my cluster from the UI, it sets the agent VM value as Standard_DS1. It works fine for initial creation, but it does not work at all when it comes to scaling up the agents.
Then I tried to create my cluster with azure-cli. Initially, I set Standard_DS1 as the VM value, and it did not get validated. Later on, I picked the same VM value with example/kubernetes.json as Standard_D2_v2, and both cluster creation and scaling worked like a charm.
from acs-engine.
Are you using ACS-Engine, or are you using the actual Container Service and trying to scale it via a PUT?
from acs-engine.
In the beginning, I used UI. But now I am using ACS-Engine.
There is one last thing I realized that might be helpful for you: I followed these steps to generate necessary templates. After that, I checked azuredeploy.json, and I even did not see Standard_DS1 under "agentpool1VMSize.allowedValues".
from acs-engine.
cc: @anhowe for the question about the list of VM sizes.
Scaling in ACS itself is not yet supported, and in fact I believe we will soon be blocking updates until we implement scale up/scale down for Kubernetes.
With ACS-Engine, you can use the outputed "apimodel.json" file, change the desired values, and then re-deploy the template. There is an issue (#108) to document this process which we will do soon.
from acs-engine.
Any estimation by when we can expect scaling functionality on Azure ?
In the meantime, is there any documentation on how to add nodes manually ?
Do you know if this will need to redeploy the cluster or if the already created cluster can be "upgraded" to support new functionalities ?
from acs-engine.
@kaubry In the reply just above yours I described how acs-engine can be used to scale up/down.
Do you know if this will need to redeploy the cluster or if the already created cluster can be "upgraded" to support new functionalities ?
You don't have to redeploy, but upgrading Kubernetes versions is currently a manual process. You can read a bit about that here. colemickens/azure-kubernetes-status#15 We should document this in this acs-engine repo soon.
CC: @rgardler for timelines on scaling / upgrades. Not sure what sort of timeline specifics we're offering right now.
from acs-engine.
@colemickens Thanks you for you quick reply. I manage to make everything work (upscale and upgrading Kubernetes version) but for scaling down, acs-engine doesn't seems to handle it. I need to manually remove the created VM and the corresponding network interface. Is it the right way to proceed or am I missing something ?
I tried as well to change the size of 1 node only (if I want some nodes to have more power) and when I run the script to scale up my cluster. It changes my up-sized node back to default. Anything I can do to avoid this behaviour ?
from acs-engine.
@kaubry You are correct.
from acs-engine.
but for scaling down, acs-engine doesn't seems to handle it. I need to manually remove the created VM and the corresponding network interface. Is it the right way to proceed or am I missing something ?
Also, don't forget to download the OS disk of the agent. Otherwise you'll get a "TargetDiskBlobAlreadyExists" error when scaling up again.
from acs-engine.
Thanks @timbrand , we need to document this process and that's a great point to include.
from acs-engine.
To avoid the "TargetDiskBlobAlreadyExists", you will need to choose the option to delete the blob, when scaling down.
from acs-engine.
@JackQuincy - this will be fixed when you submit https://github.com/Azure/acs-engine/pull/366/files.
from acs-engine.
The documentation added from pull #366 states that the NSG has to be removed, and the diff of kubernetes_template.json
and kubernetes_update_template.json
@ https://github.com/Azure/acs-engine/tree/master/examples/scale-up does show this removal.
However, I just tried a scale-up, and it worked with just changing the count and adding the offset parameters -- there was no need to remove the NSG.
from acs-engine.
from acs-engine.
if you don't remove the NSG any public services on the cluster will go unavailable for a period of between 2-10 mins is what I've seen reported.
Thanks for the clarification.
Would love to see a more permanent fix for the scaling up/down problem. This is certainly a key aspect of running a container orchestrator like Kubernetes that should be seamless.
from acs-engine.
Closing since main issue is solved.
from acs-engine.
Related Issues (20)
- Can't create services with internal load balancer - failed to ensure host in pool: "azure - ARM rate limited(read) for operation:NicGet" HOT 1
- NetworkPolicy azure won't use kubernetes network policies HOT 6
- New version of K8S required due to CVE-2018-1002105
- generateCmd doesn't support Kubernetes Orchestrator Version 1.11.5 HOT 3
- Is there a way to have both `kubenet` and `azure` network plugins behavior in the same cluster? HOT 1
- Cannot upgrade to the latest Kubernetes orchestrator using the latest acs-engine (0.26.0) HOT 4
- Day 2 operations increasing max pods, upgrading k8s version HOT 3
- X502Certificate2 fails HOT 1
- CustomScript "exit status=98"- ERR_APT_DAILY_TIMEOUT HOT 4
- ACS generated k8s Nodes showing up as NOT READY HOT 4
- Kubectl "unauthorized error" with kubernetes v1.9.2 HOT 3
- Wrong source IP in pod-to-pod communication (kubenet) HOT 2
- Latest release is missing the usual assets (v0.26.3) HOT 2
- Trying to install K8s ACS Private cluster with AKS Engine v.29 but keep on failing with errors# HOT 4
- l get node
- Met an issue when scale up my agent pool HOT 2
- docker-engine breaks acs-engine clusters prior to v0.25.0
- Azure Kubernetes VM node size change not reflecting in Azure Kubernetes Service
- How to update cluster certificate? HOT 3
- My pod is not able to identify the external services DNS HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from acs-engine.