基于XCP和puppet的虚拟化云平台建设 演讲人

Содержание

Слайд 2

开发、关联、智能、泛在:数字图书馆

主要概要:

开发、关联、智能、泛在:数字图书馆 主要概要:

Слайд 3

开发、关联、智能、泛在:数字图书馆

0.服务器虚拟化

1959年,克里斯托弗在报告《大型高速计算机中的时间共享》第一次提到虚拟化技术概念。
1965年,IBM公司第一次商业上实现了虚拟化。
1999年,VMware在X86平台上实现了虚拟化,并发布了VMware Workstation。
2001年,VMware发布了VMware ESX server进入服务器虚拟化市场。

1990年,由Keir和Ian Pratt等人在剑桥大学成立了Xenoserver研究项目。
2002年,Xen Hypervisor开源化。
2006年,Citrix公司获取Xen并发布了XenServer。
2009年,Xen.org发布Xen Cloud Platform(XCP)。

开发、关联、智能、泛在:数字图书馆 0.服务器虚拟化 1959年,克里斯托弗在报告《大型高速计算机中的时间共享》第一次提到虚拟化技术概念。 1965年,IBM公司第一次商业上实现了虚拟化。 1999年,VMware在X86平台上实现了虚拟化,并发布了VMware Workstation。 2001年,VMware发布了VMware ESX server进入服务器虚拟化市场。 1990年,由Keir和Ian Pratt等人在剑桥大学成立了Xenoserver研究项目。 2002年,Xen

Слайд 4

开发、关联、智能、泛在:数字图书馆

虚拟化带来了什么?

开发、关联、智能、泛在:数字图书馆 虚拟化带来了什么?

Слайд 5

开发、关联、智能、泛在:数字图书馆

商用服务器虚拟化之三国争霸

60%

25%

6%

开发、关联、智能、泛在:数字图书馆 商用服务器虚拟化之三国争霸 60% 25% 6%

Слайд 6

开发、关联、智能、泛在:数字图书馆

为什么需要开源服务器虚拟化?

开发、关联、智能、泛在:数字图书馆 为什么需要开源服务器虚拟化?

Слайд 7

开发、关联、智能、泛在:数字图书馆

开源的服务器自动化部署和配置管理工具

BISU OVCP
开源虚拟化云平台

Openfiler

puppet

XCP

基于Xen开源虚拟化平台
商业的XenServer开源实现

开源的存储管理平台
可用于iscsi和NAS

OVCP虚拟化云平台解决方案

OVCP:OpenSource Virtualization Cloud Platfrom

开发、关联、智能、泛在:数字图书馆 开源的服务器自动化部署和配置管理工具 BISU OVCP 开源虚拟化云平台 Openfiler puppet XCP 基于Xen开源虚拟化平台 商业的XenServer开源实现 开源的存储管理平台 可用于iscsi和NAS

Слайд 8

开发、关联、智能、泛在:数字图书馆

1.XCP介绍

Xen Cloud Platform (简称XCP)
开源的企业级服务器虚拟化平台
源自Citrix XenServer, 由Xen.org维护
遵循GPL v2 协议
具有Resource Pool和Live Migration等高级特性

开发、关联、智能、泛在:数字图书馆 1.XCP介绍 Xen Cloud Platform (简称XCP) 开源的企业级服务器虚拟化平台 源自Citrix XenServer, 由Xen.org维护 遵循GPL v2 协议 具有Resource Pool和Live Migration等高级特性

Слайд 9

开发、关联、智能、泛在:数字图书馆

Xen的基本概念

Control Domain :Dom0
Dom0 kernel with drivers
Xen Management Toolstack
Trusted Computing Base
Guest Domains
Your apps
E.g.

开发、关联、智能、泛在:数字图书馆 Xen的基本概念 Control Domain :Dom0 Dom0 kernel with drivers Xen Management Toolstack
your cloud management stack
Driver/Stub/Service Domain(s)
A “driver, device model or control service in a box”
De-privileged and isolated
Lifetime: start, stop, kill

Слайд 10

开发、关联、智能、泛在:数字图书馆

XCP云计算中应用

开发、关联、智能、泛在:数字图书馆 XCP云计算中应用

Слайд 11

开发、关联、智能、泛在:数字图书馆

XCP vs Ctrix XenServer

开发、关联、智能、泛在:数字图书馆 XCP vs Ctrix XenServer

Слайд 12

开发、关联、智能、泛在:数字图书馆

XCP 历史版本比较

开发、关联、智能、泛在:数字图书馆 XCP 历史版本比较

Слайд 13

开发、关联、智能、泛在:数字图书馆

XCP源码及源程序

开发、关联、智能、泛在:数字图书馆 XCP源码及源程序

Слайд 14

开发、关联、智能、泛在:数字图书馆

2.puppet介绍

什么是puppet
数据中心自动化配置和管理软件
可用于管理Linux、Unix、Mac和Windows
遵循GPL v2 协议* (2.7.0), 基于ruby 语言开发
简单易懂的语言表达系统,用库实现配置
基于C/S架构,配置客户端和服务端,也可以独立运行
puppet

开发、关联、智能、泛在:数字图书馆 2.puppet介绍 什么是puppet 数据中心自动化配置和管理软件 可用于管理Linux、Unix、Mac和Windows 遵循GPL v2 协议* (2.7.0), 基于ruby 语言开发 简单易懂的语言表达系统,用库实现配置 基于C/S架构,配置客户端和服务端,也可以独立运行 puppet 对于系统管理员是抽象,只依赖于ruby与facter. *注:2.7.0以后遵循Apache2.0协议
对于系统管理员是抽象,只依赖于ruby与facter.

*注:2.7.0以后遵循Apache2.0协议

Слайд 15

开发、关联、智能、泛在:数字图书馆

puppet整体架构

开发、关联、智能、泛在:数字图书馆 puppet整体架构

Слайд 16

开发、关联、智能、泛在:数字图书馆

puppet master 目录结构

开发、关联、智能、泛在:数字图书馆 puppet master 目录结构

Слайд 17

开发、关联、智能、泛在:数字图书馆

puppet的语法

puppet使用ruby编写,语法上也与ruby类似
puppet把需要管理的内容抽象成资源,每种资源有不同的属性,puppet语言就是用来描述这些资源的属性和资源之间的关系。

e.g. 创建文件test

e.g. 安装gcc和make

开发、关联、智能、泛在:数字图书馆 puppet的语法 puppet使用ruby编写,语法上也与ruby类似 puppet把需要管理的内容抽象成资源,每种资源有不同的属性,puppet语言就是用来描述这些资源的属性和资源之间的关系。 e.g. 创建文件test e.g. 安装gcc和make

Слайд 18

开发、关联、智能、泛在:数字图书馆

puppet基于web管理工具Dashboard

开发、关联、智能、泛在:数字图书馆 puppet基于web管理工具Dashboard

Слайд 19

开发、关联、智能、泛在:数字图书馆

puppet开源版和企业版对比

开发、关联、智能、泛在:数字图书馆 puppet开源版和企业版对比

Слайд 20

开发、关联、智能、泛在:数字图书馆

开源的服务器自动化配置和管理工具

BISU OVCP
开源虚拟化云平台

Openfiler

puppet

XCP

基于Xen开源虚拟化平台
XenServer开源版本

开源的存储管理平台
SAN和NAS开源实现

遵循GPLv2协议开源
可升级为商业版本
产品成熟,文档齐全

3.OVCP开源虚拟化云平台

OVCP (OpenSource Virtualization Cloud Platfrom)
完全基于开源软件建设的虚拟化云平台。

开发、关联、智能、泛在:数字图书馆 开源的服务器自动化配置和管理工具 BISU OVCP 开源虚拟化云平台 Openfiler puppet XCP 基于Xen开源虚拟化平台 XenServer开源版本 开源的存储管理平台 SAN和NAS开源实现

Слайд 21

开发、关联、智能、泛在:数字图书馆

3.1 OVCP虚拟化云平台整体结构图

开发、关联、智能、泛在:数字图书馆 3.1 OVCP虚拟化云平台整体结构图

Слайд 22

开发、关联、智能、泛在:数字图书馆

开源虚拟化云平台硬件和软件配置

开发、关联、智能、泛在:数字图书馆 开源虚拟化云平台硬件和软件配置

Слайд 23

开发、关联、智能、泛在:数字图书馆

3.2 安装和管理 XCP

开发、关联、智能、泛在:数字图书馆 3.2 安装和管理 XCP

Слайд 24

开发、关联、智能、泛在:数字图书馆

修改xapi使用XenCenter代替XCP自带Web管理接口

XCP的web管理接口

修改xapi的shell脚本

开发、关联、智能、泛在:数字图书馆 修改xapi使用XenCenter代替XCP自带Web管理接口 XCP的web管理接口 修改xapi的shell脚本

Слайд 25

开发、关联、智能、泛在:数字图书馆

用XenCenter建立和管理XCP资源池

开发、关联、智能、泛在:数字图书馆 用XenCenter建立和管理XCP资源池

Слайд 26

开发、关联、智能、泛在:数字图书馆

3.3 建立核心存储

Openfiler开源的能把标准x86/64架构的系统变成一个强大的NAS、SAN存储和IP存储网关,
为管理员提供一个强大的管理平台,并能能应付未来的存储需求。
依赖如VMware,Virtual Iron和Xen服务器虚拟化技术,Openfiler也可部署为一个虚拟机。

开发、关联、智能、泛在:数字图书馆 3.3 建立核心存储 Openfiler开源的能把标准x86/64架构的系统变成一个强大的NAS、SAN存储和IP存储网关, 为管理员提供一个强大的管理平台,并能能应付未来的存储需求。 依赖如VMware,Virtual Iron和Xen服务器虚拟化技术,Openfiler也可部署为一个虚拟机。

Слайд 27

开发、关联、智能、泛在:数字图书馆

在XCP资源池中使用iSCSI

开发、关联、智能、泛在:数字图书馆 在XCP资源池中使用iSCSI

Слайд 28

开发、关联、智能、泛在:数字图书馆

3.4 云模式管理XCP

XVP: 基于 VNC 和Web 管理 Citrix XenServer
和Xen Cloud Platform的平台

xvappliance
xvp
xvpviewer
xvpweb
xvpdiscover
xvptag

1.广泛的浏览器支持
2.支持Active Directory
3.基于Web安全可靠

开发、关联、智能、泛在:数字图书馆 3.4 云模式管理XCP XVP: 基于 VNC 和Web 管理 Citrix XenServer 和Xen Cloud

Слайд 29

开发、关联、智能、泛在:数字图书馆

XVP管理XCP

开发、关联、智能、泛在:数字图书馆 XVP管理XCP

Слайд 30

开发、关联、智能、泛在:数字图书馆

XenWebManager是使用Python实现的基于Web的XenCenter的开源实现。

开发、关联、智能、泛在:数字图书馆 XenWebManager是使用Python实现的基于Web的XenCenter的开源实现。

Слайд 31

开发、关联、智能、泛在:数字图书馆

3.5 自动部署和管理虚拟机

10+VM

开发、关联、智能、泛在:数字图书馆 3.5 自动部署和管理虚拟机 10+VM

Слайд 32

开发、关联、智能、泛在:数字图书馆

puppet自动化部署虚拟机

从网络安装Ubuntu

配置初始网络

配置相关信息

开发、关联、智能、泛在:数字图书馆 puppet自动化部署虚拟机 从网络安装Ubuntu 配置初始网络 配置相关信息

Слайд 33

开发、关联、智能、泛在:数字图书馆

修改pp脚本实现自动化部署

设置Ubuntu更新用的镜像站点

设置时钟和ntp服务器

设置登入root用户密码

parman分区信息设置

开发、关联、智能、泛在:数字图书馆 修改pp脚本实现自动化部署 设置Ubuntu更新用的镜像站点 设置时钟和ntp服务器 设置登入root用户密码 parman分区信息设置

Слайд 34

开发、关联、智能、泛在:数字图书馆

puppet自动化管理虚拟机

开发、关联、智能、泛在:数字图书馆 puppet自动化管理虚拟机

Слайд 35

开发、关联、智能、泛在:数字图书馆

4.OVCP高级内容

物理机和虚拟机的迁移

puppet集群式架构

XCP

XCP

puppet

半虚拟化Unix系统

开发、关联、智能、泛在:数字图书馆 4.OVCP高级内容 物理机和虚拟机的迁移 puppet集群式架构 XCP XCP puppet 半虚拟化Unix系统

Слайд 36

开发、关联、智能、泛在:数字图书馆

4.1物理机和虚拟机的迁移

迁移Linux物理机

开发、关联、智能、泛在:数字图书馆 4.1物理机和虚拟机的迁移 迁移Linux物理机

Слайд 37

开发、关联、智能、泛在:数字图书馆

迁移Windows物理机和虚拟机

开发、关联、智能、泛在:数字图书馆 迁移Windows物理机和虚拟机

Слайд 38

开发、关联、智能、泛在:数字图书馆

4.2半虚拟化Unix系统

半虚拟化Solaris目的:为Sun小机Solaris10系统上Metalib甚至Aleph迁移到OVCP平台上铺平道路。

开发、关联、智能、泛在:数字图书馆 4.2半虚拟化Unix系统 半虚拟化Solaris目的:为Sun小机Solaris10系统上Metalib甚至Aleph迁移到OVCP平台上铺平道路。

Слайд 39

开发、关联、智能、泛在:数字图书馆

Solaris 10 半虚拟化安装效果

开发、关联、智能、泛在:数字图书馆 Solaris 10 半虚拟化安装效果

Слайд 40

开发、关联、智能、泛在:数字图书馆

Solaris10全虚拟化和半虚拟化性能比较

开发、关联、智能、泛在:数字图书馆 Solaris10全虚拟化和半虚拟化性能比较

Слайд 41

开发、关联、智能、泛在:数字图书馆

4.3puppet集群式架构

Puppet 集群核心思想:
1).puppetmaster 集群
- 分担puppetmaster来自于客户端的请求压力,可以采取Active ,Active 模式.
- 采取反向代理模式,将来自于8140的端口请求分散到多台puppetmaster
2).puppet ssl 证书集群 puppet

开发、关联、智能、泛在:数字图书馆 4.3puppet集群式架构 Puppet 集群核心思想: 1).puppetmaster 集群 - 分担puppetmaster来自于客户端的请求压力,可以采取Active ,Active 模式. - 采取反向代理模式,将来自于8140的端口请求分散到多台puppetmaster
CA
-分担puppetmaster来自于客户端ssl证书的请求压力, 采取Active,Standby模式.

Слайд 42

开发、关联、智能、泛在:数字图书馆

puppetmaster 集群架构图

开发、关联、智能、泛在:数字图书馆 puppetmaster 集群架构图

Слайд 43

开发、关联、智能、泛在:数字图书馆

未来工作

1.将OVCP云平台从实验环境升级为生产环境,主要是网络环境和存储的改造
2.将Metalib从Sun小机上迁移到OVCP云平台上
3.将XCP1.0->XCP1.6 (XenServer 6.1,Xen4.1.2)
4.更加深入研究和使用puppet,如将其加入到基于Web的云平台管理中,使用puppet来管理Windows和Linux物理服务器,使用puppet来管理Windows和Mac桌面电脑

开发、关联、智能、泛在:数字图书馆 未来工作 1.将OVCP云平台从实验环境升级为生产环境,主要是网络环境和存储的改造 2.将Metalib从Sun小机上迁移到OVCP云平台上 3.将XCP1.0->XCP1.6 (XenServer 6.1,Xen4.1.2) 4.更加深入研究和使用puppet,如将其加入到基于Web的云平台管理中,使用puppet来管理Windows和Linux物理服务器,使用puppet来管理Windows和Mac桌面电脑

Слайд 44

开发、关联、智能、泛在:数字图书馆

参考文献

《基于XCP的虚拟化云平台建设研究》
《精通puppet配置管理工作》(《Pro. puppet》)
《puppet 2.7 Cookbook》
《puppet Docs》
http://www.xen.org/
http://www.openfiler.com/
http://puppetlabs.com/

开发、关联、智能、泛在:数字图书馆 参考文献 《基于XCP的虚拟化云平台建设研究》 《精通puppet配置管理工作》(《Pro. puppet》) 《puppet 2.7 Cookbook》 《puppet Docs》 http://www.xen.org/ http://www.openfiler.com/ http://puppetlabs.com/

Слайд 45

开发、关联、智能、泛在:数字图书馆

推广开源软件

开发、关联、智能、泛在:数字图书馆 推广开源软件