云计算及OpenStack技术分享目录•一、云计算简介•二、openstack简介及各功能模块介绍•三、应用实例•四、小结•五、实验安装部署openstack121.1功能及应用场景云计算功能:1、提供虚拟主机服务;2、提供海量数据存储服务。应用场景:公有云,面向社会个人或企业提供云服务;私有云,面向特定企业内部或员工提供云服务;混合云,公有云和私有云结合,权衡模式;31.2云计算和云存储云计算:把IT资源能够通过网络交付及使用;资源弹性提供、资源自助化、便捷、计量收费、资源虚拟化;云存储:面向用户提供存储服务(微盘、网盘,例360网盘、百度云盘)41.3为什么要使用云计算http、ftp和mysql部署在同一台主机中51.3为什么要使用云计算分布式架构模型61.3为什么要使用云计算基于虚拟机方案的架构71.3为什么要使用云计算采用云计算系统之后的三层结构示意图81.4云计算系统功能提供账号角色:可以申请虚拟机(用户)管理虚拟机(管理员)利用申请的虚机搭建MYSQL、apache、ftp等通用软件;利用搭建的软件服务,搭建出互联网应用程序(建设网站);91.5云计算三层架构101.6云计算软件发展云计算软件:商业软件和开源软件商业软件:意味着程序员不能看到整个系统的所有代码;开源软件:则是提供云计算系统的大部分功能,由开源社区升级版本及维护;提供开源代码,开发人员可根据阅读源代码,进行二次开发。开源云计算管理平台:Openstack,OpenNebula,Cloudstack,Eucalyptus111.7openstack云计算系统Openstack是一个IaaS层软件,可提供可靠的云部署方案及良好的扩展性,从而实现云基础架构服务(IaaS);综合性集成度较高平台:模块覆盖了网络、虚拟化、操作系统、服务器等各个方面。底层虚拟机支持:KVM,XEN,VirtualBox,Qemu,LXC和vmware,但支持最为完善的是KVM。版本:采用A~Z开头不同单词表示;2010年开始发布:Austin、Bexar、Cactus、Diablo……Liberty121.8开源系统在不断发展131.9linux采用的策略141.10开源软件的优势151.11开源软件的应用161.12openstack发展现状171.13openstack全球部署情况181.14开源软件发展新趋势目录•一、云计算简介•二、openstack简介及各功能模块介绍•三、应用实例•四、小结•五、实验安装部署openstack19202.1openstack主要模块1•虚拟机管理系统Nova2•磁盘存储系统Glance与Swift3•虚拟网络管理Neutron三大模块:212.2openstack三大功能模块架构图222.3各个模块关系图232.4各个模块功能和关系图242.5虚拟机管理系统--Nova252.6磁盘存储系统Glance与Swift简单虚机创建方式:复制image。装好一台虚拟机之后,关闭虚拟机,保留image。当创建一台新的虚机的时候,直接复制image作为新虚机即可。Image:是虚拟机的磁盘。格式有raw,qcow2格式Glance主要功能是管理Image。它本身不实现存储功能,只是提供一系列的接口来调用底层的存储服务。Glance实际是一个代理,后端使用Swift存储系统。Swift是用来实现对象存储和云存储的,提供存储服务。(功能:各种云盘、网盘等)262.6磁盘存储系统Glance与SwiftSwift架构图:272.6磁盘存储系统Glance与SwiftGlance镜像资源管理服务专门管理虚拟机镜像的,提供镜像查询、注册和传输等服务。Glance并不实现对镜像的存储功能,是一个代理,充当镜像存储服务与其他组件之间的纽带。支持两种存储机制:简单文件系统和swift服务存储镜像机制。Glance支持多种格式的虚拟磁盘镜像。如raw,qcow2、VHDVDIVMDK对象存储代理服务:可以通过glance存储任何其他格式的文件。282.7Cinder块存储服务Cinder主要是实现块存储服务的,是为虚拟机提供弹性存储服务,可以像虚拟机提供临时移动硬盘的功能。Swift、Glance、Cinder服务的区别:举例:swift:云盘,对文件进行修改,需要下载,修改后再上传,cinder相当于电脑上的一个移动硬盘,可直接编辑修改。功能Swift对象存储、非结构化、用来存储虚拟机镜像,运行着的虚拟机,没有提供实时读写功能;Cinder块存储、处理结构化数据、用来做虚拟机磁盘添加、划分,存储文件;Glance上传下载管理的,格式内容管理识别镜像不同类型;292.8虚拟网络管理--Neutron在大型互联网应用中,虚拟机都不是单独使用,往往需要组建局域网,甚至需要划分子网,来实现虚拟机与物理机,虚拟机之间的通信。——Neutron302.8虚拟网络管理--Neutron功能:主要负责虚拟机提供虚拟网络,以实现虚拟机之间和虚拟机与物理机之间的通信。Openvswitch:虚拟交换机,一个开放虚拟交换标准,进行虚拟VLAN划分。312.8虚拟网络管理--Neutron322.8虚拟网络管理—Neutron332.9虚拟化技术(一)系统虚拟化:通过使用虚拟机管理程序(VMM)在一台物理机上虚拟和运行一台或多台虚拟机(VM),而且这些虚拟机可以像真实机器一样运行各种软件,并且在资源占用方面虚拟机之间是相互隔离的,以保证运行的安全和稳定。系统虚拟化技术的分类:硬件仿真、全虚拟化、半虚拟化、硬件辅助虚拟化、操作系统级虚拟化X86虚拟化技术:一致性(与物理机运行基本一致)可控性(对系统资源完全可控和管理)高效性(指令由硬件直接执行)342.9虚拟化技术(二)Libvirt:是一个统一的虚拟化管理工具,能管理各种各样的hypervisor,并且能够提供统一的API来支持上层应用;Libvirt的功能:功能描述虚拟机管理以虚拟机为对象,Libvirt提供了定义、删除、启动、关闭、暂停、恢复、保存、回滚和迁移等多种多样的功能;虚拟设备管理能够管理各种各样的虚拟机外设,比如虚拟磁盘、虚拟网卡、内存、虚拟CPU等虚拟机使用的外部设备;远程控制Libvirt除了对本机的Hypervisor管理外,提供远程连接功能。通过virsh程序或API能够远程连接到其他物理机Hypenvisor。352.10虚拟化技术应用(一)KVM(基于内核的虚拟机)实现的两个条件:1、硬件支持全虚拟化。2、操作系统为linux362.10虚拟化技术应用(二)虚拟网络实现方式---桥接网络1、通过网桥,从而虚拟出多个“真实网卡”以提供虚拟机使用。2、通过网桥,每个虚拟机可以拥有“自己的网卡”但虚拟机网卡配置确实收到真实网卡所在网络限制。372.10虚拟化技术应用(三)虚机动态迁移动态迁移:让一台运行中的虚拟机从一台宿主机迁移到另一台宿主机,并且确保在它上面运行的应用在移动的过程中能正常运行。好处:1、排除危险。将虚拟机从资源紧张或出现问题的宿主机上移走,确保虚机和上面的应用正常运行。2、方便维护。当某台宿主机需要维护,可以将上面的重要虚机迁移到其他宿主机,待完成维护迁回。3、资源优化。可以调节数据中心的资源分配,将虚机平均轮询分配宿主机节点上,资源优化使用。382.10虚拟化技术应用(四)虚机动态迁移原则同一时刻宿主机上有唯一一台完整虚机;两个宿主机之间的事务操作;新宿主机必须是比迁移前的稳定;迁移整个过程虚机必须维持同一个IP和MAC地址;迁移需保持应用稳定运行,用户体验不受影响;(五)动态迁移工作流程1、部署前的准备;2、预订;3、预复制;4、停止和复制;5、确认;6、激活;392.11Keystone安全认证服务模块Openstack中各种各样模块之间的安全认证。(如用户登录,用户消息传递、模块消息通信、服务注册等各个不同认证)安全认证管理分为:用户认证、服务认证、口令认证。Keystone所有数据都存到数据库中,一般采用mysql作为数据库。402.12Nova--云计算系统中虚拟机的管理云计算核心就是利用虚拟机,将资源(CPU、内存、磁盘等)灵活进行分配使用,工具就通过虚拟化实现。Nova模块实际就是虚拟机管理系统,其他所有模块都是为nova配置资源而存在的。412.13Dashboardweb界面Dashboard为管理员和普通用户提供了一套访问和自动化管理openstack各种资源的图形化界面。它实际上将Web服务器部署在apache。Dashboard为各种openstack资源的管理提供图形化界面。422.14OpenStack最常用的模块目录•一、云计算简介•二、openstack简介及各功能模块介绍•三、应用实例•四、小结•五、实践安装部署openstack43中国联通VDC平台:将云计算概念运用于IDC的一种新型的数据中心。通过传统IDC业务与云计算技术相结合,建设统一创新型VDC运营管理系统,应用虚拟化、自动化部署等技术,构建可伸缩的虚拟化基础架构,采用集中管理、分布服务模式,向用户提供一点受理、全网服务的基础IT设施方案与服务。•特点:1、公有云;2、提供Iaas服务;3、典型云主机租赁功能;44集成项目上的应用实例(一)中国联通VDC平台:45集成项目上的应用实例(二)网络发票青岛及嘉兴灾备中心平台国家税务总局与中国联通签署《金税三期工程网络发票项目战略合作框架协议》,开始建设中国联通网络发票平台。网络发票工程以VDC项目为基础,按照新的需求对资源池进行相应扩容,同时满足国税总局对网络发票项目的特殊安全要求,快速提供私有云解决方案。网络发票二期灾备工程以“异地双中心”的模式实现应用级灾备平台,开票系统按主中心复制部署,数据实时同步。灾备中心虚拟化的实现就是基于openstack云计算平台的二次开发。集成项目上的应用实例(二)浙江嘉兴网络发票灾备中心平台采用的技术:开票平台采用J2EE架构搭建,数据交换接口采用JSON标准实现平台资源基于openstack云计算技术,建设计算、存储等基础资源池采用oracleGoldenGate数据实时同步解决方案实现主备中心的数据同步网络发票拓扑示意图集成项目上的应用实例(三)JLR项目JLR项目是捷豹路虎汽车中国市场的Telematics服务。通过telematics服务可为客户提供汽车信息化服务,包括车载电话、E-call、远程服务、手机App等使用的技术openstack,KVM-qume,OpenvSwitch项目难点虚拟网络链路、虚拟交换机、虚拟机维护管理集成项目上的应用实例(四)中国联通智慧城市云平台中国联通以“智慧城市”发展为契机,通过打造智慧城市云平台,发挥基础资源优势,以行业应用切入,整合企业资源,打造共赢模式,“智”于管理,“慧”于民生,促进应用创新及可持续发展,帮助政府落实规划、提升业绩。使用的技术openstack,KVM,OpenvSwitchASP.NET,Spring,Tornado,Hibernate项目难点云平台管理、控制虚拟路由器、交换机、防火墙、VPN等网络、安全设备存在一定难度技术发展方向云计算。Openstack是开源云计算管理平台项目,由几个主要的组件组合起来完成。Openstack支持几乎所有的类似的云环境,项目目标提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。Openstack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成。虚拟化。KVM,是一个开源的系统虚拟化模块,使用linux自身的调度器管理,所以相对Xen,其核心源码很少。Kvm虚拟化需要硬件支持,是基于硬件的完全虚拟化。编程语言。Python语法简洁而清晰,具有丰富而强大的类库,被称为胶水语言,能够把其他语言制作的各种模块(C/C++)很轻松的联结在一起,研究云计算,大多使用Python语言。51维护管理经验的分享云平台租户用