Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This repo contains files useful for exercising RGW on a cluster.

This could be better generalized. Currently the assumptions are that
we have two client nodes and three rgw-client nodes.

    #rgws
    192.168.140.134	client-000
    192.168.136.91	client-001
    192.168.205.149	client-002

    #clients
    192.168.174.32	client-003
    192.168.202.103	client-004

The doad3 tool, originally written by Marcus Watts and edited by Eric
Ivancich, is necessary. Please get the version in the repo:

    https://github.com/ivancich/doad-fork.git

The doad3 tool must be built for the platform the clients (client-003,
client-004) are running on. The version in this repo was built on:

    Linux client-003 4.4.0-36-generic #55-Ubuntu SMP Thu Aug 11
    18:01:55 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Prior to running the test, a user is created "janedoe" and a swift
user is created "janedoe:swift". This can be done by running the
create-user.sh script on an appropriate node. (Note: remove-user.sh
also exixts.)

At that point the orchestrate.sh script can be run on the "jump
host". It will:

  a. copy necessary scripts, data files and executables to client-003
     and client-004,

  b. have them each create appropriate buckets, and

  c. run the doad3 executable on each multiple times in the background
     to perform the actual test

Here's what's actually run:

1. On each client, we run three instances of doad3, each targeting one
   of the three rgw clients, each using its own bucket.

2. The doad3 instances create and remove 100,000 objects using 10
   threads. The create and remove commands are randomized, the only
   guarantee being that an object is removed only after it's
   created. So there can theoretically be between 0 and 100,000
   objects in the bucket at any given time. The command sequencing is
   generated from Marcus Watts's rndrw.pl script.

3. So that's six instances of doad3, and each rgw client is targeted
   by two. This is the background traffic to create load for the
   following attempt to create the customer issue.

4. Each client runs one more instance of doad3 which repeatedly
   creates and removes the same object 100,000 times. Each of these
   clients uses the same bucket "bktff" (to hit the same bucket index
   node) but a different rgw client (client-000 and client-001 but not
   client-002). Each client manipulates its own unique object in a
   single thread ("flipflop_3" and "flipflop_4").

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages