From 58bf4525cc3996285dcf6f4ea83f5c4da107c044 Mon Sep 17 00:00:00 2001 From: Ashley Hardin Date: Fri, 11 Oct 2019 11:31:31 -0400 Subject: [PATCH] Bug 1757573, updated Cluster Loader docs --- modules/configuring-cluster-loader.adoc | 36 +++++++++---------- modules/running-cluster-loader.adoc | 23 ++++++------ release_notes/ocp-4-2-release-notes.adoc | 3 ++ .../using-cluster-loader.adoc | 11 +++--- 4 files changed, 40 insertions(+), 33 deletions(-) diff --git a/modules/configuring-cluster-loader.adoc b/modules/configuring-cluster-loader.adoc index ca6ab50953..8a75d89f62 100644 --- a/modules/configuring-cluster-loader.adoc +++ b/modules/configuring-cluster-loader.adoc @@ -5,16 +5,14 @@ [id="configuring_cluster_loader_{context}"] = Configuring Cluster Loader -The tool creates multiple namespaces (projects), which contain multiple templates or pods. - -Locate the configuration files for Cluster Loader in the `config/` subdirectory. -The pod files and template files referenced in these configuration examples are -found in the `content/` subdirectory. +The tool creates multiple namespaces (projects), which contain multiple +templates or Pods. == Example Cluster Loader configuration file Cluster Loader’s configuration file is a basic YAML file: +[source,yaml] ---- provider: local <1> ClusterLoader: @@ -26,7 +24,7 @@ ClusterLoader: ifexists: reuse templates: - num: 1 - file: ./examples/quickstarts/cakephp-mysql.json + file: cakephp-mysql.json - num: 1 basename: clusterloader-dancer-mysql @@ -34,7 +32,7 @@ ClusterLoader: ifexists: reuse templates: - num: 1 - file: ./examples/quickstarts/dancer-mysql.json + file: dancer-mysql.json - num: 1 basename: clusterloader-django-postgresql @@ -42,7 +40,7 @@ ClusterLoader: ifexists: reuse templates: - num: 1 - file: ./examples/quickstarts/django-postgresql.json + file: django-postgresql.json - num: 1 basename: clusterloader-nodejs-mongodb @@ -50,14 +48,14 @@ ClusterLoader: ifexists: reuse templates: - num: 1 - file: ./examples/quickstarts/nodejs-mongodb.json + file: quickstarts/nodejs-mongodb.json - num: 1 basename: clusterloader-rails-postgresql tuning: default templates: - num: 1 - file: ./examples/quickstarts/rails-postgresql.json + file: rails-postgresql.json tuningset: <2> - name: default @@ -70,7 +68,7 @@ ClusterLoader: ---- <1> Optional setting for end-to-end tests. Set to `local` to avoid extra log messages. <2> The tuning sets allow rate limiting and stepping, the ability to create several -batches of pods while pausing in between sets. Cluster Loader monitors +batches of Pods while pausing in between sets. Cluster Loader monitors completion of the previous step before continuing. <3> Stepping will pause for `M` seconds after each `N` objects are created. <4> Rate limiting will wait `M` milliseconds between the creation of objects. @@ -93,7 +91,7 @@ namespace to create is defined and `projects` has several mandatory subheadings. |`tuningset` |A sub-object with one definition per configuration. `tuningset` allows the user to define a tuning set to add configurable timing to project or object creation -(pods, templates, and so on). +(Pods, templates, and so on). |`sync` |An optional sub-object with one definition per configuration. Adds synchronization @@ -129,7 +127,7 @@ path to a file from which you create the ConfigMap. a file from which you create the secret. |`pods` -|A sub-object with one or many definition(s) of pods to deploy. +|A sub-object with one or many definition(s) of Pods to deploy. |`templates` |A sub-object with one or many definition(s) of templates to deploy. @@ -140,7 +138,7 @@ a file from which you create the secret. |Field |Description |`num` -|An integer. The number of pods or templates to deploy. +|An integer. The number of Pods or templates to deploy. |`image` |A string. The docker image URL to a repository where it can be pulled. @@ -165,7 +163,7 @@ override in the pod or template. defining a tuning in a project. |`pods` -|A sub-object identifying the `tuningset` that will apply to pods. +|A sub-object identifying the `tuningset` that will apply to Pods. |`templates` |A sub-object identifying the `tuningset` that will apply to templates. @@ -213,18 +211,18 @@ whether to start an HTTP server for pod synchronization. The integer `port` defines the HTTP server port to listen on (`9090` by default). |`running` -|A boolean. Wait for pods with labels matching `selectors` to go into `Running` +|A boolean. Wait for Pods with labels matching `selectors` to go into `Running` state. |`succeeded` -|A boolean. Wait for pods with labels matching `selectors` to go into `Completed` +|A boolean. Wait for Pods with labels matching `selectors` to go into `Completed` state. |`selectors` -|A list of selectors to match pods in `Running` or `Completed` states. +|A list of selectors to match Pods in `Running` or `Completed` states. |`timeout` -|A string. The synchronization timeout period to wait for pods in `Running` or +|A string. The synchronization timeout period to wait for Pods in `Running` or `Completed` states. For values that are not `0`, use units: [ns\|us\|ms\|s\|m\|h]. |=== diff --git a/modules/running-cluster-loader.adoc b/modules/running-cluster-loader.adoc index c47365d574..9f1399fb90 100644 --- a/modules/running-cluster-loader.adoc +++ b/modules/running-cluster-loader.adoc @@ -11,7 +11,7 @@ template builds and waits for them to complete: + ---- -$ sudo podman run -v ${LOCAL_KUBECONFIG}:/root/.kube/config -i +$ sudo podman run -v ${LOCAL_KUBECONFIG}:/root/.kube/config:z -i \ quay.io/openshift/origin-tests:4.2 /bin/bash -c 'export KUBECONFIG=/root/.kube/config && \ openshift-tests run-test "[Feature:Performance][Serial][Slow] Load cluster should load the \ cluster [Suite:openshift]"' @@ -21,14 +21,17 @@ Alternatively, execute Cluster Loader with a user-defined configuration by setting the environment variable for `VIPERCONFIG`: + ---- -$ sudo podman run -v ${LOCAL_KUBECONFIG}:/root/.kube/config -i -quay.io/openshift/origin-tests:4.2 /bin/bash -c 'export KUBECONFIG=/root/.kube/config && \ -export VIPERCONFIG=config/test && \ -openshift-tests run-test "[Feature:Performance][Serial][Slow] Load cluster should load the \ -cluster [Suite:openshift]"' +$ sudo podman run -v ${LOCAL_KUBECONFIG}:/root/.kube/config:z \ +-v ${LOCAL_CONFIG_FILE_PATH}:/root/configs/:z \ +-i quay.io/openshift/origin-tests:4.2 \ +/bin/bash -c 'KUBECONFIG=/root/.kube/config VIPERCONFIG=/root/configs/test.yaml \ +openshift-tests run-test "[Feature:Performance][Serial][Slow] Load cluster should \ +load the cluster [Suite:openshift]"' ---- + -In this example, there is a subdirectory called *_config/_* with a configuration -file called *_test.yml_*. In the command line, exclude the extension of the -configuration file, as the tool will automatically determine the file type and -extension. +In this example, `${LOCAL_KUBECONFIG}` refers to the path to the `kubeconfig` on +your local file system. Also, there is a directory called +`${LOCAL_CONFIG_FILE_PATH}`, which is mounted into the container that contains a +configuration file called `test.yaml`. Additionally, if the `test.yaml` +references any external template files or podspec files, it should also be +mounted into the container. diff --git a/release_notes/ocp-4-2-release-notes.adoc b/release_notes/ocp-4-2-release-notes.adoc index b284d9c950..ace01a679b 100644 --- a/release_notes/ocp-4-2-release-notes.adoc +++ b/release_notes/ocp-4-2-release-notes.adoc @@ -1462,6 +1462,9 @@ for more information. any of the Multus CNI plug-ins. (link:https://bugzilla.redhat.com/show_bug.cgi?id=1754686[*BZ#1754686*]) +* Cluster Loader fails when called without configuration. +(link:https://bugzilla.redhat.com/show_bug.cgi?id=1761925[*BZ#1761925*]) + * The Cluster Network Operator does not a remove `NetworkAttachmentDefinition` that the Operator created previously, when the additional network is removed from the `additionalNetworks` collection. diff --git a/scalability_and_performance/using-cluster-loader.adoc b/scalability_and_performance/using-cluster-loader.adoc index b0277da0b9..5e38c1126f 100644 --- a/scalability_and_performance/using-cluster-loader.adoc +++ b/scalability_and_performance/using-cluster-loader.adoc @@ -19,10 +19,13 @@ include::modules/configuring-cluster-loader.adoc[leveloffset=+1] == Known issues -If the `IDENTIFIER` parameter is not defined in user templates, template +* Cluster Loader fails when called without configuration. +(link:https://bugzilla.redhat.com/show_bug.cgi?id=1761925[*BZ#1761925*]) + +* If the `IDENTIFIER` parameter is not defined in user templates, template creation fails with `error: unknown parameter name "IDENTIFIER"`. If you deploy templates, add this parameter to your template to avoid this error: - ++ ---- { "name": "IDENTIFIER", @@ -30,5 +33,5 @@ templates, add this parameter to your template to avoid this error: "value": "1" } ---- - -If you deploy pods, adding the parameter is unnecessary. ++ +If you deploy Pods, adding the parameter is unnecessary.