Some changes to the design:
 * Instance remove jobs can't be submitted before create jobs are done, so
rectify this.
 * Add test of instance info jobs during heavy load on the cluster.
 * Add some more tests scenarios for the parallel instance creation test.

@pudlak: Do you have comments on the design, since this was originally your
idea?

Cheers,
Thomas

Interdiff:

diff --git a/doc/design-performance-tests.rst
b/doc/design-performance-tests.rst
index 1f804e0..b1b2e2b 100644
--- a/doc/design-performance-tests.rst
+++ b/doc/design-performance-tests.rst
@@ -32,6 +32,10 @@ two areas:
   * Parallel job execution performance. How well does Ganeti
     parallelize jobs?

+Jobs are submitted to the job queue in sequential order, but the
+execution of the jobs runs in parallel. All job submissions must
+complete within a reasonable timeout.
+
 In order to make it easier to recognize performance related tests, all
 tests added in the context of this design get a description with a
 "PERFORMANCE: " prefix.
@@ -46,7 +50,7 @@ they are designed to run in a vcluster QA environment.
 The following tests are added to the QA:

   * Submit the maximum amount of instance create jobs in parallel. As
-    soon as a creation job starts to run, submit a removal job for this
+    soon as a creation job succeeds, submit a removal job for this
     instance.
   * Submit as many instance create jobs as there are nodes in the
     cluster in parallel (for non-redundant instances). Removal jobs
@@ -58,7 +62,9 @@ The following tests are added to the QA:
   * For the maximum amount of instances in the cluster, submit multiple
     list and info jobs in parallel.
   * For the maximum amount of instances in the cluster, submit move
-    jobs in parallel.
+    jobs in parallel. While the move operations are running, get
+    instance information using info jobs. Those jobs are required to
+    return within a reasonable low timeout.
   * For the maximum amount of instances in the cluster, submit add-,
     remove- and list-tags jobs.

@@ -76,10 +82,11 @@ The following tests are added to the QA:

   * Submitting twice as many instance creation request as there are
     nodes in the cluster, using DRBD as disk template. As soon as a
-    creation job starts to run, submit a removal job for this instance.
+    creation job succeeds, submit a removal job for this instance.
   * Create an instance using DRBD. Fail it over, migrate it, recreate
-    its disk and change its secondary node while creating an additional
-    instance in parallel to each of those operations.
+    its disk, change its secondary node, reboot it and reinstall it
+    while creating an additional instance in parallel to each of those
+    operations.

 Future work
 ===========



On Tue, Apr 22, 2014 at 12:11 PM, Klaus Aehlig <[email protected]> wrote:

> > +Job queue performance
> > +---------------------
> > +
> > +Tests targeting the job queue should eliminate external factors (like
> > +network/disk performance or hypervisor delays) as much as possible, so
> > +they are designed to run in a vcluster QA environment.
>
> When testing the cost of Ganeti-internal communication only, it at
> least should be made sure, that daemons are not started in debug mode;
> the amount of details logged at debug level has increased significantly,
> so for the test to be meaningful, writing the debug-level entries to
> log files shouldn't be the bottleneck...
>
> --
> Klaus Aehlig
> Google Germany GmbH, Dienerstr. 12, 80331 Muenchen
> Registergericht und -nummer: Hamburg, HRB 86891
> Sitz der Gesellschaft: Hamburg
> Geschaeftsfuehrer: Graham Law, Christine Elizabeth Flores
>



-- 
Thomas Thrainer | Software Engineer | [email protected] |

Google Germany GmbH
Dienerstr. 12
80331 München

Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschäftsführer: Graham Law, Christine Elizabeth Flores

Reply via email to