动态修改副本数量
# kubectl scale rc XXX --replicas=3
autoscale: scale虽然能够很方便的对副本数进行扩展或缩小,但是仍然需要人工介入,不能实时自动的根据系统负载对副本数进行扩、缩。autoscale命令提供了自动根据pod负载对其副本进行扩缩的功能。 autoscale命令会给一个rc指定一个副本数的范围,在实际运行中根据pod中运行的程序的负载自动在指定的范围内对pod进行扩容或缩容。如前面创建的nginx,可以用如下命令指定副本范围在1~4
[root@k8s-master /]# kubectl autoscale rc myweb --min=1 --max=4
replicationcontroller "myweb" autoscaled
查看RC的详细信息
# kubectl describe rc 标签名或者选择器名
Pod在创建以后希望更新Pod,可以在修改Pod的定义文件后执行:
#kubectl replace /path/to/busybox.yaml
因为Pod的很多属性是没办法修改的,比如容器镜像,这时候可以用kubectl replace命令设置--force参数,等效于重新建Pod。
通过RC修改Pod副本数量
# kubectl replace -f rc.yaml
或
#kubect edit replicationcontroller replicationcontroller名
对RC使用滚动升级,来发布新功能或修复BUG
#kubectl rolling-update replicationcontroller名 --image=镜像名
滚动升级
#kubectl rolling-update replicationcontroller名 -f XXX.yaml
如果在升级过程中,发现有问题还可以中途停止update,并回滚到前面版本
#kubectl rolling-update rc-nginx-2 --rollback