-
Notifications
You must be signed in to change notification settings - Fork 370
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add antrea scale test tool #5772
base: main
Are you sure you want to change the base?
Conversation
125c0e0
to
b6838a4
Compare
9ff82e6
to
e3be479
Compare
e3be479
to
a88ddec
Compare
/test-scale |
e72ab5a
to
cc75d96
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add the details of this scale test tool to help reviewers and users to understand the framework and how to use it.
1af3a7f
to
0ef720d
Compare
0039d9a
to
55d084a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not finished
test/performance/framework/agent.go
Outdated
var clientPod *corev1.Pod | ||
clientPod, err = client_pod.CreatePod(ctx, data.kubernetesClientSet, []string{prober}, client_pod.ScaleClientPodControllerProbeContainer, client_pod.ClientPodsNamespace) | ||
if err != nil { | ||
klog.ErrorS(err, "Create client test Pod failed") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
klog.ErrorS(err, "Create client test Pod failed") | |
klog.ErrorS(err, "Failed to create client test Pod") |
or client test Pod creation failed
Please check your logs and comments, there are lots of syntax error.
2f01337
to
f7dacb3
Compare
@wenqiq you can run |
e0d2552
to
2b54394
Compare
a5137cf
to
491bcee
Compare
@@ -0,0 +1,302 @@ | |||
#!/usr/bin/env bash |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suppose this script should be integrated with Jenkins, right? If so, ci/jenkins/jobs/macros.yaml and ci/jenkins/jobs/projects-lab.yaml should also be updated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will update ci/jenkins/test-scale.sh
ci/jenkins/jobs/macros.yaml
ci/jenkins/jobs/projects-lab.yaml
together.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will update
ci/jenkins/test-scale.sh
ci/jenkins/jobs/macros.yaml
ci/jenkins/jobs/projects-lab.yaml
together.
Got it @wenqiq , I will review it again once the updates have been made.
test/performance/framework/agent.go
Outdated
return | ||
} | ||
startTime := time.Now().UnixNano() | ||
klog.InfoS("Deleting operate time", "Duration(ms)", (startTime-startTime0)/1000000) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
klog.InfoS("Deleting operate time", "Duration(ms)", (startTime-startTime0)/1000000) | |
klog.InfoS("Deleting operation time", "Duration(ms)", (startTime-startTime0)/1000000) |
One question, do we need to check this operation time?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just for reference in case we would check the operation time. I changed the log level.
test/performance/README.md
Outdated
repeat_times: 1 | ||
``` | ||
|
||
## 3. Flexibility & Assemblability |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The following two parts are for configuration details, you can remove this title.
test/performance/README.md
Outdated
## 5. Multiple platforms(Different CNIs) | ||
|
||
Additionally, for some common functional features, it's essential to compare the performance | ||
differences between different CNIs to understand our shortcomings or advantages. | ||
The scale test tool can run tests on different Kubernetes platforms and compare the performance | ||
metrics of different CNIs. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have you tried with different CNIs? If yes, please highlight the configuration yaml differences and requirements, I don't think the case like ScaleRestartAgent
will work for other CNIs. If not, please remove this section.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Of course. I think we can use ScaleService
and ScaleNetworkPolicy
to test any other CNIs.
scales:
- name: "ScaleUpWorkloadPods"
package: "test/performance/framework"
repeat_times: 1
- name: "ScaleService"
package: "test/performance/framework"
repeat_times: 1
- name: "ScaleNetworkPolicy"
package: "test/performance/framework"
repeat_times: 1
|
||
## 6. Measure and monitoring | ||
|
||
The Antrea scale test tool also integrates monitoring tools, with Prometheus and Grafana, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please provide the details about how to install monitoring tools, or at least point out the deploy.sh
script and the path of dashboards, Otherwise, user might not be aware of these tools and pre-defined dashboards.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated.
Signed-off-by: Wenqi Qiu <[email protected]>
Signed-off-by: Shuyang Xin <[email protected]>
491bcee
to
a55303a
Compare
Signed-off-by: Wenqi Qiu <[email protected]>
a55303a
to
c0f69af
Compare
This PR is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days |
Add antrea scale test tool.
antrea-scale
provides an automated testing tool for Container Network Interface (CNI), enablingthe scalable testing of Antrea CNI plugins' fundamental functionalities in Kubernetes clusters.
This includes testing features such as Service network support and NetworkPolicy network isolation
in a Kubernetes Cluster.
Signed-off-by: Wenqi Qiu [email protected]
Co-authored-by: Shuyang Xin [email protected]
Co-authored-by: Weiqiang Tang [email protected]