久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Kubernetes的cronhpa怎么安裝使用

163次閱讀
沒有評論

共計 4523 個字符,預(yù)計需要花費 12 分鐘才能閱讀完成。

這篇“Kubernetes 的 cronhpa 怎么安裝使用”文章的知識點大部分人都不太理解,所以丸趣 TV 小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Kubernetes 的 cronhpa 怎么安裝使用”文章吧。

使用方式

cronhpa  是基于 CRD 的方式開發(fā)的 controller,使用  cronhpa  的方式非常簡單,整體的使用習(xí)慣也盡可能的和 HPA 保持一致。代碼倉庫地址

1. 安裝 CRD

kubectl apply -f config/crds/autoscaling_v1beta1_cronhorizontalpodautoscaler.yaml

2. 安裝 RBAC 授權(quán)

# create ClusterRole 
kubectl apply -f config/rbac/rbac_role.yaml
# create ClusterRolebinding and ServiceAccount 
kubectl apply -f config/rbac/rbac_role_binding.yaml

3. 部署  kubernetes-cronhpa-controller

kubectl apply -f config/deploy/deploy.yaml

4. 驗證  kubernetes-cronhpa-controller  安裝狀態(tài)

kubectl get deploy kubernetes-cronhpa-controller -n kube-system -o wide 
kubernetes-cronhpa-controller git:(master) kubectl get deploy kubernetes-cronhpa-controller -n kube-system
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
kubernetes-cronhpa-controller 1 1 1 1 49s

運行一個 cronhpa 的 demo

安裝了  kubernetes-cronhpa-controller  后,我們可以通過一個簡單的 demo 進行功能的驗證。在部署前,我們先看下一個標(biāo)準(zhǔn)的 cronhpa 的定義。

apiVersion: autoscaling.alibabacloud.com/v1beta1
kind: CronHorizontalPodAutoscaler
metadata:
 labels:
 controller-tools.k8s.io:  1.0 
 name: cronhpa-sample
 namespace: default 
spec:
 scaleTargetRef:
 apiVersion: apps/v1beta2
 kind: Deployment
 name: nginx-deployment-basic
 jobs:
 - name:  scale-down 
 schedule:  30 */1 * * * * 
 targetSize: 1
 - name:  scale-up 
 schedule:  0 */1 * * * * 
 targetSize: 3

其中  scaleTargetRef  字段負(fù)責(zé)描述伸縮的對象,jobs  中定義了擴展的  crontab  定時任務(wù)。在這個例子中,設(shè)定的是每分鐘的第 0 秒擴容到 3 個 Pod,每分鐘的第 30s 縮容到 1 個 Pod。如果執(zhí)行正常,我們可以在 30s 內(nèi)看到負(fù)載數(shù)目的兩次變化。

1. 部署 demo 應(yīng)用與 cronhpa 的配置

kubectl apply -f examples/deployment_cronhpa.yaml

2. 檢查 demo 應(yīng)用副本數(shù)目

kubectl get deploy nginx-deployment-basic 
kubernetes-cronhpa-controller git:(master) kubectl get deploy nginx-deployment-basic
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
nginx-deployment-basic 2 2 2 2 9s

3. 查看 cronhpa 的狀態(tài),確認(rèn) cronhpa 的 job 已提交

kubectl describe cronhpa cronhpa-sample 
Name: cronhpa-sample
Namespace: default
Labels: controller-tools.k8s.io=1.0
Annotations: kubectl.kubernetes.io/last-applied-configuration:
 {apiVersion : autoscaling.alibabacloud.com/v1beta1 , kind : CronHorizontalPodAutoscaler , metadata :{ annotations :{}, labels :{ controll...
API Version: autoscaling.alibabacloud.com/v1beta1
Kind: CronHorizontalPodAutoscaler
Metadata:
 Creation Timestamp: 2019-04-14T10:42:38Z
 Generation: 1
 Resource Version: 4017247
 Self Link: /apis/autoscaling.alibabacloud.com/v1beta1/namespaces/default/cronhorizontalpodautoscalers/cronhpa-sample
 UID: 05e41c95-5ea2-11e9-8ce6-00163e12e274
Spec:
 Jobs:
 Name: scale-down
 Schedule: 30 */1 * * * *
 Target Size: 1
 Name: scale-up
 Schedule: 0 */1 * * * *
 Target Size: 3
 Scale Target Ref:
 API Version: apps/v1beta2
 Kind: Deployment
 Name: nginx-deployment-basic
Status:
 Conditions:
 Job Id: 38e79271-9a42-4131-9acd-1f5bfab38802
 Last Probe Time: 2019-04-14T10:43:02Z
 Message:
 Name: scale-down
 Schedule: 30 */1 * * * *
 State: Submitted
 Job Id: a7db95b6-396a-4753-91d5-23c2e73819ac
 Last Probe Time: 2019-04-14T10:43:02Z
 Message:
 Name: scale-up
 Schedule: 0 */1 * * * *
 State: Submitted
Events:  none

4. 等待一段時間,查看 cronhpa 的運行狀態(tài)

kubernetes-cronhpa-controller git:(master) kubectl describe cronhpa cronhpa-sample
Name: cronhpa-sample
Namespace: default
Labels: controller-tools.k8s.io=1.0
Annotations: kubectl.kubernetes.io/last-applied-configuration:
 {apiVersion : autoscaling.alibabacloud.com/v1beta1 , kind : CronHorizontalPodAutoscaler , metadata :{ annotations :{}, labels :{ controll...
API Version: autoscaling.alibabacloud.com/v1beta1
Kind: CronHorizontalPodAutoscaler
Metadata:
 Creation Timestamp: 2019-04-15T06:41:44Z
 Generation: 1
 Resource Version: 15673230
 Self Link: /apis/autoscaling.alibabacloud.com/v1beta1/namespaces/default/cronhorizontalpodautoscalers/cronhpa-sample
 UID: 88ea51e0-5f49-11e9-bd0b-00163e30eb10
Spec:
 Jobs:
 Name: scale-down
 Schedule: 30 */1 * * * *
 Target Size: 1
 Name: scale-up
 Schedule: 0 */1 * * * *
 Target Size: 3
 Scale Target Ref:
 API Version: apps/v1beta2
 Kind: Deployment
 Name: nginx-deployment-basic
Status:
 Conditions:
 Job Id: 84818af0-3293-43e8-8ba6-6fd3ad2c35a4
 Last Probe Time: 2019-04-15T06:42:30Z
 Message: cron hpa job scale-down executed successfully
 Name: scale-down
 Schedule: 30 */1 * * * *
 State: Succeed
 Job Id: f8579f11-b129-4e72-b35f-c0bdd32583b3
 Last Probe Time: 2019-04-15T06:42:20Z
 Message:
 Name: scale-up
 Schedule: 0 */1 * * * *
 State: Submitted
Events:
 Type Reason Age From Message
 ---- ------ ---- ---- -------
 Normal Succeed 5s cron-horizontal-pod-autoscaler cron hpa job scale-down executed successfully

此時可以在 event 中發(fā)現(xiàn)負(fù)載的定時伸縮已經(jīng)生效。

以上就是關(guān)于“Kubernetes 的 cronhpa 怎么安裝使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望丸趣 TV 小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注丸趣 TV 行業(yè)資訊頻道。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-08-04發(fā)表,共計4523字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 翁牛特旗| 丰镇市| 横峰县| 富阳市| 桃园县| 嘉祥县| 长汀县| 绥德县| 九龙坡区| 玛曲县| 灵台县| 革吉县| 孝感市| 通河县| 青铜峡市| 岳普湖县| 广元市| 翼城县| 营山县| 微博| 西峡县| 延庆县| 昭平县| 八宿县| 盐山县| 永城市| 长沙市| 甘泉县| 东乌珠穆沁旗| 西平县| 东平县| 曲阜市| 岑溪市| 贞丰县| 竹北市| 武隆县| 万年县| 琼结县| 商城县| 赞皇县| 张家界市|