Karmada大规模测试报告发布:突破100倍集群规模( 四 )


name: testnamespace:number: 10tuningSets: - name: Uniformtinyqps qpsLoad: qps: 0.1 - name: Uniform1qps qpsLoad: qps: 1steps: - name: Create deploymentphases: - namespaceRange:min: 1max: 10 replicasPerNamespace: 20 tuningSet: Uniformtinyqps objectBundle: - basename: test-deployment objectTemplatePath: "deployment.yaml" templateFillMap:Replicas: 1000 - namespaceRange:min: 1max: 10 replicasPerNamespace: 1 tuningSet: Uniform1qps objectBundle: - basename: test-policy objectTemplatePath: "policy.yaml"# deployment.yamlapiVersion: apps/v1kind: Deploymentmetadata:name: {{.Name}}labels:group: test-deploymentspec:replicas: {{.Replicas}}selector: matchLabels:app: fake-podtemplate:metadata:labels:app: fake-podspec:affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: typeoperator: Invalues: - fake-kubelettolerations: - key: "fake-kubelet/provider"operator: "Exists"effect: "NoSchedule"containers: - image: fake-podname: {{.Name}}# policy.yamlapiVersion: policy.karmada.io/v1alpha1kind: PropagationPolicymetadata:name: testspec: resourceSelectors: - apiVersion: apps/v1kind: Deploymentplacement: replicaScheduling: replicaDivisionPreference: Weighted replicaSchedulingType: DividedKubernetes 资源详细的配置如下表所示:

Karmada大规模测试报告发布:突破100倍集群规模

文章插图
详细的测试方法和过程,可以参考
https://github.com/kubernetes/perf-tests/blob/master/clusterloader2/docs/GETTING_STARTED.md[1]
测试结果APIResponsivenessPrometheus:
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Cluster Registration Latency:
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Note: Karmada 的 Pull 模式适合用于私有云的场景 。与 Push 模式相比,成员集群会运行一个名为 karmada-agent 的组件 。它会从控制面拉取用户提交的应用,并运行在成员集群中 。在 Pull 模式集群注册的过程中,它会包含安装 karmada-agent 的时间 。如果 karmada-agent 的镜像已经准备完毕的话,它很大程度上取决于单集群内 Pod 启动的时延 。这里不过多讨论 Pull 模式的注册时延 。
Resource Distribution Latency:
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Push ModeEtcd latency:
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Resource Usage:
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Pull ModeEtcd latency:
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Resource Usage:
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
Karmada大规模测试报告发布:突破100倍集群规模

文章插图
成员集群中的 karmada-agent 消耗了 40m CPU(cores)和 266Mi Memory(bytes) 。
结论与分析在以上的测试结果中,API调用时延和资源分发时延均符合上述定义的SLIs/SLOs 。在整个过程中,系统消耗的资源在一个可控制的范围 。因此,Karmada能稳定支撑100个大规模集群,并且管理超过500,000个节点和2,000,000个的pods 。在生产中,Karmada能有效支持数以百计的大规模的集群 。接下来,我们会具体分析每个测试指标的数据 。

经验总结扩展阅读