在 KubeSphere 中使用 APISIX Ingress 網(wǎng)關(guān)接入自定義監(jiān)控

??KubeSphere 3.2.0 發(fā)布了!為項(xiàng)目網(wǎng)關(guān)增配了整套監(jiān)控及管理頁面,同時(shí)引入了集群網(wǎng)關(guān)來提供集群層面全局的 Ingress 網(wǎng)關(guān)能力。當(dāng)然,我們還是可以部署使用第三方 Ingress Controller,本文將以 Apache APISIX Ingress Controller[1] 為例介紹如何通過 KubeSphere 快速為 Kubernetes 集群使用兩種不同類型的網(wǎng)關(guān),同時(shí)對它們的使用狀態(tài)進(jìn)行監(jiān)控。
本文將分為一下幾部分展開:
KubeSphere 項(xiàng)目網(wǎng)關(guān)的新管理界面的應(yīng)用展示 通過 KubeSphere 的應(yīng)用管理能力快速使用 Apache APISIX Ingress Controller 利用 KubeSphere 的自定義監(jiān)控能力獲取 Apache APISIX 網(wǎng)關(guān)的運(yùn)行指標(biāo)
準(zhǔn)備工作
安裝 KubeSphere
安裝 KubeSphere 有兩種方法。一是在 Linux 上直接安裝,可以參考文檔:在 Linux 安裝 KubeSphere[2]; 二是在已有 Kubernetes 中安裝,可以參考文檔:在 Kubernetes 安裝 KubeSphere[3]。
KubeSphere 最小化安裝版本已經(jīng)包含了監(jiān)控模塊,因此不需要額外啟用,可以通過「系統(tǒng)組件」頁面中的「監(jiān)控」標(biāo)簽頁確認(rèn)安裝狀態(tài)。

部署 httpbin 演示應(yīng)用
由于需要演示網(wǎng)關(guān)的訪問控制能力,我們必須要先有一個(gè)可以訪問的應(yīng)用作為網(wǎng)關(guān)的后臺服務(wù)。這里我們使用 httpbin.org[4] 提供的 kennethreitz/httpbin[5] 容器應(yīng)用作為演示應(yīng)用。
在 KubeSphere 中,我們可以先創(chuàng)建新的項(xiàng)目或使用已有的項(xiàng)目,進(jìn)入項(xiàng)目頁面后,選擇「應(yīng)用負(fù)載」下的「服務(wù)」直接創(chuàng)建無狀態(tài)工作負(fù)載并生成配套的服務(wù)。

使用 kennethreitz/httpbin[6] 容器默認(rèn)的 80 端口作為服務(wù)端口,創(chuàng)建完成后確保在「工作負(fù)載」和「服務(wù)」頁面下都可以看到 httpbin 的對應(yīng)條目,如下圖所示。


項(xiàng)目網(wǎng)關(guān)的新面貌
項(xiàng)目網(wǎng)關(guān)[7] 是 KubeSphere 3.0 以來就有的功能:“KubeSphere 項(xiàng)目中的網(wǎng)關(guān)是一個(gè) NGINX Ingress 控制器[8]。KubeSphere 內(nèi)置的用于 HTTP 負(fù)載均衡的機(jī)制稱為 應(yīng)用路由[9],它定義了從外部到集群服務(wù)的連接規(guī)則。如需允許從外部訪問服務(wù),用戶可創(chuàng)建路由資源來定義 URI 路徑、后端服務(wù)名稱等信息。”
下面我們首先進(jìn)入已部署了 httpbin 服務(wù)的項(xiàng)目,在「項(xiàng)目設(shè)置」中打開「網(wǎng)關(guān)設(shè)置」頁面,然后執(zhí)行「開啟網(wǎng)關(guān)」操作。方便起見,直接選擇 NodePort 作為「訪問方式」即可。

確定后回到網(wǎng)關(guān)頁面,稍等片刻后刷新頁面,可以得到如下圖這樣的部署完成狀態(tài),可以看到 NodePort 默認(rèn)被賦予了兩個(gè)節(jié)點(diǎn)端口。下面我們通過右上角的「管理」按鈕「查看詳情」。

此時(shí)我們看到的便是 3.2.0 新帶來的項(xiàng)目/集群網(wǎng)關(guān)的新監(jiān)控頁面!但是現(xiàn)在顯然是沒有數(shù)據(jù)的,因?yàn)槲覀冞€沒有任何流量從網(wǎng)關(guān)產(chǎn)生。那么下面我們就需要為 httpbin 服務(wù)創(chuàng)建應(yīng)用路由。
從「應(yīng)用負(fù)載」進(jìn)入「應(yīng)用路由」頁面,開始「創(chuàng)建」路由。為路由取名為 httpbin 后,我們指定一個(gè)方便測試的域名,并設(shè)置「路徑」為 /, 選擇「服務(wù)」httpbin 和「端口」80。


直接下一步跳過高級設(shè)置后完成路由創(chuàng)建,可以得到如下圖這樣的一條新的 httpbin 應(yīng)用路由項(xiàng)。

下面我們可以通過項(xiàng)目網(wǎng)關(guān)的 NodePort 地址及指定的域名(如這里是 http://httpbin.ui:32516)來訪問 httpbin 應(yīng)用服務(wù),隨意刷新或操作一下頁面的請求生成功能,再進(jìn)入網(wǎng)關(guān)的詳情頁面,便可以看到在「監(jiān)控」面板上已經(jīng)出現(xiàn)了網(wǎng)關(guān)的一些內(nèi)置的監(jiān)控指標(biāo)展示。

為網(wǎng)關(guān)指定 NodePort 節(jié)點(diǎn)端口
對于公有云環(huán)境,如果使用 NodePort 方式向外暴露訪問能力,開放端口通常是有限且受控的,因此對于網(wǎng)關(guān)所使用的 NodePort 我們需要能夠?qū)λM(jìn)行修改。
由于網(wǎng)關(guān)是被 KubeSphere 統(tǒng)一管理的,要修改網(wǎng)關(guān)服務(wù)的 NodePort,需要具備訪問 kubesphere-controls-system 項(xiàng)目的權(quán)限。進(jìn)入改項(xiàng)目后,通過「應(yīng)用負(fù)載」的「服務(wù)」頁面即可找到命名為 kubesphere-router- 形式且外部訪問已開放 NodePort 的網(wǎng)關(guān)服務(wù)。NodePort 服務(wù)端口需要通過「編輯 YAML」來直接修改。

開始使用集群網(wǎng)關(guān)
在 KubeSphere 3.1 中只支持項(xiàng)目級別的網(wǎng)關(guān),如果用戶的項(xiàng)目過多,勢必會造成資源的浪費(fèi)。而且不同的企業(yè)空間中的網(wǎng)關(guān)都是相互獨(dú)立的。
KubeSphere 3.2.0 開始支持集群級別的全局網(wǎng)關(guān),所有項(xiàng)目可共用同一個(gè)網(wǎng)關(guān),之前已創(chuàng)建的項(xiàng)目網(wǎng)關(guān)也不會受到集群網(wǎng)關(guān)的影響。也可以統(tǒng)一納管所有項(xiàng)目的網(wǎng)關(guān),對其進(jìn)行集中管理和配置,管理員用戶再也不需要切換到不同的企業(yè)空間中去配置網(wǎng)關(guān)了。
進(jìn)入 KubeSphere 3.2.0 版本之后,我們更推薦大家使用集群網(wǎng)關(guān)的功能來統(tǒng)一整個(gè)集群的應(yīng)用路由。要啟用集群網(wǎng)關(guān)其實(shí)也非常簡單:使用具備集群管理權(quán)限的賬號,進(jìn)入其可管理的某個(gè)集群(如我們這里以 default 集群為例),在「集群設(shè)置」的「網(wǎng)關(guān)設(shè)置」中即可「開啟網(wǎng)關(guān)」,同時(shí)查看「項(xiàng)目網(wǎng)關(guān)」。

集群網(wǎng)關(guān)開啟的方式以及對齊 NodePort 訪問端口的修改和之前項(xiàng)目網(wǎng)關(guān)的操作基本上是完全一樣的,所以這里對過程就不做過多贅述了。
?? 有一點(diǎn)需要特別注意的是:集群網(wǎng)關(guān)開啟后,已經(jīng)開啟的項(xiàng)目網(wǎng)關(guān)還會保留;但尚未創(chuàng)建網(wǎng)關(guān)的項(xiàng)目是無法再創(chuàng)建單獨(dú)的網(wǎng)關(guān)的,會直接使用集群網(wǎng)關(guān)。
下圖展示了已創(chuàng)建網(wǎng)關(guān)的項(xiàng)目,在同時(shí)擁有項(xiàng)目及集群網(wǎng)關(guān)后,在「網(wǎng)關(guān)設(shè)置」頁面所呈現(xiàn)的所有網(wǎng)關(guān)概覽。

快速使用 Apache APISIX Ingress Controller
Apache APISIX 是一款開源的高性能、動(dòng)態(tài)云原生網(wǎng)關(guān),由深圳支流科技有限公司于 2019 年捐贈給 Apache 基金會,當(dāng)前已經(jīng)成為 Apache 基金會的頂級開源項(xiàng)目,也是 GitHub 上最活躍的網(wǎng)關(guān)項(xiàng)目。Apache APISIX 當(dāng)前已經(jīng)覆蓋了 API 網(wǎng)關(guān),LB,Kubernetes Ingress,Service Mesh 等多種場景。
社區(qū)之前也介紹過如何 ??使用 Apache APISIX 作為 Kubernetes 的 Ingress Controller,本文講更多側(cè)重介紹前文未涉及之細(xì)節(jié),并結(jié)合 KubeSphere 的一些新功能加以具像化。
部署 Apache APISIX Ingress Controller
首先還是先要添加 Apache APISIX Helm Chart 倉庫,推薦用這種自管理的方式來保障倉庫內(nèi)容是得到及時(shí)同步的。我們選定一個(gè)企業(yè)空間后,通過「應(yīng)用管理」下面的「應(yīng)用倉庫」來添加如下一個(gè) Apache APISIX 的倉庫(倉庫 URL:https://charts.apiseven.com)。

接下來我們創(chuàng)建一個(gè)名為 apisix-system 的項(xiàng)目。進(jìn)入項(xiàng)目頁面后,選擇在「應(yīng)用負(fù)載」中創(chuàng)建「應(yīng)用」的方式來部署 Apache APISIX,并選擇 apisix 應(yīng)用模版開始進(jìn)行部署。

為何是部署 Apache APISIX 應(yīng)用的 Helm Chart,而不是直接部署 Apache APISIX Ingress Controller?
這是因?yàn)?Apache APISIX Ingress Controller 目前和 Apache APISIX 網(wǎng)關(guān)是強(qiáng)關(guān)聯(lián)的(如下圖所示),且目前通過 Apache APISIX Helm Charts 同時(shí)部署 Apache APISIX Gateway + Dashboard + Ingress Controller 是最方便的,因此本文推薦直接使用 Apache APISIX 的 Helm Chart 進(jìn)行整套組件的部署。
將應(yīng)用命名為 apisix 以避免多個(gè)組件(Gateway, Dashboard, Ingress Controller)的工作負(fù)載及服務(wù)名稱產(chǎn)生不匹配的情況;在安裝步驟中編輯的「應(yīng)用設(shè)置」的部分,請參照以下配置進(jìn)行填寫(請?zhí)貏e注意帶有【注意】標(biāo)記的注釋部分的說明,其余可以按需自行編輯修改)。
global:
??imagePullSecrets:?[]
??
apisix:
??enabled:?true
??customLuaSharedDicts:?[]
??image:
????repository:?apache/apisix
????pullPolicy:?IfNotPresent
????tag:?2.10.1-alpine
??replicaCount:?1
??podAnnotations:?{}
??podSecurityContext:?{}
??securityContext:?{}
??resources:?{}
??nodeSelector:?{}
??tolerations:?[]
??affinity:?{}
??podAntiAffinity:
????enabled:?false
????
nameOverride:?''
fullnameOverride:?''
gateway:
??type:?NodePort
??externalTrafficPolicy:?Cluster
??http:
????enabled:?true
????servicePort:?80
????containerPort:?9080
??tls:
????enabled:?false
????servicePort:?443
????containerPort:?9443
????existingCASecret:?''
????certCAFilename:?''
????http2:
??????enabled:?true
??stream:
????enabled:?false
????only:?false
????tcp:?[]
????udp:?[]
??ingress:
????enabled:?false
????annotations:?{}
????hosts:
??????-?host:?apisix.local
????????paths:?[]
????tls:?[]
????
admin:
??enabled:?true
??type:?ClusterIP
??externalIPs:?[]
??port:?9180
??servicePort:?9180
??cors:?true
??credentials:
????admin:?edd1c9f034335f136f87ad84b625c8f1
????viewer:?4054f7cf07e344346cd3f287985e76a2
??allow:
????ipList:
??????-?0.0.0.0/0
??????
plugins:
??-?api-breaker
??-?authz-keycloak
??-?basic-auth
??-?batch-requests
??-?consumer-restriction
??-?cors
??-?echo
??-?fault-injection
??-?grpc-transcode
??-?hmac-auth
??-?http-logger
??-?ip-restriction
??-?ua-restriction
??-?jwt-auth
??-?kafka-logger
??-?key-auth
??-?limit-conn
??-?limit-count
??-?limit-req
??-?node-status
??-?openid-connect
??-?authz-casbin
??-?prometheus
??-?proxy-cache
??-?proxy-mirror
??-?proxy-rewrite
??-?redirect
??-?referer-restriction
??-?request-id
??-?request-validation
??-?response-rewrite
??-?serverless-post-function
??-?serverless-pre-function
??-?sls-logger
??-?syslog
??-?tcp-logger
??-?udp-logger
??-?uri-blocker
??-?wolf-rbac
??-?zipkin
??-?traffic-split
??-?gzip
??-?real-ip
??#【注意】添加此插件以配合?Dashboard?展示服務(wù)信息
??-?server-info
stream_plugins:
??-?mqtt-proxy
??-?ip-restriction
??-?limit-conn
customPlugins:
??enabled:?true
??luaPath:?/opts/custom_plugins/?.lua
??#【注意】如下配置保障?Prometheus?插件可對外暴露指標(biāo)
??plugins:
???-?name:?prometheus
?????attrs:
???????export_addr:
?????????ip:?0.0.0.0
??????????port:?9091
??????configMap:
???????name:?prometheus
????????mounts:?[]
dns:
??resolvers:
????-?127.0.0.1
????-?172.20.0.10
????-?114.114.114.114
????-?223.5.5.5
????-?1.1.1.1
????-?8.8.8.8
??validity:?30
??timeout:?5
autoscaling:
??enabled:?false
??minReplicas:?1
??maxReplicas:?100
??targetCPUUtilizationPercentage:?80
??targetMemoryUtilizationPercentage:?80
configurationSnippet:
??main:?''
??httpStart:?''
??httpEnd:?''
??httpSrv:?''
??httpAdmin:?''
??stream:?''
etcd:
??enabled:?true
??host:
????-?'http://etcd.host:2379'
??prefix:?/apisix
??timeout:?30
??auth:
????rbac:
??????enabled:?false
??????user:?''
??????password:?''
????tls:
??????enabled:?false
??????existingSecret:?''
??????certFilename:?''
??????certKeyFilename:?''
??????verify:?true
??service:
????port:?2379
??replicaCount:?3
dashboard:
??enabled:?true
??#【注意】為?Dashboard?開啟?NodePort?方便后續(xù)使用
??service:
???type:?NodePort
ingress-controller:
??enabled:?true
??config:
????apisix:
?????#【注意】一定要設(shè)置?gateway?所在的?namespace
??????serviceNamespace:?apisix-system
??serviceMonitor:
????enabled:?true
????namespace:?'apisix-system'
????interval:?15s
部署成功后,點(diǎn)擊應(yīng)用名稱進(jìn)入詳情頁面,可以在「資源狀態(tài)」標(biāo)簽頁下看到如下的服務(wù)部署和工作狀態(tài)運(yùn)行狀態(tài)展示。

?? Apache APISIX 項(xiàng)目另有的兩個(gè) Helm Chart 對應(yīng)的默認(rèn)配置參數(shù)可以分別參考:Dashboard[10] 和 Ingress Controller[11] 的
values.yaml。
使用 Apache APISIX Dashboard 了解系統(tǒng)信息
Apache APISIX 應(yīng)用部署完成后,首先我們通過 Apache APISIX Dashboard 來檢驗(yàn)一下 Apache APISIX 網(wǎng)關(guān)的當(dāng)前狀態(tài)。從「應(yīng)用負(fù)載」的「服務(wù)」頁面,我們可以找到 apisix-dashboard 的服務(wù),由于我們在應(yīng)用配置中已經(jīng)為 Dashboard 開啟了 NodePort,所以這里我們可以直接通過 NodePort 端口來訪問 Dashboard。

使用默認(rèn)的用戶名及密碼 admin 登錄 Apache APISIX Dashboard,可以進(jìn)入「系統(tǒng)信息」頁面即可查看到我們當(dāng)前連接管理的「Apache APISIX 節(jié)點(diǎn)」的信息。

使用 Apache APISIX Ingress Controller
讓我們回到「應(yīng)用路由」頁面,另外新建一個(gè)路由(如 apisix-httpbin),設(shè)置路徑為 /* httpbin 80 并為其添加 kubernetes.io/ingress.class: apisix 的鍵值。


創(chuàng)建完成后如何驗(yàn)證應(yīng)用路由生效呢?首先,我們可以回到 Apache APISIX Dashboard,進(jìn)入「路由」頁面,可以看到新建的應(yīng)用路由已經(jīng)被 Apache APISIX Ingress Controller 識別之后自動(dòng)添加到了 Apache APISIX 網(wǎng)關(guān)中,在「上游」頁面也可以看到自動(dòng)創(chuàng)建的一個(gè)上游條目。

然后我們回到 apisix-system 項(xiàng)目的「服務(wù)」頁面,找到 apisix-gateway 服務(wù)對應(yīng)的端口,由此訪問 (例如此處為 httpbin.ui:30408)即可訪問到 apisix-httpbin 應(yīng)用路由所關(guān)聯(lián)的后臺服務(wù)。

自定義監(jiān)控 Apache APISIX 網(wǎng)關(guān)
Apache APISIX 網(wǎng)關(guān)可用之后其實(shí)是缺少像原生集群或項(xiàng)目網(wǎng)關(guān)這樣自帶的狀態(tài)監(jiān)控能力的,但這個(gè)我們也可以通過 Apache APISIX 的 Prometheus 插件以及 KubeSphere 自帶的自定義監(jiān)控能力來彌補(bǔ)。
暴露 Apache APISIX 網(wǎng)關(guān)的 Prometheus 監(jiān)控指標(biāo)
由于我們在部署 Apache APISIX 應(yīng)用時(shí)已經(jīng)開啟了 Prometheus 插件[12],所以這里我們只需要把 Prometheus 監(jiān)控指標(biāo)的接口暴露出來即可。進(jìn)入 apisix-system 項(xiàng)目,在「工作負(fù)載」頁面找到 apisix 并進(jìn)入部署詳情頁面,隨后在左側(cè)操作面板的「更多操作」中選擇「編輯設(shè)置」。

在彈出的「編輯設(shè)置」面板中,進(jìn)入到 apisix 容器的編輯界面,找到「端口設(shè)置」,添加一個(gè)新的名為 prom 的端口映射到容器的 9091 端口,保存后 apisix 工作負(fù)載會重啟。

為 Apache APISIX 網(wǎng)關(guān)監(jiān)控指標(biāo)創(chuàng)建 ServiceMonitor
下面我們需要將已暴露的指標(biāo)接口接入到 KubeSphere 自帶的 Prometheus 中使之可被訪問(被抓取指標(biāo)數(shù)據(jù)),由于 KubeSphere 是通過 Prometheus Operator[13] 來維護(hù)內(nèi)部的 Prometheus 系統(tǒng)的,所以最方便的方式自然是直接創(chuàng)建一個(gè) ServiceMonitor 資源來實(shí)現(xiàn)指標(biāo)接口的接入。
apiVersion:?monitoring.coreos.com/v1
kind:?ServiceMonitor
metadata:
??name:?apisix
??namespace:?apisix-system
spec:
??endpoints:
????-?scheme:?http
?????#【注意】使用上一步中工作負(fù)載暴露的容器端口名稱
?????targetPort:?prom
?????#【注意】需要正確綁定?apisix?對應(yīng)的指標(biāo)接口路徑
?????path:?/apisix/prometheus/metrics
??????interval:?15s
??namespaceSelector:
????matchNames:
??????-?apisix-system
??selector:
????matchLabels:
??????app.kubernetes.io/name:?apisix
??????app.kubernetes.io/version:?2.10.0
??????helm.sh/chart:?apisix-0.7.2
使用 kubectl apply -f your_service_monitor.yaml 創(chuàng)建這個(gè) ServiceMonitor 資源。創(chuàng)建成功后,如果有集群管理權(quán)限,也可以在集群的 CRD 管理頁面中搜索查看 ServiceMonitor 資源并找到名為 apisix 的自定義資源,也可以在這里做后續(xù)的 YAML 修改。

將 Apache APISIX 網(wǎng)關(guān)指標(biāo)接入自定義監(jiān)控面板
下面我們在項(xiàng)目左側(cè)菜單列表中找到「監(jiān)控告警」中的「自定義監(jiān)控」,開始「創(chuàng)建」自定義監(jiān)控面板。

在彈出窗口中填入「名稱」,選擇「自定義」監(jiān)控模版,并進(jìn)入「下一步」的監(jiān)控面板創(chuàng)建。

進(jìn)入編輯頁面后現(xiàn)在左側(cè)點(diǎn)擊 + 區(qū)域,在右側(cè)的「數(shù)據(jù)」區(qū)域進(jìn)行 Prometheus 監(jiān)控指標(biāo)的配置,例如這里我們可以用 sum(apisix_nginx_http_current_connections) 來統(tǒng)計(jì) Apache APISIX 網(wǎng)關(guān)實(shí)時(shí)的連接總數(shù)。

保存后在頁面右下角找到「+ 添加監(jiān)控項(xiàng)」,我們選擇「折線圖」來創(chuàng)建一個(gè) Nginx connection state 指標(biāo):使用 sum(apisix_nginx_http_current_connections) by (state) 作為指標(biāo)、{{state}} 用作圖例名稱、選擇「圖例類型」為堆疊圖,即可得到類似如下的圖表顯示效果。保存模版后即可得到您的第一個(gè)自定義監(jiān)控面板!

Apache APISIX 網(wǎng)關(guān)目前提供的 Prometheus 指標(biāo)可以參見官方文檔的 可有的指標(biāo)[14] 部分。
由于指標(biāo)配置起來還是比較麻煩的,推薦在集群層面的「自定義監(jiān)控」中直接導(dǎo)入 Apache APISIX Grafana 模版[15](下載 JSON 通過「本地上傳」進(jìn)行導(dǎo)入)。

創(chuàng)建完成后可以直接得到一個(gè)非常豐富的 Apache APISIX 網(wǎng)關(guān)監(jiān)控面板。KubeSphere 也同時(shí)在 積極推進(jìn)[16] 將 Grafana 模版導(dǎo)入的功能引入到項(xiàng)目的自定義監(jiān)控能力中去,敬請期待!

至此,我們了解了 KubeSphere 3.2.0 中新的項(xiàng)目及集群網(wǎng)關(guān)的更豐富的狀態(tài)信息展示能力;同時(shí)也完成了 Apache APISIX Ingress 網(wǎng)關(guān)接入 KubeSphere 并對其使用自定義監(jiān)控。讓我們開啟 KubeSphere 應(yīng)用網(wǎng)關(guān)的奇妙旅程吧~
引用鏈接
Apache APISIX Ingress Controller: https://apisix.apache.org/docs/ingress-controller/getting-started/
[2]在 Linux 安裝 KubeSphere: https://kubesphere.com.cn/docs/quick-start/all-in-one-on-linux/
[3]在 Kubernetes 安裝 KubeSphere: https://kubesphere.com.cn/docs/quick-start/minimal-kubesphere-on-k8s/
[4]httpbin.org: http://httpbin.org/
[5]kennethreitz/httpbin: https://hub.docker.com/r/kennethreitz/httpbin/
[6]kennethreitz/httpbin: https://hub.docker.com/r/kennethreitz/httpbin/
[7]項(xiàng)目網(wǎng)關(guān): https://kubesphere.com.cn/docs/project-administration/project-gateway/
[8]NGINX Ingress 控制器: https://www.nginx.com/products/nginx-ingress-controller/
[9]應(yīng)用路由: https://kubesphere.com.cn/docs/project-user-guide/application-workloads/routes/
[10]Dashboard: https://github.com/apache/apisix-helm-chart/blob/master/charts/apisix-dashboard/values.yaml
[11]Ingress Controller: https://github.com/apache/apisix-helm-chart/blob/master/charts/apisix-ingress-controller/values.yaml
[12]Prometheus 插件: https://apisix.apache.org/docs/apisix/plugins/prometheus
[13]Prometheus Operator: https://github.com/prometheus-operator/prometheus-operator
[14]可有的指標(biāo): https://apisix.apache.org/zh/docs/apisix/plugins/prometheus/#%E5%8F%AF%E6%9C%89%E7%9A%84%E6%8C%87%E6%A0%87
[15]Apache APISIX Grafana 模版: https://grafana.com/grafana/dashboards/11719
[16]積極推進(jìn): https://github.com/kubesphere/kubesphere/issues/4433
關(guān)于?KubeSphere
KubeSphere (https://kubesphere.io)是在 Kubernetes 之上構(gòu)建的開源容器混合云,提供全棧的 IT 自動(dòng)化運(yùn)維的能力,簡化企業(yè)的 DevOps 工作流。
KubeSphere?已被?Aqara?智能家居、愛立信、本來生活、東軟、華云、新浪、三一重工、華夏銀行、四川航空、國藥集團(tuán)、微眾銀行、杭州數(shù)跑科技、紫金保險(xiǎn)、去哪兒網(wǎng)、中通、中國人民銀行、中國銀行、中國人保壽險(xiǎn)、中國太平保險(xiǎn)、中國移動(dòng)、中國電信、天翼云、中移金科、Radore、ZaloPay?等海內(nèi)外數(shù)千家企業(yè)采用。KubeSphere 提供了開發(fā)者友好的向?qū)讲僮鹘缑婧拓S富的企業(yè)級功能,包括?Kubernetes?多云與多集群管理、DevOps?(CI/CD)、應(yīng)用生命周期管理、邊緣計(jì)算、微服務(wù)治理?(Service?Mesh)、多租戶管理、可觀測性、存儲與網(wǎng)絡(luò)管理、GPU?support?等功能,幫助企業(yè)快速構(gòu)建一個(gè)強(qiáng)大和功能豐富的容器云平臺。

