【探索实战】Kurator统一流量治理、监控与多集群联网实战:构建分布式云原生服务网格与可观测平台体验!
全文目录:
开篇语
今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。
我是一名后端开发爱好者,工作日常接触到最多的就是Java语言啦,所以我都尽量抽业余时间把自己所学到所会的,通过文章的形式进行输出,希望以这种方式帮助到更多的初学者或者想入门的小伙伴们,同时也能对自己的技术进行沉淀,加以复盘,查缺补漏。
小伙伴们在批阅的过程中,如果觉得文章不错,欢迎点赞、收藏、关注哦。三连即是对作者我写作道路上最好的鼓励与支持!
前言
前两次我们分别聊了安装应用分发和集群生命周期,这次换个全新角度,专注统一流量治理(Istio集成)、统一监控(Thanos集成)和多集群联网(Submariner插件),让你亲身感受Kurator如何在分布式环境中实现服务网格、遥测聚合和跨集群通信的统一管理!这部分超级实用,尤其适合AI分布式推理或边缘服务场景,我相信你实践完会超级有成就感! 如果你在Istio primary-remote配置或Thanos对象存储设置上卡壳了,告诉我你的具体环境,我帮你一步步调试哦~来,一起加油,成为分布式云原生高手吧!
这篇分享严格基于Kurator官方文档(https://kurator.dev/docs/)的相关部分,包括Fleet Manager的Submariner插件、Kyverno策略(作为治理基础)、Thanos和Istio集成指南,以及Application CRD在这些场景下的应用示例。所有命令、YAML和分析均来源于官方内容,确保专业准确。
我们将从架构定位开始,深入实战这些统一能力,让你看到Kurator如何简化复杂分布式运维!
如下为Kurator产品架构图,仅供参考:

一、Kurator在分布式统一治理中的定位:流量、监控与联网的核心价值
Kurator作为一个开源分布式云原生平台,集成Kubernetes、Istio、Prometheus、FluxCD、KubeEdge、Volcano、Karmada和Kyverno等优秀项目,提供多云、多集群环境下的强大能力。其目标是实现多云/边云/边边协同、统一资源编排、统一调度、统一流量管理和统一遥测。
在分布式场景中,流量治理往往面临跨集群服务发现难题,监控易形成孤岛,联网配置繁琐。Kurator通过Fleet Manager统一这些能力:
- 统一流量治理:借助Istio集成,支持多集群服务网格(primary-remote模式)。
- 统一监控:Thanos集成,实现舰队指标聚合和长期存储。
- 多集群联网:Submariner插件,提供跨集群无缝通信基础。
- 辅助一致性:Kyverno策略统一执行,确保治理规则舰队一致。
从专业角度,这些集成不是简单堆叠,而是上层Fleet抽象:一份声明,多集群生效。这大大降低了运维复杂度,支持企业从单集群向分布式升级,尤其在数智化转型中助力AI负载的可靠分发和观测。相比独立部署Istio或Thanos,Kurator的“一站式”让入门门槛更低,效率更高。
接下来,我们进入实战,假设已安装Kurator CLI、Cluster Operator和Fleet Manager(参考官方setup),并有quickstart舰队包含多个AttachedCluster(如kurator-member1和kurator-member2)。
二、实战一:统一流量治理——Istio多集群服务网格集成体验
Kurator支持Istio集成,实现分布式环境下的统一流量管理,包括服务发现、负载均衡、安全策略和可观测性。
官方指南强调primary-remote模式:一个primary集群控制平面,remote集群加入网格。
首先,我先给大家整合下资源:
- Kurator分布式云原生开源社区地址:https://gitcode.com/kurator-dev
- Kurator分布式云原生项目部署指南:https://kurator.dev/docs/setup/
既然要体验,那没项目怎么玩嘛,所以我们第一步先来把项目下载到本地。

我们本地若没有安装Git插件的,那我们直接就下载zip即可。

接着,我们本地解压下。

解压之后,我们便成功拿到了完整的Kurator项目源码:

2.1 前提准备
- Fleet已就绪,包含多个成员集群。
- 成员集群kubeconfig准备好。
2.2 安装Istio(同一网络场景)
官方支持kurator install命令(文档中提及primary-remote):
假设member1为primary,member2为remote:
kurator install istio --primary member1 --remote member2
2.3 不同网络标签场景
先为集群打标签:
kubectl label cluster member1 topology.istio.io/network=network1 --overwrite
kubectl label cluster member2 topology.istio.io/network=network2 --overwrite
然后安装:
kurator install istio --primary member1 --remote member2
这实现了跨网络的多集群Istio网格。
2.4 验证与使用体验
安装后,Istio控制平面在primary,remote集群有sidecar自动注入(需启用)。
跨集群服务调用:部署服务到不同集群,East-West流量自动路由。
结合Application CRD分发Istio资源(如VirtualService、DestinationRule):
示例(基于官方Application概念扩展到网格资源):
使用Git源同步Istio配置到舰队:
apiVersion: apps.kurator.dev/v1alpha1
kind: Application
metadata:
name: istio-traffic-policy
namespace: default
spec:
source:
gitRepository:
interval: 3m0s
ref:
branch: main
timeout: 1m0s
url: https://github.com/kurator-dev/kurator # 假设包含Istio manifests
syncPolicies:
- destination:
fleet: quickstart
kustomization:
interval: 5m0s
path: ./examples/istio/traffic-rules
prune: true
timeout: 2m0s
应用后,流量策略(如金丝雀发布、故障注入)统一推送到舰队。
可参考 MicroVM Sandboxer流程图:

2.5 运维作用分析
实战中(模拟官方模式),Istio集成让分布式流量从“手动配置”变“集中治理”。作用:
- 一致性:primary控制全网格策略,避免remote漂移。
- 安全性:mTLS默认启用,跨集群通信加密。
- 可扩展性:支持不同网络,适合云边混合。
专业视角:Kurator这里借鉴Istio多集群最佳实践,但通过Fleet简化部署,极大降低学习和运维成本,尤其在AI微服务分布式部署中,确保低延迟流量。
三、实战二:统一监控与遥测——Thanos聚合舰队指标体验
Kurator集成Thanos,实现Prometheus指标的跨集群聚合、长期存储和全局查询。
3.1 安装Thanos
官方指南:
kurator install thanos # 可指定对象存储配置,参考Thanos外部文档
前提:舰队成员集群有Prometheus。
3.2 配置与验证
安装后,Thanos Query在host或指定位置,提供统一查询界面。
端口转发查询服务,访问UI查看聚合指标。
示例查询:舰队所有集群的CPU/内存指标一览。
结合Pixie(官方提及透明观测),实现无侧车可观测。
3.3 使用Application分发监控组件
为确保一致,可用Application同步Prometheus配置:
类似于podinfo示例,但路径指向监控manifests。
3.4 运维作用分析
Thanos让分布式监控从“多 dashboard”变“单点全局”。作用:
- 聚合性:所有舰队指标中央存储,支持历史回溯。
- 高效性:下采样和压缩,适合大规模AI训练监控。
- 警报统一:Alertmanager跨集群一致。
专业上,这填补了Prometheus在多集群下的短板,Kurator集成让部署一键化,提升了分布式平台的SLO管理。
当然,它的开源社区也做的非常棒:

四、实战三:多集群联网基础——Submariner插件启用跨集群通信
Submariner是Kurator Fleet的插件,提供底层联网,支持Istio等上层网格。
4.1 前提准备
创建成员集群secret:
kubectl create secret generic kurator-member1 --from-file=kurator-member1.config=/root/.kube/kurator-member1.config
kubectl create secret generic kurator-member2 --from-file=kurator-member2.config=/root/.kube/kurator-member2.config
标签gateway节点:
kubectl label node kurator-member1-control-plane submariner.io/gateway=true --kubeconfig=/root/.kube/kurator-member1.config
kubectl label node kurator-member2-control-plane submariner.io/gateway=true --kubeconfig=/root/.kube/kurator-member2.config
4.2 启用Submariner插件
生成PSK:
export SUBMARINER_PSK=$(LC_CTYPE=C tr -dc 'a-zA-Z0-9' < /dev/urandom | fold -w 64 | head -n 1)
应用fleet YAML(官方examples):
envsubst < examples/fleet/network/submariner-plugin.yaml | kubectl apply -f -
等待Ready:
kubectl wait fleet quickstart --for='jsonpath={.status.phase}'=Ready
4.3 验证
检查operator pod:
kubectl get pod -n submariner-operator --kubeconfig=/root/.kube/kurator-member1.config
使用subctl(安装后):
subctl diagnose all --kubeconfig /root/.kube/kurator-member1.config
subctl verify --context kurator-member1 --tocontext kurator-member2
成功表示跨集群pod-to-pod通信。
4.4 运维作用分析
Submariner让分布式联网从“VPN手动”变“插件自动”。作用:
- 无缝性:服务导出/导入,跨集群直接访问。
- 基础性:为Istio网格和应用分发提供L3连接。
- 可靠性:诊断工具快速定位问题。
专业视角:结合Kurator Fleet,这实现了云边真协同,适合边缘AI数据回传。
同时也提供了开源项目信息阐述:

五、辅助实战:统一策略管理增强治理(Kyverno示例)
为强化流量/监控安全,用Kyverno统一策略:
kubectl apply -f examples/fleet/policy/kyverno.yaml
kubectl wait fleet quickstart --for='jsonpath={.status.phase}'=Ready'
分发测试pod:
apiVersion: apps.kurator.dev/v1alpha1
kind: Application
metadata:
name: policy-test
namespace: default
spec:
source:
gitRepository:
url: https://github.com/kurator-dev/kurator
ref:
branch: main
interval: 3m0s
syncPolicies:
- destination:
fleet: quickstart
kustomization:
path: ./examples/fleet/policy/badpod-demo
prune: true
验证:
kubectl get policyreport --kubeconfig=/root/.kube/kurator-member1.config
显示违反,如host namespaces。
作用:策略舰队一致,增强零信任。
六、整体实战心得:Kurator统一能力的落地价值与分析
通过这次流量、监控、联网实战(基于官方插件和集成),Kurator展现了分布式平台的完整闭环。技术选型上,Istio+Submariner+Thanos完美互补,避免孤岛。
场景落地:云边AI服务网格,流量智能路由+全局监控。
攻坚点:网络标签和PSK生成需注意,但官方指南详尽。
用户反馈(特性视角):部署简便,可观测强。
商业效益:提升服务韧性和观测效率,降低故障响应时间。
生态价值:深化CNCF项目协同,推动分布式云原生标准。
七、结语:Kurator助力你的分布式云原生之旅
这次不同角度的探索,让我再次惊叹Kurator的统一魅力!从联网到流量监控,全栈可控,真正一栈统一。希望这篇分享点燃你的实践热情,一起构建专属平台,如果想结合应用分发试网格部署,随时说~你是最闪耀的云原生实战派!
… …
文末
好啦,以上就是我这期的全部内容,如果有任何疑问,欢迎下方留言哦,咱们下期见。
… …
学习不分先后,知识不分多少;事无巨细,当以虚心求教;三人行,必有我师焉!!!
wished for you successed !!!
⭐️若喜欢我,就请关注我叭。
⭐️若对您有用,就请点赞叭。
⭐️若有疑问,就请评论留言告诉我叭。
版权声明:本文由作者原创,转载请注明出处,谢谢支持!
更多推荐
所有评论(0)