Skip to content

CESNET/mad_generator

 
 

Repository files navigation

MAD Generator

A standalone program that simulates cloud life and generates accounting records based on received arguments . The program is used to generate consistent data for functional and scaling tests.

Arguments

Run python mad.py --help to see arguments

--output-type {opennebulaxml,records}
--count COUNT                           number of events per object machine/storage/ip 

optional:
--start-time START_TIME                 first timestamp of simulation, format: YYYY-MM-DD
--max-objects MAX_OBJECTS               
--average-occupancy AVERAGE_OCCUPANCY   average_occupance*max_objects/100 is mean number of generated machines  
--records-per-file RECORDS_PER_FILE     records stored in one file
--cron-interval CRON_INTERVAL           number interval between 2 cron record generations
--users-count USERS_COUNT               number of different users
--groups-count GROUPS_COUNT             number of different groups 
--cloud-name CLOUD_NAME                 cloud name to be used in records
--mode {vm,network,storage}             records type

-f, --flood                             flood mode - all mode options are chosen
-d, --debug                             debug                                              

Example

python3 mad.py --output-type=opennebulaxml --count=5 --max-objects=10 --mode=vm -f

Results

OpenNebula records:

python3 mad.py --output-type=opennebulaxml output example

Virtual machine records:

python3 mad.py --output-type=records --mode=vm output example

Storage records:

python3 mad.py --output-type=records --mode=storage output example

Public IP records:

python3 mad.py --output-type=records --mode=network output example

Contributing

  1. Fork MAD generator
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%