实验室环境系统(ADLES)的自动化部署

ADLES的Python项目详细描述


Latest version on PyPITravis CI build statusDependency StatusCode ClimateDocumentationDOI Reference

概述

实验室环境系统(ADles)的自动化部署

ADLES自动化虚拟化环境的确定性创建 在网络安全和信息技术(IT)教育方面。

该系统使教育工作者能够轻松地建立确定性和可移植性 课程环境,节省大量时间和精力, 提出了拥有先进的it知识的要求。

完整的文档可以在ReadTheDocs找到。

Publication describing the system.

入门

pip3 install adles
adles -h
adles --print-spec exercise
adles --print-spec infra
adles --list-examples
adles --print-example competition

用法

使用adles创建环境:

  • 阅读练习和基础设施规范及其示例。
  • 为您的平台编写基础架构规范。(目前,vmware vSphere是唯一受支持的平台)
  • 用您想要创建的环境编写一个练习规范。
  • 检查它的语法,运行主控阶段,进行更改,然后运行部署阶段。
adles -c my-competition.yaml
adles -m -s my-competition.yaml
adles -d -s my-competition.yaml

系统要求

python

  • 3.4+(推荐)
  • 2.7.6+(将来会被弃用)

adles将在python支持的任何平台上运行。测试日期:

  • Windows 10(周年纪念日和创建者)
  • ubuntu 14.04和16.04(包括windows上ubuntu上的bash)
  • centos 7

python包

有关特定版本,请参见requirements.txt

  • Pyvmomi
  • docopt
  • 皮亚姆
  • netaddr
  • 彩色日志
  • 设置工具(如果您是手动安装或开发)

平台

vmware vSphere

  • vCenter服务器:6.0+
  • ESXi:6.0+

贡献

我们绝对欢迎您的贡献!请参阅TODO.md以获取需要执行的操作的列表。 在提交pull请求之前,请确保遵循使用的一般样式和约定。 只需阅读代码一点,了解事情是如何完成的,并与之保持一致。

如果你对系统有任何疑问,请随时通过电子邮件或Twitter与我联系。 (电子邮件在init.py中,twitter句柄与github相同)。

目标和任务

ADLES的总体目标是创建一个易于使用和坚如磐石的系统,使教师 学生使用虚拟环境进行教学,使他们的工作自动化。

从长远来看,我希望看到开源存储库的创建,类似于 Hashicorp's Atlas和Docker's Hub,教育工作者可以在这里共享软件包 为改善全球网络教育做出贡献。

雷达上的主要内容(完整列表见TODO.md

  • vSphere的用户和组实现
  • 后期清理
  • 结果集合
  • 供应者
  • Utils和理想vSphere的自动化测试
  • 工作docker平台实现
  • 实现云平台接口,其中amazon aws或microsoft azure是最简单的选择

许可证

此项目是在apache许可2.0版下授权的。见 完整许可证文本的许可证,以及归属于 此项目使用来自的代码的外部项目。

项目历史

该系统最初是作为我在 爱达荷大学,2016年秋季。它最初设计用于Radicl实验室。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android上已连接音频输入设备的java列表   java是创建类的新对象还是使用静态方法?   Java:Shift/Rotate对象数组   Java Casting ArrayIterator<Object>   在java中返回布尔值时出错   无法确定文本文件读入程序(java)中的各种元素   Java Swing JToolBar   JAVAlang.IllegalStateException执行Ghost4J(Linux 32对64位)   jvm如何增加ubuntu系统的java堆化?   java CORS策略“AccessControlAllowOrigin”(Anguar 8和Servlet)   使用dagger 2的java视图依赖项注入   单元测试中RxJava的java模拟活动生命周期   arraylist中的Java打印字符串   java返回值显示为0.0。为什么会这样?   java是clientserver应用程序所必需的MVC吗?   ByteToMessageDecoder类中的java内存泄漏   java将大量文档写入firestore   GWT项目中的java TomcatMaven插件。两者之间的区别是什么:org。科德豪斯。魔咒和组织。阿帕奇。公猫maven插件   java swing:向JTree项添加自定义图形按钮