Kubernetes 自动伸缩与日志配置实战
1. 自动伸缩概述
自动伸缩(Autoscaling)在 Kubernetes 中具有重要作用,水平 Pod 自动伸缩器(Horizontal Pod Autoscaler,HPA)相较于手动伸缩有两大显著优势:一是自动进行伸缩操作,二是不会让额外的 Pod 持续运行,避免消耗可用于其他应用的资源。自动伸缩器可用于复制控制器、副本集或部署。它借助 Heapster 收集资源的 CPU 利用率,以此判断应运行更多还是更少的 Pod。自动伸缩基于目标 CPU 利用率,即像部署这样的资源的 CPU 利用率应达到 x%。
1.1 设置环境
首先,创建一个基于 CoreOS AWS CloudFormation 的 Kubernetes 集群,包含一个控制节点和三个工作节点。可通过以下命令列出节点:
./kubectl get nodes
接着,列出所有命名空间的服务,Heapster 服务(用于监控 CPU 利用率)应在 kube - system 命名空间中。再列出所有命名空间的 Pod,Heapster Pod 也应显示出来。
1.2 运行 PHP Apache 服务器部署
要进行伸缩,需先创建一个资源。使用 Docker 镜像 gcr.io/google_containers/hpa - example 创建部署资源,并将 CPU 请求设置为 200m:
./kubec
超级会员免费看
订阅专栏 解锁全文
1173

被折叠的 条评论
为什么被折叠?



