0
点赞
收藏
分享

微信扫一扫

05.k8s弹性伸缩

5.k8s弹性伸缩

k8s弹性伸缩,需要附加插件heapster监控 弹性伸缩:随着业务访问量的大小,k8s系统中的pod比较弹性,会自动增加或者减少pod数量;

5.1 安装heapster监控

1:上传并导入镜像,打标签

ls *.tar.gz
for n in ls *.tar.gz;do docker load -i $n ;done
docker tag docker.io/kubernetes/heapster_grafana:v2.6.0 192.168.111.11:5000/heapster_grafana:v2.6.0
docker tag  docker.io/kubernetes/heapster_influxdb:v0.5 192.168.111.11:5000/heapster_influxdb:v0.5
docker tag docker.io/kubernetes/heapster:canary 192.168.111.11:5000/heapster:canary

注释: cAdvisor:该功能模块是内嵌入到kubelet里面 heapster:采集监控数据,从cAdvisor中去采集数据 influxdb:存储数据 grafana:出图 查看cadvisor得web界面 在这里插入图片描述

查看cadvisor端口为4194 直接访问nodeIP加端口访问即可; 在这里插入图片描述

2:上传配置文件,

kubectl create -f .

修改配置vim heapster-controller.yaml

containers:

  • name: heapster image: 192.168.111.11:5000/heapster:canary imagePullPolicy: IfNotPresent #镜像下载策略,设置为不更新

3:打开dashboard验证,访问192.168.111.11:8080 在这里插入图片描述

5.2 弹性伸缩

1:修改rc的配置文件,为了方便首先创建一个命名空间即可namespace,这样便于查看监控;

  containers:
  - name: ceshi
    image: 192.168.111.11:5000/nginx:1.13
    ports:
    - containerPort: 80
    resources:
      limits:
        cpu: 100m
      requests:
        cpu: 100m

2:创建弹性伸缩规则

kubectl autoscale  -n test replicationcontroller ceshi --max=8 --min=1 --cpu-percent=8
#autoscale:对deployment,replicaSet或replicationController进行水平自动扩容和缩容的设置

3:测试

ab -n 1000000 -c 40 http://172.16.19.9/index.html

在这里插入图片描述

扩容截图,可以发现自动扩容了多台pod数 在这里插入图片描述

缩容:没有压力了自动收回其他pod 在这里插入图片描述

举报

相关推荐

0 条评论