Automated Deployment of Lab Environments System (ADLES)
Project description
Overview
Automated Deployment of Lab Environments System (ADLES)
The system is a proof of concept implementation of my thesis research as part of the requirements for a Master of Computer Science at the University of Idaho.
Getting started
pip3 install adles
adles -h
Read some of the examples, and try running a fews
Read the exercise specification at specifications/exercise-specification.yaml
Try writing your own! You can check it’s syntax using adles -c example.yaml
System Requirements
Client Software
Python: 2.7+, 3.4, 3.5, 3.6 (Reccomended)
Python Packages
See requirements.txt for specific versions
pyvmomi
docopt
pyyaml
netaddr
colorlog
setuptools (If you are installing manually or developing)
Virtualization Platforms
VMware vSphere
vSphere >= 6.0
ESXi >= 6.0
vSphere/ESXi 5.5 should work as well, but is untested.
Project Goals
Current Goals
Currently, I am focusing on implementing the following components:
Overall system
Interface module system
Specification injestion, parsing, and semantic checking
Master-creation phase
Deployment phase
Post-phase cleanups
User interface, logging, and basic result collection
Specifications
Exercise specification (The core spec that defines the exercise environment)
Package specification
Infrastructure specification
VMware vSphere Interface module
Documentation of API, system, and examples
Basic Unit and Functional tests
Packaging for PyPI
Future Goals
Interfaces
Docker (Good for simulating large environments, with low resource overhead and quick load times)
Hyper-V server (Free, good for schools that are heavily invested in the Microsoft ecosystem)
Vagrant (Enables interaction with VirtualBox, desktop Hyper-V, and VMware Workstation)
Xen (Rich introspection possibilities for monitoring extensions using the Xen API)
KVM (LibVMI provides rich introspecition possibilities for this as well)
Environment specification
Monitoring extensions
Resource extensions for testbeds (ICS/SCADA, Wireless, USB devices, car computers, etc.)
Lab connectors
Vagrantfile that builds a lightweight VM running the system
Dockerfile that builds a lightweight image running the system
Public repository of packages
More example tutorials
Improved documentation on how to make a package, how to setup a platform for system, etc.
License
This project is licensed under the Apache License, Version 2.0. See LICENSE for the full license text, and NOTICES for attributions to external projects that this project uses code from.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ADLES-0.7.17.tar.gz
.
File metadata
- Download URL: ADLES-0.7.17.tar.gz
- Upload date:
- Size: 54.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8fca36bfc548dc567e155f217aede96b3f9060efa0fa5830203f8b87915973d4 |
|
MD5 | 2073d446df7ec49bcc3fafd49a13c4b3 |
|
BLAKE2b-256 | 6f55187bed09516381aa16af90b2b56c34b4515145e9e16e22977f98d83ff581 |