From a494187f6d697fff48db672e8198d11d642fbf2a Mon Sep 17 00:00:00 2001 From: jmgao Date: Thu, 28 Dec 2017 23:06:59 +0800 Subject: [PATCH] =?UTF-8?q?minor=E6=96=87=E6=A1=A3=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 7 ++++++- docs/guide/hpa.md | 16 ++++++++-------- docs/guide/index.md | 4 ++-- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 507d7da..607d538 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,12 @@ ## 使用指南 -基本k8s集群安装完成后,需要安装一些常用插件(`kubedns` `dashboard` `ingress`等);接着介绍一些集群操作场景和思路;然后介绍一些应用部署实践,请根据这份[目录](docs/guide/index.md)阅读你所感兴趣的内容。尚在更新中... +- 常用插件部署 [kubedns](docs/guide/kubedns.md) [dashboard](docs/guide/dashboard.md) [heapster](docs/guide/heapster.md) [ingress](docs/guide/ingress.md) [efk](docs/guide/efk.md) [harbor](docs/guide/harbor.md) +- K8S 特性实验 [HPA](docs/guide/hpa.md) [NetworkPolicy](docs/guide/networkpolicy.md) +- 集群运维指南 +- 应用部署实践 + +请根据这份 [目录] (docs/guide/index.md)阅读你所感兴趣的内容,尚在更新中... ## 参考阅读 diff --git a/docs/guide/hpa.md b/docs/guide/hpa.md index fea368f..f939674 100644 --- a/docs/guide/hpa.md +++ b/docs/guide/hpa.md @@ -1,20 +1,22 @@ ## Horizontal Pod Autoscaling -自动水平伸缩,是指运行在k8s上的应用负载(POD),可以根据资源使用率进行自动扩容、缩容;我们知道应用的资源使用率通常都有高峰和低谷的时候,`HPA` 就是k8s 上最能体现区别于传统运维的一个优势特性,不仅能够弹性伸缩,而且完全自动化! +自动水平伸缩,是指运行在k8s上的应用负载(POD),可以根据资源使用率进行自动扩容、缩容;我们知道应用的资源使用率通常都有高峰和低谷,所以k8s的`HPA`特性应运而生;它也是最能体现区别于传统运维的优势之一,不仅能够弹性伸缩,而且完全自动化! -它可以根据 CPU 使用率或应用自定义 metrics 自动扩展 Pod 数量(支持 replication controller、deployment);k8s1.6版本之前是通过kubelet来获取监控指标来判断是否需要扩缩容,1.6版本之后必须通过API server、Heapseter或者kube-aggregator来获取监控指标。 +根据 CPU 使用率或自定义 metrics 自动扩展 Pod 数量(支持 replication controller、deployment);k8s1.6版本之前是通过kubelet来获取监控指标,1.6版本之后是通过api server、heapster或者kube-aggregator来获取监控指标。 ### Metrics支持 根据不同版本的API中,HPA autoscale时靠以下指标来判断资源使用率: - autoscaling/v1: CPU - autoscaling/v2alpha1 - - 内存 - - 自定义metrics - - 多metrics组合: 根据每个metric的值计算出scale的值,并将最大的那个指作为扩容的最终结果 + - 内存 + - 自定义metrics + - 多metrics组合: 根据每个metric的值计算出scale的值,并将最大的那个指作为扩容的最终结果 ### 基础示例 +本实验环境基于k8s 1.8 和 1.9,仅使用`autoscaling/v1` 版本API + ``` bash # 创建deploy和service $ kubectl run php-apache --image=pilchard/hpa-example --requests=cpu=200m --expose --port=80 @@ -46,11 +48,9 @@ $ kubectl get hpa php-apache NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE php-apache Deployment/php-apache 52% / 50% 1 10 10 12m -# 清除负载,CTRL + C 结束上述负载循环下载程序,过段时间后又缩容到1个副本 +# 清除负载,CTRL+C 结束上述循环程序,稍后副本数目变回1 $ kubectl get hpa php-apache NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE php-apache Deployment/php-apache 0% / 50% 1 10 1 17m ``` -### 自定义metrics示例 -待更新 diff --git a/docs/guide/index.md b/docs/guide/index.md index c584ec2..4bf325a 100644 --- a/docs/guide/index.md +++ b/docs/guide/index.md @@ -11,8 +11,8 @@ ### 基础特性演示 -- 自动水平伸缩-基础[Horizontal Pod Autoscaling](hpa.md) -- 网络安全策略[Network Policy](NetworkPolicy.md) +- 自动水平伸缩-基础 [Horizontal Pod Autoscaling](hpa.md) +- 网络安全策略 [Network Policy](networkpolicy.md) ### 集群维护指南