目录
一、Openstack是什么?
Openstack是一个云操作系统,控制着一个大规模(数据中心级别)的资源池,资源池包含计算、存储和网络。
给管理员提供一个仪表盘去控制资源池里所有资源,最终用户可以通过web页面下发(获得)这些资源。
二、云与操作系统
1、虚拟化与云计算
虚拟化是将物理资源分配给多个虚拟机,提高硬件资源利用率,重点在于分配物理资源的能力
云计算通过管理众多云虚拟机对外提供服务,重点在于提供服务。并且能够多租户之间隔离,按需使用、按量计费
2、操作系统功能
云也被当成操作系统,因为它也提供了:资源抽象、资源分配与负载调度、应用的生命周期管理、系统运维及人机交互等。
三、Openstack的定位
OpenStack只是云计算系统的控制面为了构建一个云,我们还需要很多东西
四、openstack的设计理念
开放
1.开源。
2.尽最大可能重用已有开源项目。
灵活
1.不使用任何不可替代的私有/商业组件(如华为云用GaussDB替代MySQL)。
2.大量使用插件化方式进行架构设计与实现。
可拓展
1.由多个相互独立的项目组成。
2.每个项目包含多个独立服务组件。
3.无中心架构。
4.无状态架构(高可用)。
三、Openstack部署
对于双机模式来说,可让vm流量和内部管理流量共一个网卡,故我们的实验环境为:
外网:ens33,即设置为nat模式的第一块网卡。
IP为192.168.1.x的设备。
内网:ens34(或ens37),即设置为仅主机模式的第二网卡。IP为20.0.0.x。
一、计算组件nova
OpenStack中提供计算资源服务的项目
Nova负责:
虚拟机生命周期管理
其他计算资源生命周期管理
Nova不负责:
承载虚拟机的物理主机自身的管理
全面的系统状态监控
Nova是OpenStack事实上最核心的项目
一、计算组件nova
API接收简单用户请求(开关虚拟机)->Compute(计算节点)处理请求
API接收复杂用户请求(创建虚拟机)->Conductor(指令器)->Scheduler(调度器)选择空闲的Compute->Conductor发送指令给Compute
Compute中实际执行指令的是Hypervisor(虚拟机监视器)
二、块存储服务组件cinder
为云平台提供统一接口,按需分配的,持久化的块存储服务。
核心功能是对卷的管理,允许对卷、卷的类型、卷的快照、卷备份进行操作。
为后端不同的存储设备提供了统一的接口,不同的块设备服务厂商在Cinder 中实现其驱动支持以与OpenStack进行整合。
用脚本安装openstack网络组件
实现思路
正确设置外网和管理网的网卡和IP地址,配置必须的组件的帐户和登录密码,以及虚拟网络。
一、卸载前面的安装的Openstack组件
#controller节点
执行在/usr/local/bin中的
iaas-uninstall-all.sh进行卸载
iaas-uninstall-all.sh
# compute节点
执行在/usr/local/bin中的