OpenStack是由美国国家航空航天局和第三方公司合作研发,以Apache许可授权的自由软件和开放源代码的一个项目,OpenStack严格意义上来说他是一个开源的云计算管理平台的项目,它是由多个组件相互协作完成具体的工作。OpenStack几乎涵盖了所有类型的云环境,它设计的目的就是提供方便部署,管理,易于扩展,具有丰富统一标准的一个管理平台,正是基于这种开源的,而且提供了丰富的API,使得OpenStack开源项目得到了飞速的发展,活跃在其开源社区大概有200家企业以及超过上千名的开发者,同时它也带动了周围开源项目的发展,例如分布式系统ceph、glusterfs。
OpenStack云管理平台涵盖了网络、操作系统、存储、服务器等四大主要方面也是其得到飞速发展的主要原因,正是基于这种近乎完美的框架使得国内很多云提供商纷纷采用OpenStack这种免费开源的的框架,最具代表的有百度云、阿里云、青云等诸多云商,是什么使得OpenStack开源云管理平台一枝独秀?下面我们来分析一下其核心的组件。
keystone身份认证组件:作为OpenStack官网第一个介绍的组件足以显示其重要的地位,其主要职责为其他组件服务器提供注册,身份验证、令服务、OpenStack除去keystone组件之外所有的服务都需要向其提供注册,注册的模式是passwd也就是需要该服务提供相应的账号以及密码下面的示例为neutron组件向keystone组件注册的配置:
[keystone_authtoken] www_authenticate_uri=http://192.168.1.10:5000/ auth_uri=http://192.168.1.10:5000/ auth_type=password auth_url=http://192.168.1.10:35357 username=neutron password=123456 user_domain_name=Default project_name=services project_domain_name=Default
glance镜像组件:主要是维护OpenStack创建云主机所需要的镜像,在该服务中有2个重要的服务需要熟知,glance-api主要负责终端用的相应,例如终端用户创建云主机镜像的请求,镜像的检索以及镜像的存储。glance-registry 存储,处理和检索有关镜像的元数据,元数据包括大小和类型等项目,主要与数据库有关联,OpenStack镜像存储位置同时也需要写入到数据库中,该操作的主要是由glance-registry完成。
Nova计算组件:用于为租户提供管理虚拟机实例的整个生命周期,用户根据自己的需求创建其所需服务,创建云主机的操作包括云主机的创建、开机、关机、删除、调整、迁移、以及动态的调整,Nova组件主要安装在2个节点上,一个安装在控制节点主要负责在响应用户创建云主机 然后调度云主机创建在哪个计算节点上,另一个安装在计算节点,该节点主要是负责承载创建云主机,在OpenStack集群中所有的云主机都是创建在计算节点。
cinder 块存储:OpenStack在设计之初就考虑到了数据存放的安全性,它将数据和云主机完全隔离开来,所以开发了cinder块存储组件,主要是为运行的云主机提供稳定的数据块存储服务,其支持开源的分布式存储系统如ceph、glusterfs同时也支持硬件存储,实现了数据卷的删除、扩展、快照以及连接。
neutron网络组件:为OpenStack云主机童工了网络虚拟化技术,为OpenStack创建的云主机提供网络连接服务,为租户提供接口,租户可以创建属于自己的网络、路由、子网。同时neutron组件实现了负载均衡、l3服务,同时网络也支持了不同的隔离模式例如vxlan、vlan、GRE 等,而且neutron组件也支持许多主流厂家技术例如现在流行的openvswitch。
dashboard UI组件:dashboard组件为OpenStack的图形组件,租户可以在基于web页面的管理形式对自己的云平台进行可视化管理,例如租户的创建,云主机的删除,以及网络拓扑的查看,同时可以实现可用资源的监控。
以上是OpenStack在企业生产环境中经常用到的组件,如有错误之处还望小伙伴们指出谢谢,下一篇文章将分析一下在企业生产环境中我们如何确定集群的节点以及部署OpenStack集群的环境。
同时您可以关注我的公众微信号“openstack免费云课堂”,每天定时更新有关云计算相关技术文章。
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明,否则将追究法律责任。https://blog.kokojia.com/openstack/b-2234.html