OpenStack视图
OpenStack视图是个全局资源的概念,统计了OpenStack所纳管资源的总量和使用量,因此OpenStack视图的资源通常又称为物理资源。OpenStack基于该资源使用以及分布情况进行调度。当资源不足时,将导致虚拟机调度失败,用户请求不会报错,但虚拟机状态为ERROR。 但是需要注意的是,OpenStack视图的资源是按分配量计算的,而不是按照实际使用量统计。比如用户申请了一台2C 4GB的云主机,但该云主机关机了,此时云主机实际上并不占用任何CPU和内存,但OpenStack在统计中还是需要减去2C 4GB资源。对于OpenStack来说,已经分配的资源,不管用户究竟有没有在使用,除非删除,否则不会被回收,也不能被其他虚拟机抢占。 OpenStack统计的资源总量在不超售的情况下等于所有物理资源总和,但如果设置了超售,OpenStack实际分配的资源可能大于资源总量。 OpenStack Nova通过hypervisor-stats查看整个集群的资源使用情况:

~/int32bit # nova hypervisor-stats
+----------------------+---------+
| Property | Value |
+----------------------+---------+
| count | 18 |
| current_workload | 0 |
| disk_available_least | 3617 |
| free_disk_gb | 1562 |
| free_ram_mb | 1018842 |
| local_gb | 4452 |
| local_gb_used | 2890 |
| memory_mb | 4322820 |
| memory_mb_used | 3303978 |
| running_vms | 291 |
| vcpus | 561 |
| vcpus_used | 1148 |
+----------------------+---------+
需要注意的是,以上统计的是整个集群的物理资源,而不是单个计算节点的资源,这意味着并不是总量满足请求资源就可以调度,可能存在资源碎片导致调度虚拟机失败。比如,假设有20台计算节点,每个计算节点剩余2GB内存,统计总量内存剩余量为2GB * 20 == 40GB,但用户若申请一台4GB内存的虚拟机调度仍然会失败,原因是没有任何一个计算节点满足内存资源。

要查看单个计算节点的资源可以使用hypervisor-show子命令:

~/int32bit # nova hypervisor-show 1
+---------------------------+-----------------+
| Property | Value |
+---------------------------+-----------------+
| free_disk_gb | 561 |
| free_ram_mb | 58978 |
| local_gb | 1181 |
| local_gb_used | 620 |
| memory_mb | 262002 |
| memory_mb_used | 203024 |
| vcpus | 32 |
| vcpus_used | 86 |
|... | ... |
+---------------------------+-----------------+

OpenStack视图的更多相关文章

  1. 理解 OpenStack Swift (3):监控和一些影响性能的因素 [Monitoring and Performance]

    本系列文章着重学习和研究OpenStack Swift,包括环境搭建.原理.架构.监控和性能等. (1)OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置 ( ...

  2. OpenStack Networking overview

    原文地址:http://docs.openstack.org/newton/install-guide-ubuntu/neutron-concepts.html Networking service ...

  3. [译]OpenStack Object Storage Monitoring

    注:翻译的不完整,主要是有些地方翻译后反而妨碍理解,有些不知道怎么翻,anyway,需要时拿来用用也是可行的,顺便共享啦.欢迎提意见. 一个OpenStack Object Storage(OSOS) ...

  4. Openstack的dashboard开发之【浏览器兼容性】

    完全不支持浏览器: ie9(含)以下ie低版本浏览器及使用ie低版本浏览器的内核的扩展浏览器,如360安全浏览器(内核ie6) 原因:不支持vnc(需要浏览器支持才有vnc功能),jquery也不在支 ...

  5. [转]使用eclipse+pydev远程调试OpenStack

    作者:张华  发表于:2014-01-17版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明 ( http://blog.csdn.net/quqi99 ) 1, ...

  6. Namespace:Openstack的网络实现

    前言:众所周知在linux系统中PID.IPC.Network等都是全局性的资源,不论什么的改动和删减都会对整个系统造成影响.这也是为什么kvm之类的虚拟化技术须要模拟一个完毕主机系统的原因. 可是. ...

  7. OpenStack最新版本Folsom架构解析

    OpenStack最新版本Folsom架构解析摘要:OpenStack的第6版,版本代号为Folsom的最新版于今年九月底正式发布,Folsom将支持下一代软件定义网络(SDN)作为其核心组成部分.F ...

  8. 【django基础补充之URL,视图,模版】

    一.url路由配置 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于这个URL调用这段代 ...

  9. openstack项目【day23】:keystone组件HTTP协议

    阅读目录 一 为何要学习HTTP协议 二 用户上网过程 三 HTTP协议 part1 http协议概述 part2 请求协议 part3 响应协议 四 抓包分析HTTP协议 一 为何要学习HTTP协议 ...

随机推荐

  1. C#之使类型参数--泛型

    1.泛型是什么 泛型的就是“通用类型”,它可以代替任何的数据类型,使类型参数化,从而达到只实现一个方法就可以操作多种数据类型的目的. 2.为什么使用泛型 举一个比较两个数大小的例子: 以上例子实现in ...

  2. Java开发笔记(八十六)通过缓冲区读写文件

    前面介绍了利用文件写入器和文件读取器来读写文件,因为FileWriter与FileReader读写的数据以字符为单位,所以这种读写文件的方式被称作“字符流I/O”,其中字母I代表输入Input,字母O ...

  3. Android Material Design控件使用(四)——下拉刷新 SwipeRefreshLayout

    使用下拉刷新SwipeRefreshLayout 说明 SwipeRefreshLayout是Android官方的一个下拉刷新控件,一般我们使用此布局和一个RecyclerView嵌套使用 使用 xm ...

  4. 解决PostGIS打开shp文件输入输出模块出现"找不到文件libintl-9.dll"的问题

    找到shp2pgsql-gui.exe这个程序的目录 复制一份libintl-8.dll副本,改名为libintl-9.dll即可.

  5. 基于geotools的(两个)SHP要素变化提取方法预研

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1. 背景 我们用遥感的手段进行卫星特征提取.多幅影像间的特征变化提取的 ...

  6. python在sqlite动态创建表源码

    代码之余,将开发过程中经常用的代码片段备份一下,如下的代码是关于python在sqlite动态创建表的代码,应该能对各位有所用. import sqlite3 as db conn = db.conn ...

  7. qt生成二维码

    到官网下载qrencode http://fukuchi.org/works/qrencode/index.html.en qrenc.c不用,这个是测试用的,把config.h.in文件改为conf ...

  8. Scrum笔记

    Scrum的笔记,需要的童鞋拿去,有错漏处请指正,谢谢. 出处:https://www.cnblogs.com/Ryu666/p/9890609.html

  9. 用 Python 描述 Cookie 和 Session

    这篇文章我们来聊聊Cookie和Session,网上有很多关于这两个知识点的描述,可惜的是大部分都没有示例代码,因此本文的重点在于示例代码. 环境 Python3.6.0 Bottle0.12.15 ...

  10. SQLServer之删除用户定义的数据库角色

    删除用户定义的数据库角色注意事项 无法从数据库删除拥有安全对象的角色. 若要删除拥有安全对象的数据库角色,必须首先转移这些安全对象的所有权,或从数据库删除它们. 无法从数据库删除拥有成员的角色. 若要 ...