Rally certification at Scale
Boris Pavlovic & Jesse Keating
Agenda
● Who/Why/Where
● Rally demo
● Cloud certification
● Current progress
● Future efforts
● Q/A
OpenStack testing before Rally
What is Rally?
KISS4ever
★ Simple to get
★ Simple to understand
★ Simple to configure
★ Simple to work
★ Simple to extend
★ Simple to contribute
Rally: Workflow
Rally: 0-60 under 3
● Debian
apt-get install rally (Debian only)
● Source
curl https://raw.githubusercontent.com/openstack/rally/master/install_rally.sh | bash
● Docker
docker pull rallyforge/rally && docker run rallyforge/rally
● Murano
https://github.com/openstack/murano-apps
● Simple way
source openrc && rally deployment create --from-env --name your_cloud
● Hardcore way
{
"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": [...]
}
rally deployment create --file that_file_above.json --name your_cloud
s
Rally: 0-60 under 3
Rally: 0-60 under 3
● Run the task
rally task start ./samples/nova/boot-bounce-delete.json
● Generate reports
rally task report --out report.html
Rally task format
NovaServers.boot_and_delete_server:
-
args:
flavor:
name: "m1.tiny"
image:
name: “.*ubunut.*”
runner:
type: "constant"
times: 3
concurrency: 3
context:
users:
tenants: 3
users_per_tenant: 2
sla:
failure_rate:
max: 0
Rally in nutshell - demo
Rally
DEMO
Rally as a cloud cert tool
Blue Box Cloud use of Rally
● New Cloud Deployment
o SLA validation
o Functionality of whole system, including non-openstack
● New deployment tool releases
o Regression protection
o New feature validation
● New feature / configuration exploration
o Does it work?
o Does it impact performance or SLA?
Cloud certification pyramid
Make it even simpler?
Define certification task
● Create certification WG
o Specify set of arguments that accept task
 amount of users/tenants/controllers/computes
 type of cloud workloads
 quality of hardware
 …
o Specify set of parameterized tests in tasks
 scenarios
 loads
 slas
Future steps
● Involve
o more core reviewers
o more operators
o more companies
Who is using Rally?
Thanks http://stackalytics.com for graphs
All time
● > 30 companies
● > 140 devs
● ~ 1200 commits
● ~ 2 years of dev
Kilo
● 25 companies
● > 80 devs
● > 380 commits
Q/A
Boris Pavlovic - Mirantis:
boris[at]pavlovic.me
@PavlovicBoris
https://github.com/boris-42
Jesse Keating - BlueBox:
jlk[at]bluebox.net
@iamjkeating
https://github.com/j2sol

Using Rally for OpenStack certification at Scale

  • 1.
    Rally certification atScale Boris Pavlovic & Jesse Keating
  • 2.
    Agenda ● Who/Why/Where ● Rallydemo ● Cloud certification ● Current progress ● Future efforts ● Q/A
  • 3.
  • 4.
    What is Rally? KISS4ever ★Simple to get ★ Simple to understand ★ Simple to configure ★ Simple to work ★ Simple to extend ★ Simple to contribute
  • 5.
  • 6.
    Rally: 0-60 under3 ● Debian apt-get install rally (Debian only) ● Source curl https://raw.githubusercontent.com/openstack/rally/master/install_rally.sh | bash ● Docker docker pull rallyforge/rally && docker run rallyforge/rally ● Murano https://github.com/openstack/murano-apps
  • 7.
    ● Simple way sourceopenrc && rally deployment create --from-env --name your_cloud ● Hardcore way { "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": [...] } rally deployment create --file that_file_above.json --name your_cloud s Rally: 0-60 under 3
  • 8.
    Rally: 0-60 under3 ● Run the task rally task start ./samples/nova/boot-bounce-delete.json ● Generate reports rally task report --out report.html
  • 10.
    Rally task format NovaServers.boot_and_delete_server: - args: flavor: name:"m1.tiny" image: name: “.*ubunut.*” runner: type: "constant" times: 3 concurrency: 3 context: users: tenants: 3 users_per_tenant: 2 sla: failure_rate: max: 0
  • 11.
    Rally in nutshell- demo Rally DEMO
  • 12.
    Rally as acloud cert tool Blue Box Cloud use of Rally ● New Cloud Deployment o SLA validation o Functionality of whole system, including non-openstack ● New deployment tool releases o Regression protection o New feature validation ● New feature / configuration exploration o Does it work? o Does it impact performance or SLA?
  • 13.
  • 14.
    Make it evensimpler?
  • 15.
    Define certification task ●Create certification WG o Specify set of arguments that accept task  amount of users/tenants/controllers/computes  type of cloud workloads  quality of hardware  … o Specify set of parameterized tests in tasks  scenarios  loads  slas
  • 16.
    Future steps ● Involve omore core reviewers o more operators o more companies
  • 17.
    Who is usingRally? Thanks http://stackalytics.com for graphs All time ● > 30 companies ● > 140 devs ● ~ 1200 commits ● ~ 2 years of dev Kilo ● 25 companies ● > 80 devs ● > 380 commits
  • 18.
    Q/A Boris Pavlovic -Mirantis: boris[at]pavlovic.me @PavlovicBoris https://github.com/boris-42 Jesse Keating - BlueBox: jlk[at]bluebox.net @iamjkeating https://github.com/j2sol

Editor's Notes

  • #2 Let’s get started! First of all thank you for coming today! For those of you who don’t know me my name is Boris Pavlovic. I am working for Mirantis and I am Rally project technical lead. Here is my friend Jesse Keating DevOps from BlueBox and he is responsible for running OpenStack Clouds!
  • #3 Today we are going to discuss what is OpenStack Cloud Certification why it is important for you and how to automate this process with Rally. Before starting we should get familiar with Rally so we are going to provide some details and make a short Rally live demo. After that we are going to speak more about certification pyramid current progress and future steps. Feel free to ask questions in any time, just don’t forget to raise your hands before.
  • #4 Real life OpenStack testing e.g. functional, scalability load testing was unreasonable hard task before we started working on Rally. This should be very simple operation that shows the simple results like does it works and how it works in real life. What is Rally and how it resolve this problem.
  • #5 Rally is simple tool that does the 5 things: Automates verification of cloud based on Tempest Provides own powerful framework for writing: workloads, slas, load generators and context Provides simple CLI to benchmark and work with results Stores all data to persistent storage & generates nice graphs Rally is as well tool that works out of box, doesn’t need configuration, complicated installations or other tools to run & simple does it’s work.
  • #6 Rally workload is quite simple work less do more. And make your Boss instantly very happy=)
  • #7 Rally is all about simplicity. To get Rally installed and properly configured there are many ways, all are pretty simple: For Debian/Ubuntu you can just use apt-get If you would like to install from source you can use automated installation script Or if you prefer to keep your system clean there are automatically updated Docker images: all releases + master docker image As well there is pretty new way to get Rally in case if you like Murano.
  • #8 After successful installation you should provide credentials of cloud user. If you provide only admin Rally will create temporary users to generate load. If you provide users credentials it will use them. (which is actually crucial for openstack deployment that use )
  • #9 No you can take a look at some samples that are going together with Rally repo and run them without any changes. After that with simple command you can generate HTML reports that show in details performance analyze
  • #10 I mean it’s obvious that you worked hard when you present such graphs!=)
  • #11 Rally task format is quite simple. You
  • #12 Register cloud (rally deployment create) Take a task from samples and copy to local directory Display content of sample Run task and explain results Run one more time and show list of results Explains default task/deployment uuid Generate reports and explain them
  • #13 Blue Box uses rally for a few reasons New cloud deployments, ensure it meets our SLA for functionality and performance. Test the things outside of pure openstack control, backend infra configuration. New deployment tool releases, make sure we meet previous expectations, validate new features we’ll advertise. See if we’ve improved things beyond our baseline. Testing new config changes, in OpenStack and outside.
  • #14 The idea of Rally Certification is to check that your cloud is safe for production and show you the performance analyze under expected load. Opposite to DefCore that have major idea to checking can somebody call their cloud OpenStack or not. I believe that this pyramid should be obvious for everybody. First of all everything should work as expect, this is quite easy to check and you can use rally benchmarks without load or tempest to check this. The second step is to check that we have expected performance like it doesn’t take more than 5 minute to boot VM. The next level is to check that we have expected performance under expected load. Like we should check that it doesn’t take more than 5 minute to boot single VM if we are booting 50 VMs in parallel. The next level is even more complicated checking that we have the acceptable performance if we are booting 50 new VMs in parallel when we have thousands. And the very last thing that we should check that everything will work as expected in case of servers/services/network failures. For now Rally can be used for first 4 layer. HA testing is coming in Liberty.
  • #15 Tasks has very simple format and it’s very easy to use them for writing It is not so simple to specify large task with thousands of tests with proper load that depends on hardware, networks, storage, deployment architecture amount of users/tenants and types of workloads. Actually this work can’t be done by single person or company it should involve a lot of work. That’s why I think there is only one way, community way to create this single task that simplifies everybody's life.
  • #16 So what we need
  • #18 Some historical data. Rally project started since Havana. ~2 years ago. About 140 developers from 30 companies contribute to it so far. And finally in Kilo it become official OpenStack project. Please join us in making OpenStack better and simpler to test and ceritfy.