Utilising the pykube module https://github.com/kelproject/pykube
Does anyone know how to utilise the RollingUpdate#scale_up functions to increase deployment replicas?
I'm struggling to work out how to do it from the code base.
@eggsy84's answer will work but not elegant because you don't need to check all Deployment
to update.
Here's the practical example if you want to update with pykube
.
import pykube
import operator
api = pykube.HTTPClient(pykube.KubeConfig.from_file("~/.kube/config"))
name = "ms-999-ear2-071625"
deployment_obj = {
"apiVersion": "extensions/v1beta1",
"kind": "Deployment",
"metadata": {
"name": name,
}
}
deployment = pykube.Deployment(api, deployment_obj)
deployment.update()
deployment.replicas = 2
deployment.update()
Managed to work this out - to increase replicas to 3 you would do something like the following:
deployments = pykube.Deployment.objects(kubernetesApi).filter(namespace="my-namespace")
for dp in deployments:
if dp.obj["metadata"]["name"] == "my-deployment":
dp.replicas = 3
pykube.Deployment(kubernetesApi, dp.obj).update()
The method as following is simpler:
import pykube
import operator
api = pykube.HTTPClient(pykube.KubeConfig.from_file("/root/.kube/config"))
deployment = pykube.Deployment.objects(api).filter(namespace="kube-system").get(name="test-busybox")
deployment.replicas = 1
deployment.update()