文章目录
- 概述
- 概念
- Horizon--UI模块
- Keystone--身份服务模块
- 提供的服务
- Nova--计算服务
- glance--镜像服务
- swift--对象存储服务
- cinder-块存储服务
- Neutron--网络服务
- 各自的关系
- 访问控制流程
概述
半夜睡不着,想着未来的发展方向,觉得openstack也许是自己可以努力的一个方向,一辈子不可能永远只做crud,何况python做web国内发展太受限了,如果能入坑openstack,则未来发展稍微有保障一点。
概念
openstack:OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。(来源:百度)
主要模块如下:
Horizon–UI模块
主要功能:把用户的操作转化为后台服务的操作,实现资源的整体控制和调配。
为云管理员提供完整视图,为终端用户提供资助服务门户,在配额操作内,自由操作使用资源。
Keystone–身份服务模块
User:用户,代表可以通过keystone进行访问的人或程序,User通过认证信息进行验证
Tenant:租户,他是各个服务中的一些可以访问的资源集合
Role:角色,Role代表一组用户可以访问的资源权限
Service:服务,如Nova,Glance,服务在KeyStone进行注册
Endpoint:可以理解为服务暴露出来的访问点,如果需要访问一个服务,需要知道endpoint
Token:访问资源的令牌,具有时效性。
提供的服务
Identofy:服务验证了身份验证凭证
Token服务将会验证并管理用于验证请求身份的令牌
Catalog:服务提供了可用于断电发现的服务注册表
Pplicy:服务暴露了一个基于规则的身份验证引擎
Nova–计算服务
实例(虚拟机、裸机、docker等,主要是虚拟机)的生命周期管理
计算资源管理
向外提供REST风格的API
组成:
nova-scheduler逻辑控制层
nova-api表示层,接收请求
nova-compute虚拟机的创建和资源分配
这三个通过rabbitMQ消息中间件进行信息传递
glance–镜像服务
提供虚拟机镜像的存储、查询和检索服务
为Nova提供组件服务
依赖于存储服务和数据库
swift–对象存储服务
高可用的分布式对象存储服务,无限可扩展
定位:account->container->object
可通过https、Objectapi或s3接口存取
cinder-块存储服务
管理所有的块存储设备,为vm服务。
Neutron–网络服务
提供云计算环境下的虚拟网络功能
给每个租户独立的网络环境
三种模式:
Flat 网桥模式(需要手动配置)
Flat DHCP 自动网桥模式
VLAN 虚拟??
各自的关系
访问控制流程