一、openstack概念架构
1、逻辑架构
全局组件:keystone提供身份验证,ceilometer提供全局计量服务,horizon提供一个web管理界面,与openstack底层交互 核心组件:都是为虚拟机提供服务,需要neutron网络支持,glance镜像支持,swift&cinder存储支持,nova统一申请调用,最后提供给虚拟机做统一支持 外部组件:sahara&heat大数据用的,分别是数据编排和数据分析;ironic裸金属服务,trove数据库管理服务包含了sql数据库和nosql数据库
2、原生架构图
OpenStack包括若干个称为OpenStack服务的独立组件。所有服务均可通过一个服务的独立组件。所有服务均可通过一个公共身份服务进行身份验证。除了那些需要管理权限的命令,每个服务之间均可通要管理权限的命令,每个服务之间均可通过公共API进行交互。
每个OpenStack服务又由若干组件组成。包含多个进程。所有服务至少有一个API进程,用于侦听API请求,对这些请求进行预处理,并将它们传送到该服务的其他组件。除了认证服务,实际工作都是由具体的进程完成的
至于一个服务进程之间的通信,则通过AMQP消息代理,服务的状态存储在数据库中
二、组件之间的通信关系
基于AMQP协议通信
用于每个项目内部各个组件之间的通信
基于SQL的通信
用于各个项目内部的通信
基于HTTP协议进行通信
通过各项目的API建立的通信关系,API都是RESTful Web API
通过Native API实现通信
Openstack各组件和第三方软件之间的通信
三、openstack物理架构
1、物理架构
控制节点:管理openstack架构
网络节点:负责各节点之间的通信和交互
计算节点:承载实例负责具体需求的处理
存储节点:提供存储服务
2、网络节点
提供者网络(Provider networks)
自服务网络(Self-service networks)
四、openstack环境部署步骤
1、控制节点ct CPU:双核双线程-CPU虚拟化开启 内存:8G 硬盘:300G(CEPH块存储) 双网卡:VM1-(局域网)192.168.100.10 NAT-192.168.80.10 操作系统:Centos 7.6(1810)-最小化安装
2、计算节点c1 CPU:双核双线程-CPU虚拟化开启 内存:8G 硬盘:300G(CEPH块存储) 双网卡:VM1(局域网)-192.168.100.20
NAT-192.168.80.20 操作系统:Centos 7.6(1810)-最小化安装
3、计算节点c2 CPU:双核双线程-CPU虚拟化开启 内存:8G 硬盘:300G(CEPH块存储) 双网卡:VM1(局域网)-192.168.100.30 NAT-192.168.80.30 操作系统:Centos 7.6(1810)-最小化安装
PS:最小内存6G
【部署思路】 一、配置操作系统+OpenStack运行环境
二、配置OpenStack平台基础服务(rabbitmq、mariadb、memcache、Apache)
三、配置OpenStack keystone组件
四、配置OpenStack Glance组件
五、配置placement服务
六、配置OpenStack Nova组件
七、配置OpenStack Neutron组件
八、配置OpenStack dashboard组件
九、配置OpenStack Cinder组件
1)基础环境依赖包
yum -y install net-tools bash-completion vim gcc gcc-c++ make pcre pcre-devel expat-devel cmake bzip2 lrzsz
#OpenStack 的 train 版本仓库源安装 包,同时安装 OpenStack 客户端和 openstack-selinux 安装包 c1和c2都需要安装
yum -y install centos-release-openstack-train python