openstack组件:
Computer--代码名Nova,管理VM的整个生命周期,主要职责包括启动,调度VMs,计算节点上需要至少两块网卡
Networking--代码名Neutron,为openstack提供NCaas的功能,插件化设计,支持众多流行的网络管理插件
Object storage--代码名swift,分布式存储,它提供了高可用、分布式、持久性、大文件的对象存储服务。
Block storage--代码名cinder,为VM提供持久的块存储能力;
Identity service--代码名Keystone,为openstack的所有服务提供认证,授权以及端点编录目录
Image--代码名Glance,是swift的存储和检索服务的实现
Dashboard--代码名Horizon,是webGUI
Telemetry--代码名Ceilometer,用于实现监控和计量服务的实现
Orchestration--代码名Heat,用于多组件联动
Database service--代码名Trove,为DBaas服务的实现
Data processing service--代码名sahara,用于在openstack中实现hadoop的管理
![](https://app.yinxiang.com/shard/s4/res/462ff28b-028c-4b69-94ba-a1d37a4558e5.png)
![](https://app.yinxiang.com/shard/s4/res/8f953ffb-5df2-4048-8501-0817a58742cc.png)
![](https://app.yinxiang.com/shard/s4/res/92e05213-5d58-4c72-8555-00d47b6649cc.png)
Identity组件:
主要两个功能
用户管理:认证和授权
认证方式有两种:token, 账户密码
服务目录:所有可用服务的信息库,包含其API endpoint路径(访问入口)
Glance组件:
glance-api
glance的API服务接口,负责接受对Image service API中镜像文件的查看,下载及存储请求
glance-registry
存储,处理及获取镜像文件的元数据,例如镜像文件的大小及类型等
database
存储镜像文件元数据
镜像文件存储仓库
支持多种类型的镜像文件存储机制,包括使用普通的文件系统,对象存储,RADOS块设备,HTTP以及Amazon的S3等
初始化时,在mysql创建库,需要使用utf8格式
NOVA组件
supporting service
AMQP: Advanced Messaging Queue Protocol 高级消息队列协议
Apache Qpid, RabbitMQ, ZeroMQ
Database:
组件:
API
nova-api, nova-api-metadata
Compute Core
nova-computer, nova-scheduler, nova-condutor
Network for VMs
nova-network, nova-dhcpagent
Console Interface
nova-consoleauth, nova-novncproxy, nova-xvpnvncproxy, nova-cert
Command line and other interfaces
nova, nova-manage
查看当前有多少计算节点,可以在控制节点使用命令:nova hypervisor-list
Neutron组件
网络服务
提供云计算环境下的虚拟网络功能
给每个租户独立的网络环境
监控端口:9696
三种模式:
Flat模式:所有VMs在同一个子网,不支持VLAN与其他网络隔离机制
Flat DHCP模式
VLAN模式
Neutron节点可以设置三张网卡,分别是:
管理网络(management network):用交换机连接,仅用于内部访问的物理网络
数据网络(data network):各compute节点与network节点实现基于隧道通信
外部网络(external network):为VM实例提供访问外部的网络
Cinder组件
Block Storage Service
cinder-api
cinder-volume
cinder-scheduler
在/etc/rc.d/init.d/openstack-cinder-volume配置文件中,有一项distconfig变量可以删除,如果不删除,可能出现报错
注意:
1、Neutron配置文件中要把auth_uri换成identity_uri
2、各配置文件属组应该为相应的服务运行者用户身份,否则将无法访问,导致服务启动失败
用户身份管理有三个主要的概念:
用户Users
租户Tenants
角色Roles
用户Users
租户Tenants
角色Roles
1.1 用户(User)
openstack官网定义User为“In OpenStack Identity, entities represent individual API consumers and are owned by a specific domain. In OpenStack Compute, a user can be associated with roles, projects, or both”
关于用户需要明白以下:
1) 一个用户就是一个有身份验证信息的API消费实体;
2)一个用户可以属于多个租户/项目/组织, 角色;
1.2 租户(Tenant)
openstack官网定义Tenant为"A group of users; used to isolate access to Compute resources. An alternative term for a project”
关于租户需要明白以下几点:
1)【修改前】租户相当于一个用户组,包含多个用户。
openstack官网定义User为“In OpenStack Identity, entities represent individual API consumers and are owned by a specific domain. In OpenStack Compute, a user can be associated with roles, projects, or both”
关于用户需要明白以下:
1) 一个用户就是一个有身份验证信息的API消费实体;
2)一个用户可以属于多个租户/项目/组织, 角色;
1.2 租户(Tenant)
openstack官网定义Tenant为"A group of users; used to isolate access to Compute resources. An alternative term for a project”
关于租户需要明白以下几点:
1)【修改前】租户相当于一个用户组,包含多个用户。
1)【修改后】租户也可以理解为一个项目(Project)。 在API 3之前的版本,使用tenant, API 3之后的版本,更多的使用project。目前的openstack版本(Mitaka (April 2016))中,更多的使用的是peoject(项目)这个词,而不倾向于使用tenatn(租户)。Tenant其实是各个服务中的一些可以访问的资源集合。这些资源集合可供多个用户使用,这也是为什么用户默认的总是绑定到某些tenant上。
2)用户通过租户访问计算管理资源(这里的计算管理资源可以理解为openstack服务),也就是说必须指定一个相应的租户才可以申请openstack服务。
3) 各租户相互独立,在当前租户下无法查看其他租户信息。
1.3 角色(Role)
openstack官网定义role为“A personality that a user assumes to perform a specific set of operations. A role includes a set of rights and privileges. A user assuming that role inherits those rights and privileges.”
关于角色需要明白以下:
1)角色是可执行一特定系列操作的用户特性,角色规定了用户在某个租户中的一系列权利和特权。
2)一般默认有超级管理员权限admin和普通管理员权限member。
2)用户通过租户访问计算管理资源(这里的计算管理资源可以理解为openstack服务),也就是说必须指定一个相应的租户才可以申请openstack服务。
3) 各租户相互独立,在当前租户下无法查看其他租户信息。
1.3 角色(Role)
openstack官网定义role为“A personality that a user assumes to perform a specific set of operations. A role includes a set of rights and privileges. A user assuming that role inherits those rights and privileges.”
关于角色需要明白以下:
1)角色是可执行一特定系列操作的用户特性,角色规定了用户在某个租户中的一系列权利和特权。
2)一般默认有超级管理员权限admin和普通管理员权限member。
openstack部署:icehouse版本
http://www.jb51.net/article/104511.htm