Serverless Kubernetes 应用部署及扩缩容
作者 | 鄧青琳(輕零) 阿里云技術(shù)專家
導(dǎo)讀:本文分為三個(gè)部分,首先給大家演示 Serverless Kubernetes 集群的創(chuàng)建和業(yè)務(wù)應(yīng)用的部署,其次介紹 Serverless Kubernetes 的常用功能,最后對(duì)應(yīng)用擴(kuò)縮容的操作進(jìn)行探討。
集群創(chuàng)建及應(yīng)用部署
1. 集群創(chuàng)建
在對(duì) Serverless Kubernetes 的基礎(chǔ)概念有了充分了解之后,我們直接進(jìn)入容器服務(wù)控制臺(tái)(https://cs.console.aliyun.com/#/authorize)進(jìn)行集群的創(chuàng)建。
在創(chuàng)建頁面,主要有三類屬性需要選擇或填寫:
- 集群創(chuàng)建的地域和 Kubernetes 的版本信息;
- 網(wǎng)絡(luò)屬性:可以選擇容器服務(wù)自動(dòng)創(chuàng)建或者指定已有的 VPC 資源;
- 集群能力和服務(wù):可以按需選擇。
屬性完成后,點(diǎn)擊“創(chuàng)建集群”即可,整個(gè)創(chuàng)建過程需要 1~2 分鐘的時(shí)間。
2. 應(yīng)用部署
集群創(chuàng)建完成后,接下來我們部署一個(gè)無狀態(tài)的 nginx 應(yīng)用,主要分成三步:
- 應(yīng)用基本信息:名稱、POD 數(shù)量、標(biāo)簽等;
- 容器配置:鏡像、所需資源、容器端口、數(shù)據(jù)卷等;
- 高級(jí)配置:服務(wù)、路由、HPA、POD 標(biāo)簽等。
創(chuàng)建完成后,在路由中就可以看到服務(wù)對(duì)外暴露的訪問方式了。
如上圖所示,在本地 host 綁定 ask-demo.com 到路由端點(diǎn) 123.57.252.131 的解析,然后瀏覽器訪問域名,即可請(qǐng)求到部署的 nginx 應(yīng)用。
常用功能介紹
我們一般會(huì)通過容器服務(wù)控制臺(tái)和 Kubectl 兩種方式,來使用 Serverless Kubernetes 的常用功能。
1. 容器服務(wù)控制臺(tái)
在容器服務(wù)控制臺(tái)上,我們可以進(jìn)行以下功能的白屏化操作:
- 基本信息:集群 ID 和運(yùn)行狀態(tài)、API Server 端點(diǎn)、VPC 和安全性、集群訪問憑證的查看和操作;
- 存儲(chǔ)卷:PV、PVC、StorageClass 的查看和操作;
- 命名空間:集群 namespace 的查看和操作;
- 工作負(fù)載:Deployment、StatefulSet、Job、CronJob、Pod 的查看和操作;
- 服務(wù):工作負(fù)載提供出的 Service 的查看和操作;
- 路由:Ingress 的查看和操作,用來路由 Service;
- 發(fā)布:對(duì)基于 Helm 或者容器服務(wù)分批發(fā)布的任務(wù)進(jìn)行查看和操作;
- 配置管理:對(duì) ConfigMap 和 Secret 的查看和操作;
- 運(yùn)維管理:集群的事件列表和操作審計(jì)。
2. Kubectl
除了通過控制臺(tái),我們還可以基于 Kubectl 來進(jìn)行集群操作和管理。
我們可以在云端通過 CloudShell 來使用 Kubectl,也可以在本地安裝 Kubectl,然后通過將集群的訪問憑證寫入到 kubeconfig 來使用 Serverless Kubernetes 。
應(yīng)用彈性伸縮
通通過上面的內(nèi)容講解,我們已經(jīng)了解了應(yīng)用的部署和集群的常用操作,下面為大家介紹一下如何為應(yīng)用做擴(kuò)縮容操作。
在 Serverless Kubernetes 中常用的應(yīng)用擴(kuò)縮容方式包括:
- 人工擴(kuò)縮容:最為原始的方式,在成本和應(yīng)用穩(wěn)定性上均有一定程度的犧牲;
- HPA(Horizontal Pod Autoscaler):根據(jù) Cpu 和 Memory 等指標(biāo)來彈性伸縮,適合有突發(fā)流量場(chǎng)景的應(yīng)用;
- Cron HPA :根據(jù) Cron 表達(dá)式來定期伸縮,適合有固定波峰波谷特性的應(yīng)用;
- External Metrics(alibaba-cloud-metrics-adapter):阿里云指標(biāo)容器水平伸縮,在原生 HPA 的基礎(chǔ)上支持更多的數(shù)據(jù)指標(biāo)。
結(jié)語
以上就是 Serverless Kubernetes 應(yīng)用部署及擴(kuò)縮容的全部分享,希望通過這次分享能夠幫助大家更好地入門和使用 Serverless Kubernetes,后續(xù)也將會(huì)有更多的 Serverless Kubernetes 的實(shí)踐案例分享給大家。
總結(jié)
以上是生活随笔為你收集整理的Serverless Kubernetes 应用部署及扩缩容的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 典型案例 1:函数计算在音视频场景实践
- 下一篇: Serverless Kubernete