OpenStack学习笔记01-基础介绍/安装环境

发布于 2017-07-12  1.7k 次阅读


OpenStack

WHAT?

是一个云平台管理项目,由几个主要的组件组合起来来完成一些具体的工作。

命名

版本发布以A-Z字母顺序来发布

  • Austin 2010.10

    作为OpenStack第一个正式版本,Austin主要包含两子项目,Swift是对象存储模块,Nova是计算模块;带有一个简单的控制台,允许用户通过web管理计算和存储;带有一个部分实现的Image文件管理模块,未正式发布。

  • Bexar 2011.2

    Bexar 在此基础上补充了 Image Service (Glance),它在许多方面与计算和存储有交集。镜像代表存储在 OpenStack 上的模板虚拟机,用于按需快速启动计算实例;Swift增加了对大文件(大于5G)的支持;增加了支持S3接口的中间件;增加了一个认证服务中间件Swauth;Nova增加对raw磁盘镜像的支持,增加对微软Hyper-V的支持;开始了Dashboard控制台的开发。

  • Cactus 2011.4

    Nova增加新的虚拟化技术支持,如LXC容器、VMWare/vSphere、ESX/ESXi 4.1;支持动态迁移运行中的虚机;增加支持Lefthand/HP SAN做为卷存储的后端。

  • Diablo 2011.9

    Nova整合了Keystone认证;支持KVM的暂停恢复;KVM的块迁移;采用了全局防火墙规则。

  • Essex 2012.4

    Essex 的发布增加了两个核心项目。OpenStack Identity (Keystone) 隔离之前由 Nova 处理的用户管理元素,而 OpenStack Dashboard (Horizon) 的引入则标准化和简化了用户界面(UI),使之同时适用于每个租户和 OpenStack 管理人员。

  • Folsom 2012.9

    Folsom 使得版本数量又增加了两个。增加了Cinder块存储,以及Quantum网络模块,后来更名为Neutron。正式发布Quantum项目,提供网络管理服务;正式发布Cinder项目,提供块存储服务;Nova中libvirt驱动增加支持以LVM为后端的虚机实例;Xen API增加支持动态迁移、块迁移等功能;增加可信计算池功能;卷管理服务抽离成Cinder。

  • Grizzly 2013.4

    Nova支持将分布于不同地理位置的机器组织成的集群划分为一个cell;支持通过libguestfs直接向guest文件系统中添加文件;通过Glance提供的Image位置URL直接获取Image内容以加速启动;支持无image条件下启动带块设备的实例;支持为虚机实例设置(CPU、磁盘IO、网络带宽)配额;Keystone中使用PKI签名令牌代替传统的UUID令牌;Quantum中可以根据安全策略对3层和4层的包进行过滤;引入仍在开发中的load balancer服务;Cinder中支持光纤通道连接设备;支持LIO做ISCSI的后端。

  • Havana 2013.10

    正式发布Ceilometer项目,进行(内部)数据统计,可用于监控报警;正式发布Heat项目,让应用开发者通过模板定义基础架构并自动部署;网络服务Quantum变更为Neutron; Nove中支持在使用cell时同一cell中虚机的动态迁移;支持Docker管理的容器;使用Cinder卷时支持加密;增加自然支持GlusterFS;Glance中按组限制对Image的元属性的访问修改;增加使用RPC-over-HTTP的注册 API;增加支持Sheepdog、Cinder、GridFS做后端存储; Neutron中引入一种新的边界网络防火墙服务;可通过VPN服务插件支持IPSec VPN;Cinder中支持直接使用裸盘做存储设备无需再创建LVM;新支持的厂商中包含IBM的GPFS。

  • IceHouse 2014.4

    针对集成项目(Integrated Project),主要关注每个项目的稳定性与成熟度,同时包含新功能以及更好地与平台其他服务相整合;一致性的用户体验,提高测试的门槛,特别是针对存储方面;对象存储(Swift)项目有一些大的更新,包括可发现性的引入和一个全新的复制过程(称为s-sync)以提高性能;新的块存储功能使OpenStack在异构环境中拥有更好的性能;联合身份验证将允许用户通过相同认证信息同时访问OpenStack私有云与公有云;新项目Trove (DB as a Service)现在已经成为版本中的组成部分,它允许用户可以在OpenStack环境中管理关系数据库服务。

  • Juno 2014.10

    Nova 网络功能虚拟化项目组在五月Atlanta峰会成立,新的功能已经在JUNO中逐渐显现;包括救援模式等很多运维层面的更新工作也落在nova-network中;通过StackForge增加了多个重要的驱动,如支持Ironic和Docker;支持调度和在线升级;Cinder 块存储添加了十种新的存储后端;改进了第三方存储系统的测试;Cinder v2 API集成进Nova;块存储在每个开发周期中不断成熟;Neutron 支持IPv6和第三方驱动,保证网络的可靠性和可持续性;API层面添加了插件支持;支持三层网络高可用;支持分布式网络模式;Swift 存储策略的推出对于对象存储是具有里程碑意义的,存储策略给予用户更多的控制与性能的提升;支持Keystone;Horizon 支持部署Apache Hadoop集群;扩展了RBAC系统;Keystone 联邦认证使用户可以通过同一套认证体系访问私有和共有OpenStack服务;可以配置使用多个认证后端;与LDAP的集成更加便捷;Heat 出错后更易于回滚操作和环境清理;可以授权无权限用户操作;Ceilometer 提高性能;支持负载均衡、防火墙与VPN;Glance 扩展image定义;异步处理进程;可控下载策略;Sahara 应用Hadoop和Spark实现大数据集群快速搭建与管理。

  • Kilo 2015.4

    Horizon在K版本除了增强了对新增模块的支持,从UE的角度也为我们带来了很多新功能裸机服务Ironic完全发布,增加互操作性。

  • Liberty 2015.10

    在Liberty版本中,更加精细的访问控制和更简洁的管理功能非常亮眼。这些功能直接满足了OpenStack运营人员的需求。新版本增加了通用库应用和更有效的配置管理功能。另外,还为Heat编排和Neutron网络项目增加了基于角色的访问控制(RBAC)。这些可以帮助运维人员更好地调试不同级别的网络和编排功能的安全设置和API;更面向企业,包括开始对跨一系列产品进行滚动升级的支持,以及对管理性和可扩展性的增强。引入了Magum容器管理,支持Kubernetes,Mesos和Docker Swarm。

  • Mitaka 2016.4

    Mitaka聚焦于可管理性、可扩展性和终端用户体验三方面。重点在用户体验上简化了Nova,Keynote的使用,以及使用一致的API调用创建资源;Mitaka版本中可以处理更大的负载和更为复杂的横向扩展。

  • Newton 2016.10

    此次推出的新功能包括:Ironic裸机开通服务,Magnum容器编排集群管理器,此外,Kuryr容器组网项目可将容器、虚拟和物理基础设施无缝集成于统一控制面板。

  • Ocata 2017.2

    Ocata版本中,改进的容器支持意味着Kubernetes更好地集成到Kolla,该Openstack项目旨在使OpenStack本身更容易部署在容器上。这样不仅使管理OpenStack的部署更容易,而且使升级更简单。其他更新包括更好地支持Magnum中的Mesosphere(使容器编排服务成为其堆栈的主要项目),以及Docker Swarm对容器网络服务Kuryr的支持。

核心组件

  • Keystone(身份认证)

    统一的授权、认证管理。所有的组件都依赖于Keystone提供的3A( Account, Authentication, Authorization )服务。

  • Nova(计算管理)

    云中的计算组织控制器。Nova自身不提供任何虚拟化功能,它使用libvirt API来与被支持的虚拟技术Hypervisor交互,入KVM,Xen,VMware等。

  • Neutron(网络)

    实现虚拟机的网络资源管理。如网络连接、IP管理、公网映射

  • Glance(镜像存储)

    主要存储系统镜像。

  • Cinder(块存储)

    为虚拟机提供存储空间。比如硬盘,分区,目前支持ip-san、fc-san等

  • Swift(对象存储)

    提供弹性可伸缩、高可用的分布式对象存储服务,适合存储大规模非结构化数据。通过key/value的方式实现对文件的存储,现在的云盘就是这样的,和MFS、GFS类似。

  • Horizon(Web UI界面)

    安装好之后,openstack的web界面控制台DashBoard

  • Ceilometer(计量)

  • Heat(部署编排)

  • Trove(数据库)

  • Hypervisor(VM监视器)

    Hypervisor是一种运行在物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享一套基础物理硬件,因此也可以看作是虚拟环境中的“元”操作系统,它可以协调访问服务器上的所有物理设备和虚拟机,也叫虚拟机监视器(Virtual Machine Monitor)。Hypervisor是所有虚拟化技术的核心。非中断地支持多工作负载迁移的能力是Hypervisor的基本功能。当服务器启动并执行Hypervisor时,它会给每一台虚拟机分配适量的内存、CPU、网络和磁盘,并加载所有虚拟机的客户操作系统。

安装

[root@localhost ~]# yum update -y
[root@localhost ~]# yum install -y screen epel-release
[root@localhost ~]# yum install -y https://rdoproject.org/repos/rdo-release.rpm
[root@localhost ~]# screen -S openstack
[root@localhost ~]# yum install -y openstack-packstack
[root@localhost ~]# packstack --allinone

国内的话,GWF的原因,你懂得,所以非常非常的慢,甚至安装失败,我这里是用的国外的服务器。
Take it easy!

登陆管理界面

输入服务器IP地址,就能打开OpenStack的web登录台DashBoard.

用户名:admin
密码:[root@localhost ~]# cat keystonerc_admin 是那串随机字符,登录后台后,可以在portal上修改。

END

初步环境就搭建好了,后续继续创建镜像、虚拟机、资源编排等等,深入学习各个组件。


Flyfish's Blog - 飞鱼博客| 点滴记忆,记录成长---flyfish