From 5379e2bd74699f67ba9fb6d4a228aa98d6c55a22 Mon Sep 17 00:00:00 2001 From: Boris Pavlovic Date: Sat, 28 Mar 2015 03:52:12 +0300 Subject: [PATCH] Finish support of benchmarking with existing users Now one can use Rally for benchmarking OpenStack clouds that are using LDAP, AD or any other read only keystone backend where you are not able to create any users. To do this one can specify "users" section in ExistingCloud plugin input file. Rally will use these "users" to generate load instead of creating new. As well if you specify both "users" section in deployment input file and "users" context it will use temporary created by Rally users. Restructurize samples/deployments directory: - Deploying OpenStack clouds with Rally is not popular functionallity so hide all samples deeper. - Some fixes in readme.rst - Add new sample for existing cloud with predefined users Change-Id: If3d31960ee317e0770abceacc62b3acf0947d269 --- samples/deployments/README.rst | 56 ++++++++----------- .../existing-with-predefined-users.json | 23 ++++++++ 2 files changed, 45 insertions(+), 34 deletions(-) create mode 100644 samples/deployments/existing-with-predefined-users.json diff --git a/samples/deployments/README.rst b/samples/deployments/README.rst index 2f798589..dca1f1f8 100644 --- a/samples/deployments/README.rst +++ b/samples/deployments/README.rst @@ -1,12 +1,21 @@ Rally Deployments ================= -Before starting cluster benchmarking, its connection parameters -should be saved in Rally database (deployment record). +Rally needs to be configured to use an OpenStack Cloud deployment before it +can benchmark the deployment. -If there is no cluster, rally also can create it. +To configure Rally to use an OpenStack Cloud deployment, you need create a +deployment configuration by supplying the endpoint and credentials, as follows: + +.. code-block:: + + rally deployment create --file --name my_cloud + + +If you don't have OpenStack deployments, Rally can deploy it for you. +For samples of various deployments take a look at samples from +**for_deploying_openstack_with_rally** directory. -There are examples of deployment configurations: existing.json ------------- @@ -18,6 +27,15 @@ existing-keystone-v3.json Register existing OpenStack cluster that uses Keystone v3. +existing-with-predefined-users.json +-------------------------------------- + +If you are using read-only backend in Keystone like LDAP, AD then +you need this sample. If you don't specify "users" rally will use already +existing users that you provide. + + + existing-with-given-endpoint.json --------------------------------- @@ -26,33 +44,3 @@ to explicitly set keystone management_url. Use this parameter if keystone fails to setup management_url correctly. For example, this parameter must be specified for FUEL cluster and has value "http://:35357/v2.0/" - -devstack-in-existing-servers.json ---------------------------------- - -Register existing DevStack cluster. - -devstack-in-lxc.json --------------------- - -Deploy DevStack cluster on LXC and register it by Rally. - -devstack-in-openstack.json --------------------------- - -Deploy DevStack cluster on OpenStack and register it by Rally. - -devstack-lxc-engine-in-existing-servers.json --------------------------------------------- - -See *devstack-lxc-engine-in-existing-servers.rst* for details - -fuel-ha.json ------------- - -Deploy High Availability FUEL cluster and register it by Rally. - -fuel-multinode.json -------------------- - -Deploy Multinode FUEL cluster and register it by Rally. diff --git a/samples/deployments/existing-with-predefined-users.json b/samples/deployments/existing-with-predefined-users.json new file mode 100644 index 00000000..f1002b5d --- /dev/null +++ b/samples/deployments/existing-with-predefined-users.json @@ -0,0 +1,23 @@ +{ + "type": "ExistingCloud", + "auth_url": "http://example.net:5000/v2.0/", + "region_name": "RegionOne", + "endpoint_type": "public", + "admin": { + "username": "admin", + "password": "pa55word", + "tenant_name": "demo" + }, + "users": [ + { + "username": "not_an_admin1", + "password": "password", + "tenant_name": "some_tenant" + }, + { + "username": "not_an_admin2", + "password": "password2", + "tenant_name": "some_tenant2" + } + ] +}