Automated Deployment of Lab Environments System
Project description
Overview
Automated Deployment of Lab Environments System (ADLES)
The system is a proof of concept implementation of my thesis research for a Master of Computer Science at the University of Idaho.
Getting started
pip3 install adles
adles -h
Clone the GitHub repo, poke through the examples folder, and try running a few of them
Read the exercise specification at specifications/exercise-specification.yaml
Try writing your own, then run the syntax checker on it using adles -c example.yaml
System Requirements
Client Software
Python: 2.7, 3.3, 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)
Virtualization Platforms
VMware vSphere
vSphere >= 6.0
ESXi >= 6.0 (May work with 5.5, your mileage may vary)
Project Goals
Current Goals
In order to graduate on time, 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
Vagrant image with a pre-configured VM running the system
Public repository of packages
More example packages
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.8.tar.gz
.
File metadata
- Download URL: ADLES-0.7.8.tar.gz
- Upload date:
- Size: 51.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 03701e9dfcb674ff437b386ca6f0cc86a2435349794053032e0b741ec5732217 |
|
MD5 | 8d3078d0657314a0a2f0dd23cd31af4d |
|
BLAKE2b-256 | a45ecc497a3953d550871f21b85934b379d0c05f4958c9648f20daa40ef27237 |