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()