什么是openstack?

Openstack是开源的云操作系统,是开源的linux系统。位于基础设施层,是搭建云环境的工具。

Openstack的项目

Openstack的架构:

nova服务:

nova-计算服务:

实例生命周期的管理

提供基于RESTAPI

Hypervisor屏蔽,支持KVM,Xen,Hyper-v,Docker等。

支持水平扩展

neutron-网络服务:

虚拟网络的管理(创建虚拟机的网络拓扑结构)

提供面向租户的管理(SDN)

高度配置的plugin架构 (linux-bridge openvswitch、硬件网络管理实现)

基于REST的API

keystone-身份认证服务:

认证与授权

用户、租户和角色的管理

服务目录的管理

支持多种认证机制(MySQL,Ldap,AD等等)

glance-镜像服务

镜像的注册、查询

基于角色的访问控制

支持多种格式的镜像(Raw、qcow2)

支持多种后端存储(S3,swift,File System)

horizon-控制面板服务 基于Web的UI模式

cinder-块存储服务

提供类似于EBS的块存储

减少nova的复杂性,降低nova的负载

支持多种后端存储

swift-对象存储服务(Ceph glusfs)

可靠的对象存储

没有容量限制

无单点故障

支持S3API

Ceilometer-计量服务

资源监控和度量

流程的部署模式:

几个基本的概念:

用户(user):用于身份认证,一个用户可以可以属于多个租户

租户(Tenant)相当于用户组的概念,一个租户包含有多个用户,可以映射一个项目成员或者是部门。

角色(Role):系统权限结合的概念,一般磨人的哦有admin和memeber两种

实例(Instance):代表计算能力的单元,例如虚拟机、linux Container等。

卷(Volume):块存储,类似于网络磁盘

快照(Snapshot) Instance或者volume的某个状态的备份)

路由器(router)

子网(subnet)

端口(port)