From 5dfda156e39693870dcf6c6af89b317a6d57a1d2 Mon Sep 17 00:00:00 2001 From: Andrey Kurilin Date: Wed, 20 Jun 2018 16:11:29 +0300 Subject: [PATCH] Prepare to Rally 1.0.0 release - Modify README - Add CHANGELOG file Change-Id: I8ee5cee95278e0eb8a6462a30426cbc43d1ac9d4 --- CHANGELOG.rst | 66 ++++++++++++++++++++++++++++ README.rst | 53 +++++++++++++--------- doc/release_notes/archive/v1.0.0.rst | 19 ++++++++ doc/release_notes/latest.rst | 2 +- 4 files changed, 119 insertions(+), 21 deletions(-) create mode 100644 CHANGELOG.rst create mode 100644 doc/release_notes/archive/v1.0.0.rst diff --git a/CHANGELOG.rst b/CHANGELOG.rst new file mode 100644 index 0000000000..d8dd8577a3 --- /dev/null +++ b/CHANGELOG.rst @@ -0,0 +1,66 @@ +========= +Changelog +========= + +.. Changelogs are for humans, not machines. The end users of Rally project are + human beings who care about what's is changing, why and how it affects them. + Please leave these notes as much as possible human oriented. + +.. Each release can use the next sections: + + - **Added** for new features. + - **Changed** for changes in existing functionality. + - **Deprecated** for soon-to-be removed features/plugins. + - **Removed** for now removed features/plugins. + - **Fixed** for any bug fixes. + +.. Release notes for existing releases are MUTABLE! If there is something that + was missed or can be improved, feel free to change it! + +[1.0.0] - 2018-06-20 +-------------------- + +It finally happened. We are happy to inform you that OpenStack plugins has a +single home - https://github.com/openstack/rally-openstack . +All in-tree plugins are removed now and framework part become more lightweight. + +What does it mean for you?! +~~~~~~~~~~~~~~~~~~~~~~~~~~~ +If you are interested only in OpenStack plugins, just change the package you +are installing from ``rally`` to ``rally-openstack``. If you have custom +OpenStack plugins which inherits from upstream, change python imports from +``rally.plugins.openstack`` to ``rally_openstack``. That is all. + +If you are interested not only in OpenStack, you can start using your favourite +tool for various platforms and systems. Here you can find our first attempts +to seize the world - https://github.com/xrally/xrally-docker and +https://github.com/xrally/xrally-kubernetes. + +Changed +~~~~~~~ + +Since OpenStack plugins were moved to the separate repository, the new release +notes should become light as well, so there is no need in separate pages for +each release. All release notes will be aggregated in +`a single file CHANGELOG.rst +`_. + +Also, it is sad to mention, but due to OpenStack policies we need to stop +duplicating release notes at ``git tag message``. At least for now. + +Removed +~~~~~~~ + +* All OpenStack related plugins. + +Fixed +~~~~~ + +* Validation of existing platforms in Python 3 environment. +* Support of testr for verifiers. + +[0.0.0] - [0.12.1] +------------------ + +Release notes for Rally ``0.0.0``-``0.12.1`` are available at +https://github.com/openstack/rally/tree/master/doc/release_notes/archive diff --git a/README.rst b/README.rst index 86344ebb9f..928e378147 100644 --- a/README.rst +++ b/README.rst @@ -2,6 +2,9 @@ Rally ===== +Rally is tool & framework that allows one to write simple plugins and combine +them in complex tests scenarios that allows to perform all kinds of testing! + Team and repository tags ======================== @@ -28,14 +31,9 @@ Team and repository tags What is Rally ============= -Rally is a Benchmark-as-a-Service project for OpenStack. - -Rally is intended to provide the community with a benchmarking tool that is capable of performing **specific**, **complicated** and **reproducible** test cases on **real deployment** scenarios. - -If you are here, you are probably familiar with OpenStack and you also know that it's a really huge ecosystem of cooperative services. When something fails, performs slowly or doesn't scale, it's really hard to answer different questions on "what", "why" and "where" has happened. Another reason why you could be here is that you would like to build an OpenStack CI/CD system that will allow you to improve SLA, performance and stability of OpenStack continuously. - -The OpenStack QA team mostly works on CI/CD that ensures that new patches don't break some specific single node installation of OpenStack. On the other hand it's clear that such CI/CD is only an indication and does not cover all cases (e.g. if a cloud works well on a single node installation it doesn't mean that it will continue to do so on a 1k servers installation under high load as well). Rally aims to fix this and help us to answer the question "How does OpenStack work at scale?". To make it possible, we are going to automate and unify all steps that are required for benchmarking OpenStack at scale: multi-node OS deployment, verification, benchmarking & profiling. - +Rally is intended to provide a testing framework that is +capable to perform **specific**, **complicated** and **reproducible** +test cases on **real deployment** scenarios. **Rally** workflow can be visualized by the following diagram: @@ -53,18 +51,30 @@ Who Is Using Rally Documentation ============= -`Rally documentation on ReadTheDocs `_ is a perfect place to start learning about Rally. It provides you with an **easy** and **illustrative** guidance through this benchmarking tool. For example, check out the `Rally step-by-step tutorial `_ that explains, in a series of lessons, how to explore the power of Rally in benchmarking your OpenStack clouds. +`Rally documentation on ReadTheDocs `_ +is a perfect place to start learning about Rally. It provides you with an +**easy** and **illustrative** guidance through this benchmarking tool. +For example, check out the `Rally step-by-step tutorial +`_ that +explains, in a series of lessons, how to explore the power of Rally in +benchmarking your OpenStack clouds. Architecture ------------ In terms of software architecture, Rally is built of 4 main components: -1. **Server Providers** - provide servers (virtual servers), with ssh access, in one L3 network. -2. **Deploy Engines** - deploy OpenStack cloud on servers that are presented by **Server Providers** -3. **Verification** - component that runs tempest (or another specific set of tests) against a deployed cloud, collects results & presents them in human readable form. -4. **Benchmark engine** - allows to write parameterized benchmark scenarios & run them against the cloud. +1. **Environment** - one of key component in Rally. It manages and stores + information about tested platforms. Env manager is using platform plugins + to: create, delete, cleanup, check health, obtain information about + platforms. +2. **Task** component is responsible for executing tests defined in + task specs, persisting and reporting results. +3. **Verification** component allows to wrap subunit-based testing tools and + provide complete tool on top of them with allow to do pre configuration, + post cleanup as well process and persist results to Rally DB for future use + like reporting and results comparing. Use Cases --------- @@ -77,26 +87,29 @@ There are 3 major high level Rally Use Cases: Typical cases where Rally aims to help are: -- Automate measuring & profiling focused on how new code changes affect the OS performance; +- Automate measuring & profiling focused on how new code changes affect the + OpenStack performance; - Using Rally profiler to detect scaling & performance issues; - Investigate how different deployments affect the OS performance: - - Find the set of suitable OpenStack deployment architectures; - - Create deployment specifications for different loads (amount of controllers, swift nodes, etc.); + + - Find the set of suitable OpenStack deployment architectures; + - Create deployment specifications for different loads (amount of + controllers, swift nodes, etc.); - Automate the search for hardware best suited for particular OpenStack cloud; - Automate the production cloud specification generation: - - Determine terminal loads for basic cloud operations: VM start & stop, Block Device create/destroy & various OpenStack API methods; - - Check performance of basic cloud operations in case of different loads. + - Determine terminal loads for basic cloud operations: VM start & stop, + Block Device create/destroy & various OpenStack API methods; + - Check performance of basic cloud operations in case of different loads. Links ----------------------- +----- * Free software: Apache license * Documentation: https://rally.readthedocs.org/en/latest/ * Source: https://git.openstack.org/cgit/openstack/rally * Bugs: https://bugs.launchpad.net/rally * Step-by-step tutorial: https://rally.readthedocs.io/en/latest/quick_start/tutorial.html -* RoadMap: https://docs.google.com/a/mirantis.com/spreadsheets/d/16DXpfbqvlzMFaqaXAcJsBzzpowb_XpymaK2aFY2gA2g * Launchpad page: https://launchpad.net/rally * Gitter chat: https://gitter.im/rally-dev/Lobby * Trello board: https://trello.com/b/DoD8aeZy/rally diff --git a/doc/release_notes/archive/v1.0.0.rst b/doc/release_notes/archive/v1.0.0.rst new file mode 100644 index 0000000000..06cc9fc45c --- /dev/null +++ b/doc/release_notes/archive/v1.0.0.rst @@ -0,0 +1,19 @@ +============ +Rally v1.0.0 +============ + ++------------------+-----------------------+ +| Release date | **06/20/2018** | ++------------------+-----------------------+ + +.. warning:: There is no in-tree OpenStack plugins anymore. They moved to + `the separate project `_. + +Starting from the current release all notes are written in a single file +`CHANGELOG.rst `_ +Follow it for more details. + +Thanks +~~~~~~ + + 2 Everybody! diff --git a/doc/release_notes/latest.rst b/doc/release_notes/latest.rst index 0e8c8646cc..5231fd3af5 120000 --- a/doc/release_notes/latest.rst +++ b/doc/release_notes/latest.rst @@ -1 +1 @@ -archive/v0.12.1.rst \ No newline at end of file +archive/v1.0.0.rst \ No newline at end of file