|
21 | 21 | - [Generate Data Encryption Key (DEK) Seed](#generate-data-encryption-key-dek-seed)
|
22 | 22 | - [Cryptography Details](#cryptography-details)
|
23 | 23 | - [Benchmarks](#benchmarks)
|
| 24 | + - [Comparing Metrics](#comparing-metrics) |
24 | 25 | - [Test Plan](#test-plan)
|
25 | 26 | - [Prerequisite testing updates](#prerequisite-testing-updates)
|
26 | 27 | - [Unit tests](#unit-tests)
|
@@ -442,6 +443,29 @@ KMSv2REST-10 23.95Gi ± 0% 27.25Gi ± 0% +13.77% (p=0.000 n=10)
|
442 | 443 | KMSv2REST-10 3.119M ± 0% 3.268M ± 1% +4.78% (p=0.000 n=10)
|
443 | 444 | ```
|
444 | 445 |
|
| 446 | +### Comparing Metrics |
| 447 | + |
| 448 | +Multiple [runs of e2e tests](https://gist.github.com/ritazh/528e627430621fffce41fd04983024a4) were performed to compare the impact of having KMS v2 encryption of all resources vs no encryption at all. The results are included below. |
| 449 | + |
| 450 | +It shows that there is no significant increase in the following API server metrics: `apiserver_request_duration_seconds`, `apiserver_request_terminations_total`, `apiserver_request_aborts_total`. |
| 451 | + |
| 452 | +| | post* | get* | delete* | list* | |
| 453 | +|-------------------------|-----------|-----------|-----------|-----------| |
| 454 | +| **run w/o encrypt** | | | | | |
| 455 | +| 1 | 0.0225 | 0.0086 | 0.0103 | 0.0046 | |
| 456 | +| 2 | 0.0336 | 0.0076 | 0.0119 | 0.0058 | |
| 457 | +| 3 | 0.0205 | 0.0081 | 0.0117 | 0.0047 | |
| 458 | +| average w/o encrypt | 0.025533 | 0.0081 | 0.0113 | 0.005033 | |
| 459 | +| **run w/ encrypt** | | | | | |
| 460 | +| 4 | 0.0219 | 0.0071 | 0.0109 | 0.0051 | |
| 461 | +| 5 | 0.0229 | 0.0062 | 0.01 | 0.0045 | |
| 462 | +| 6 | 0.0279 | 0.0082 | 0.0119 | 0.005 | |
| 463 | +| average w/ encrypt | 0.024233 | 0.007167 | 0.010933 | 0.004867 | |
| 464 | +| % diff between averages | -5.09138 | -11.5226 | -3.24484 | -3.31126 | |
| 465 | + |
| 466 | +*average apiserver_request_duration_seconds = apiserver_request_duration_seconds_sum / apiserver_request_duration_seconds_count |
| 467 | +Both `apiserver_request_terminations_total` and `apiserver_request_aborts_total` resulted in no difference. |
| 468 | + |
445 | 469 | ### Test Plan
|
446 | 470 |
|
447 | 471 | [x] I/we understand the owners of the involved components may require updates to existing tests to make this code solid enough prior to committing the changes necessary to implement this enhancement.
|
|
0 commit comments