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.
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
python3 mad.py --output-type=opennebulaxml --count=5 --max-objects=10 --mode=vm -f
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
- Fork MAD generator
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create a new Pull Request