仿OpenStack开发云计算管理软件

使用Python语言开发一套类似OpenStack的云计算管理平台LouCloud,具备基本的用户,服务器,镜像与 虚拟机管理功能,学习IaaS,虚拟化,Libvirt API,Flask Web开发等知识。课程随到随学,加入即可获得6周有问必答及1个月会员服务,完成所有实验并公开实验报告可获得课程证书。

课程购买有疑问?

 
 
 
 
 
 
 

(0/6)

1 门课程,6 个实验

专属环境,无限延时

课程难题,有问必答

¥199.00
年会员8折¥159.2)
立即购买

课程服务

课程随到随学,加入即可获得6周有问必答及1个月会员服务,完成所有实验并公开实验报告可获得课程证书。

加入课程获取服务:

  1. 1个月实验楼VIP会员服务,价值49元
  2. 6周教师有问必答服务,24小时内回复您遇到的任何问题
  3. 公开实验报告并分享到微博即可获得教师点评
  4. 完成所有实验并公开实验报告可获得课程证书

服务起始日期为购买课程日期。

课程介绍

课程目的是协助你完成一个完整的产品原型。

你将使用Python语言开发一套类似OpenStack的云计算管理平台LouCloud,具备基本的用户,服务器,镜像与虚拟机管理功能。学习IaaS,虚拟化,数据库,Libvirt API,Flask Web开发等知识。

加入课程后即可开始学习,推荐学习周期6周,每周需要至少8个小时按照文档进行实验以及更多技术资料阅读的时间,遇到问题可在问答中与教师交流,分享实验报告到微博可以获得教师点评,优秀报告官方微博转发推荐。

学习本课需要你已经具备Python及Flask Web框架开发的基本技能,推荐先学课程:

课程知识点

  • 操作系统:Linux基本操作
  • 编程语言:Python语言开发
  • 开发框架:Flask Web框架,MVC开发模式
  • 虚拟化技术: KVM/QEMU,Libvirt API接口开发
  • 云计算技术:基础设施即服务(IaaS)基本概念
  • 数据库:MYSQL数据库设计及SQLAlchemy接口开发
  • 开发流程:Git基本操作及代码库使用
  • 安装部署:virtualenv,apache,wsgi等
  • 前端开发:Bootstrap 3.0,HTML,Javascript

课程大纲

第一周:熟悉开发环境

实验内容:

  • 云平台功能模块分析
  • 云平台架构设计
  • Flask开发环境搭建
  • Flask可运行的代码框架

实验目标:

  • 提交LouCloud v0.1:简单的Flask Web应用

第二周:虚拟化与云计算技术

实验内容:

  • 虚拟化KVM/QEMU技术学习
  • Libvirt API接口学习
  • 虚拟机管理模块开发
  • 云计算(IaaS)技术及相关模块

实验目标:

  • 提交LouCloud v0.2:具备服务器及虚拟机管理功能

第三周:数据库设计与实现

实验内容:

  • 数据库表格设计
  • SQLAlchemy对象实现
  • 数据库操作测试

实验目标:

  • 提交LouCloud v0.3:具备完整的数据库层的实现

第四周:业务逻辑实现

实验内容:

  • 用户管理模块开发
  • 权限管理模块开发
  • 服务器,虚拟机及镜像管理模块
  • 配置模块开发

实验目标:

  • 提交LouCloud v0.4:具备核心模块的LouCloud

第五周:组装与扩展

实验内容:

  • 模块逻辑关联与梳理
  • 扩展1:Web桌面连接方式
  • 扩展2:多服务器资源管理

实验目标:

  • 提交LouCloud v0.5:可运行的私有云

第六周:部署及测试

实验内容:

  • 单元测试开发
  • Apache部署方式
  • 初始化与配置脚本

实验目标:

  • 提交LouCloud v0.6:可以部署到服务器上的云平台

仿OpenStack开发云计算管理软件的更多相关文章

  1. 基于GTK+3 开发远程控制管理软件(C语言实现)系列 一 开篇

    近期趁公司没项目来,想学习一下C和GTK+3 ,顺道再学习一下Linux下有关网络编程方面的知识. 一.学习知识: 1.C基本语法 2.GTK+3 API学习 GUI相关知识学习 3.Glade使用及 ...

  2. 用勤哲excel服务器开发旅行社管理软件

    做这个旅行社管理软件之前,旅行社给我的印象就是“拉客”与“接客”,业务模式应该比较简单.但做起这样一个旅行社管理软件,才发现麻雀虽小.五脏俱全,一个旅行社的运作,牵扯到的方方面面远远超出自己之前的理解 ...

  3. Android实战开发租赁管理软件(适配UI,数据的存储,多线程下载)课程分享

    亲爱的网友,我这里有套课程想和大家分享,假设对这个课程有兴趣的,能够加我的QQ2059055336和我联系. 课程内容简单介绍 我们软件是基于移动设备的.所以我们必定的选择了安卓作为我们的开发工具.课 ...

  4. 基于GTK+3 开发远程控制管理软件(C语言实现)系列三 Windows7开发环境搭建

    一.介绍与准备 考虑到目标客户端基本都是windows客户端,所以此次开发环境将搭建在windows7下,相关开发工具有Msys2 和 Eclipse For C/C++ Msys2 是msys的升级 ...

  5. 基于GTK+3 开发远程控制管理软件(C语言实现)系列二 Centos7下开发环境搭建

    一.安装gcc gcc-c++ make等编译工具 yum install gcc gcc-c++ kernel-devel 这一步,其实可以不用做,你在安装Centos7的时候,如果选择开发模式安装 ...

  6. 《Linux就该这么学》自学笔记_ch22_使用openstack部署云计算服务环境

    <Linux就该这么学>自学笔记_ch22_使用openstackb部署云计算服务环境 文章主要内容: 了解云计算 Openstack项目 服务模块组件详解 安装Openstack软件 使 ...

  7. 使用openstack部署云计算服务环境

    环境: 系统       硬盘 IP hostname redhat 7 sda 20G 192.168.0.70 openstack.com 64位 sdb 20G 配置网卡 [root@opens ...

  8. [转]3天搞定的小型B/S内部管理类软件定制开发项目【软件开发实战10步骤详解】

    本文转自:http://www.cnblogs.com/jirigala/archive/2010/10/07/1845275.html 2010-10-07 21:39 by 通用C#系统架构, 5 ...

  9. macOS 下安装SDKMAN 软件开发工具包管理器

    SDKMAN 软件开发工具包管理器的安装非常简单,只需要打开终端,执行: $ curl -s "https://get.sdkman.io" | bash 就OK了,输出类似如下: ...

随机推荐

  1. 网上的一个helpdesk流程,将来备用

  2. java之路径

    在学习java的过程中经常遇见关于路径的问题:到底是使用绝对路径还是相对路径? 个人推荐使用相对路径,如果是使用绝对路径,到后期项目发布的时候会出现许多问题. 那么相对路径怎么用来: 一. Syste ...

  3. Python之路:Python 基础(三)-文件操作

    操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开文件 文件句柄 = file('文件路径', '模式') # 还有一种方法open 例1.创建文件  f = file('myfile. ...

  4. ASP.NET jQuery 随笔 从DropDownList获取选择的text和value值

    jQuery来获取DropDownList的Text/Value属性值,代码如下 <%@ Page Language="C#" AutoEventWireup="t ...

  5. 一个i++和++i导致的严重的错误

    当我曾经在写一个strlen的实现时,用递归写出了如下的代码: int strlen(const char *s) { if(*s=='\0') ; else ; } 程序一运行就崩溃了,why!都是 ...

  6. unix ls命令

    [语法]: ls  [-RadCxmlnogrtucpFbqisf1]   [文件夹或文件......] [说明]: ls 命令列出指定文件夹下的文件,缺省文件夹为当前文件夹 ./,缺省输出顺序为纵向 ...

  7. for循环语句之兔子生崽

    有一对幼兔,幼兔经过一个月长为小兔,小兔经过一个月长为大兔并且生下一对幼兔,而且大兔每月还会生下一对幼兔,问N个月后有多少对兔子 Console.WriteLine("请输入经过了几个月:& ...

  8. 修改linux多系统启动顺序

    Ubuntu和XP双系统grub2默认启动项设置为XP 装了双系统后,在开机时总会有想让一个系统默认启动的时候,一般安装完Ubuntu和XP双系统后,开机时默认的是启动Ubuntu系统,但是当想让XP ...

  9. UIViewController XIB/NIB加载过程

    UIViewController中关于nib初始化的函数 - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBu ...

  10. BZOJ 3040: 最短路(road) ( 最短路 )

    本来想学一下配对堆的...结果学着学着就偏了... 之前 kpm 写过这道题 , 前面的边不理它都能 AC .. 我也懒得去写前面的加边了... 用 C++ pb_ds 库里的 pairing_hea ...