初识openstack之3——opsenstack概念及实验环境介绍

前言

本系列文档按照openstack官方queens版本安装文档进行讲解,目的是通过搭建一个测试环境的openstack对其有更深入的了解。

一、openstack概念

openstack可以理解为一个云操作系统,他是将底层的物理资源抽象成一个资源池,而其上运行着每一个虚拟机(也成为实例)不需要关心自己具体在哪一个物理主机上,openstack根据其类型可以分为IaaS、PaaS、SaaS,下图是openstack的3种类型与传统架构的比较用图:

在传统架构中企业上线一套应用,从底层的硬件、网络、存储到上层应用都需要自己维护。IaaS是为客户节省了物理主机以下的成本,直接为客户提供了一个安装好的操作系统,可以在其上安装自己的应用。PaaS则更进一步的为用户提供了应用程序所需要的环境,客户只需要在其上部署应用系统。SaaS是所有的环节都由供应商提供,客户只需要有一个可以访问互联网的接口就能使用,比如office365。

二、openstack的组成

openstack是有apache软件基金会支持的开源项目,由核心组件和可选组件组成,openstack架构如下图:

其中红色框中的为核心组件,其功能为:

  1. Keystone:提供所有组件的认证及编目,按照openstack的通信流程,所有组件之间是通过消息队列异步通信,每一个组建都需要先与Keystone通信的原因就是除了认证之外还需要在Keystone处查询其他组建的API接口。
  2. Glance:为实例提供映像文件,映像文件可以存放在本地磁盘上,也可以是类似于swift的对象存储上,此处需要说明的是,每一个实例在启动时是先将映像文件下载到该实例所在节点的本地磁盘后才进行启动,当实例结束时,映像下载到本地磁盘的映像文件也随之销毁。
  3. Nova:计算节点,为没一个实例提供具体的资源。
  4. Neutron:提供网络功能,openstack最复杂的组建当属网络组件,后续中会有详细介绍。

以上是openstack的4个核心组件,用的比较多的2个可选组件为:
1.Cinder:通过上面知道当实例关闭时通过Glance下载到本地磁盘的映像文件会随着一并销毁,Cinder就是提供存放持久数据的组建。
2.Horizon:提供一个控制面板,便于管理。

另外除了上述openstack组件外,openstack的实现还需要借助于额外的组件,例如RabbitMQ,MariaDB等,逻辑结构如下图所示:

三、opsenstack间的通信

组件之间通过API相互通信,组建内部则是通过RPC(远程调用)通信,以启动一个实例进行说明,其通信的步骤为:

  1. 用户发起认证请求;
  2. Keystone认证后根据用户的角色返回令牌;
  3. 用户拿着令牌向Nova节点发起请求;
  4. Nova节点验证令牌后向Glance节点发起下载映像文件请求;
  5. Glance节点验证后将映像文件发送至Nova节点本地磁盘;
  6. Nova节点启动映像文件后在向Neutron节点发起网络连接请求;
  7. Neutron节点验证后为实例创建虚拟网络设备,并将结果反馈给Nova节点,需要注意的是,当实例结束后,创建的虚拟网络设备也会跟着销毁;
  8. Nova节点给用户反馈实力启动完成。

有上述过程可以看到,每一个组件都会先于Keystone进行通信,从而进行认证和获取其他相关组件的API。

四、实验说明

本次实验按照官方手册说明进行,采用2节点方式,后期会引入第3个节点用于安装Cinder组件,节点配置要求如下:

此实验架构与标准最小化的openstack生产架构区别在于:

  1. 网络代理安装在控制节点上,生产环境中Neutron节点应该由1个或多个物理机组成。
  2. 在self-service网络模式下,流量走的是管理网络,升级生产环境中,所有实例的流量都会经过Neutron节点,所以该节点的性能和带宽要足够大。

五、实验拓扑

原文地址:http://blog.51cto.com/arkling/2133779

时间: 2024-10-28 16:06:01

初识openstack之3——opsenstack概念及实验环境介绍的相关文章

初识openstack之4——opsenstack安装前准备

一.实验说明 按照官方文档搭建queens版本openstack,拓扑如下图所示: 二.实验目的 准备好openstack组件安装前所需要的其他软件,如MariaDB,RabbitMQ等. 三.操作步骤 修改所有节点/etc/hosts文件 如果hosts文件中有将主机名解析到127.0.0.1的配置段,将其注销 所有节点关闭NetworkManager [[email protected] ~]# systemctl stop NetworkManager.service [[email pr

openstack学习笔记:Kvm基础实验环境

系统:centos7.1 安装环境:桌面环境.kvm基础服务 一.关闭selinux [[email protected] ~]# setenforce 0 [[email protected] ~]# sed -i 's/enforcing/disabled/g' /etc/selinux/config 二.关闭iptables [[email protected] ~]# systemctl stop firewalld [[email protected] ~]# systemctl di

Oracle学习笔记之第一节实验环境介绍及推送过程

1.下载bcpserver,通过VMware Workstation 打开虚拟机 2.vim /usr/sbin/workstation.list 修改配置文件,把对应的IP和MAC绑定,此程序最多只能写前90个IP 3.botang-create-dhcpconf 通过此命令调用server dhcpd restart命令. 4.新建一台OCP虚拟机,虚拟机硬盘大小必须设置63G才能顺利完成安装,不拆分文件. 5.设置虚拟机通过网卡PXE启动(虚拟机默认就是PXE启动,物理机需要进BIOS设置

如何利用PC机搭建综合实验环境之Vmware workstation篇

无论学习windows还是linux,还是学习这些系统上的应用,我们都需要一台甚至多台服务器.但一台服务器动辄上万元,做为正在学习的学生或个人根本无力购买.况且一些实验不止需要一台,还需要多台服务器.再加上供电等因素,个人买服务器来做实验真的是不可能的事情.但不通过实验的话又很难将知识串联起来,实践是检验真理的唯一标准.因此,今天我们来讲如何通过一台PC模拟多台服务器.PC,并且模拟交换机.路由器.防火墙.AAA服务器,最后将交换机,路由器.防火墙.服务器连接起来,搭建成一个综合的实验环境,完成

基于 Docker 快速构建 Linux 0.11 实验环境

by Falcon of TinyLab.org 2015/05/02 简介 五分钟内搭建 Linux 0.11 的实验环境介绍了如何快速构建一个 Linux 0.11 实验环境. 本文介绍如何快速构建一个独立于宿主机的 Linux 0.11 实验环境,该实验环境可以用于任何操作系统的宿主开发机,将非常方便各类学生学习 Linux 0.11,本文只介绍 Ubuntu.在 Windows 和 Mac 下可以用 VirtualBox + Boot2Docker 来启动. 下文要求已经安装 git 和

1.PL/SQL——准备工作和实验环境简介

一.准备工作 本机采用的是CentOS6.5的操作系统,安装的是Oracle 11g的数据库,安装过程并不复杂,可上网搜索.成功安装数据库之后,使用oracle用户登陆系统,然后在命令行输入以下命令: [[email protected]~]$ cd $ORACLE_HOME/bin # 进入/home/oracle/bin目录 [[email protected]]$ lsnrctl start  -- 打开监听(如果监听已经开启了,则忽略此步骤) LSNRCTL for Linux: Ver

准备 KVM 实验环境 - 每天5分钟玩转 OpenStack(3)

KVM 是 OpenStack 使用最广泛的 Hypervisor,本节介绍如何搭建 KVM 实验环境 安装 KVM 上一节说了,KVM 是 2 型虚拟化,是运行在操作系统之上的,所以我们先要装一个 Linux.Ubuntu.Redhat.CentOS 都可以,这里我们以 Ubuntu14.04 为例. 基本的 Ubuntu 操作系统装好之后,安装 KVM 需要的包 $ sudo apt-get install qemu-kvm qemu-system libvirt-bin virt-mana

搭建 OpenStack 实验环境 - 每天5分钟玩转 OpenStack(16)

在学习 OpenStack 各服务之前,让我们先搭建起一个实验环境. 毋庸置疑,一个看得到摸得着而且允许我们随便折腾的 OpenStack 能够提高我们的学习效率. 因为是我们自己学习用的实验环境,CloudMan 推荐使用 DevStackhttp://docs.openstack.org/developer/devstack/DevStack 丰富的选项让我们能够灵活地选取和部署想要的 OpenStack 服务,非常适合学习和研究. 部署拓扑 首先我们来设计 OpenStack 的部署拓扑.

初识OpenStack(1)

初识OpenStack(1) 首先 先来说说我与openstack的渊源吧,那是在上个月中旬,学张的一个朋友给我打电话说让一起来搞一个云平台,当时也不知道是什么,就很高兴的答应下来了,到了周末,就过去聊关于平台怎样搭建的事情了,却发现无从着手,也就是这一次,才第一次听说了openstack这个名词,于是就在网上买了<OpenStack设计与实现>这本书,开始简单的了解关于这个项目,在上周三,还去参加了一下关于OpenStack的分享会,这次才算对云计算,以及'云'方面的知识才有所了解,也同时,