openstack基础框架

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的管理
 
 
 
 
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
 
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)【修改前】租户相当于一个用户组,包含多个用户。

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。
 
 
 
openstack部署:icehouse版本
 
http://www.jb51.net/article/104511.htm
 
posted @ 2019-04-28 11:00  那个谁866  阅读(677)  评论(0编辑  收藏  举报