本节书摘来自华章出版社《VMware vCAT权威指南:成功构建云环境的核心技术和方法》一书中的第3章,第3.6节,作(美)VMware vCAT 团队,更多章节内容可以访问云栖社区“华章计算机”公众号查看
对于vCloud环境,资源计量是准确测量消费者使用情况、通过成本分摊策略塑造消费者行为所必不可少的。VMware vCenter Chargeback Manager提供了计量能力,在vCloud环境中实现了成本透明性和可审核性。
运行私有的vCloud时,企业没有必要承受和公共vCloud服务提供者相同的成本压力,可能并不存在必需的成本分摊规程或者策略。成本分摊的替代方式之一是成本分析(Showback),这一方法试图通过向消费者展示服务成本,提升对消耗和成本的意识,而不涉及要求消费者的部门支付账目的正式会计过程。
成本分摊提供成本透明性和可审核性,使消费者的行为与实际消耗资源成本保持一致。没有成本分析或者成本分摊,消费者就不会了解他们所消费资源的实际成本,从而不会受到激励去改变消费模式。vCloud计算资源可能很容易被消耗殆尽,除了描述资源租约的部署策略,没有什么阻碍或者惩罚措施能够遏制超量使用。计量能够揭示垄断vCloud资源的重点用户。
vCenter Chargeback Manager提供计量功能,对私有和公共vCloud环境中使用的资源进行测量、分析和报告。vCloud提供者可以配置并将多种定价模式关联到vCloud Director实体。vCenter Chargeback实现的成本透明度使vCloud提供者能够根据资源需求验证和调整财务模型。
vCenter Chargeback Manager基于Windows服务器运行vCenter Chargeback Web应用、负载平衡器和数据收集器服务。这些服务可以运行在不同的服务器上,以实现可伸缩性和弹性。这台服务器可以是虚拟机也可以是物理机器,建议采用如下规格:
2.0GHz或者更快的Intel/AMD x86处理器
4GB或者更多RAM
3GB磁盘存储
1Gbps以太网适配器
vCenter Chargeback Manager实例可以形成群集,为用户界面提供改进的性能和可用性。群集配置利用Apache负载平衡器,该程序与Chargeback软件捆绑。群集中的所有实例必须运行相同版本的Chargeback。Chargeback群集可以包含最多3台Chargeback服务器。根据并发用户的数量,确定群集中Chargeback实例的数量。
负载平衡采用双主机(Active-Active)方式。每个用户请求不管来自用户界面还是API,都通过负载平衡器路由。负载平衡器根据群集各个实例当前服务的请求数量,将请求转发给某个Chargeback实例。利用多个实例,Chargeback还通过内部的Quartz Scheduler为报告处理负载提供负载平衡。如果负载平衡器服务终止,可以重新启动Windows服务。内建的负载平衡器不能由第三方负载平衡器替代。群集中的所有Chargeback实例连接到同一个Chargeback数据库。
如果负载平衡器服务不可用,Chargeback Manager应用程序无法工作。如果一个群集实例上的Tomcat服务器终止,负载平衡器将请求重定向到其他群集实例。
对于负载平衡会话,启用粘性(Stickiness)。会话始终连接到一台vCenter Chargeback服务器。如果多个会话在用,适用如下算法:
1.负载平衡器使用请求数量寻找最好的工作机器。
2.访问根据滑动时间窗口中的lbfactor(这对于群集中的所有服务器都是相同的)分布。
下列属性的更多信息参见《The Apache Tomcat Connector-Reference Guide》(http://tomcat.apache.org/connectors-doc/reference/workers.html):
sticky_session=1(true)
method=R
图3.38展示了一个vCenter Chargeback群集。
多个Chargeback环境(分离vCenter Chargeback Manager和数据库)可以使用单一的vCloud Director实例,但是这增加了vCloud Director实例上的负载。
vCenter Chargeback数据库存储组织层次结构、成本/收费计划以及全局成本分摊配置数据。支持的数据库包括Microsoft SQL Server Express、Microsoft SQL Server和Oracle。数据库分区有助于改进vCenter Chargeback Manager的性能。vCenter Chargeback Manager不支持包含在vCenter用具内的数据库(DB2或者PostgreSQL)。
vCenter Chargeback Manager与vCloud Director的集成通过数据收集器处理。
Chargeback Manager数据收集器:连接到vCenter Server收集虚拟机指标。将导入的所有vCenter Server添加到vCloud Director,使Chargeback Manager能够看到虚拟机级别的细节。虚拟机不出现在vCloud层次结构中,直到Chargeback注册对应的vCenter Servers。
vCloud数据收集器:用vCloud API连接到vCloud Director实例并监视所有vCloud Director与成本分摊相关的事件。vCloud数据收集器用vCloud层次结构和分配单位信息填充Chargeback Manager数据库。
vCloud Networking and Security Manager数据收集器:连接到与vCloud相关的vCloud Networking and Security Manager实例,收集包含在vCloud层次结构中的网络的统计数字。
在单独的服务器上安装附加的vCloud Director或者vCloud Networking and Security Manager数据收集器可以提高可用性。多个数据收集器采用主-从配置工作。当一个实例终止,其他实例获得所有权并开始处理。Chargeback Manager环境可以有多个vCloud数据收集器,但是只能连接到一个vCloud Director实例。
默认的超级用户角色可以访问整个Chargeback应用程序。管理员角色对超级用户指定的资源有访问权限。类似地,由管理员创建的权限较少的用户只对这些管理员可见。例如,管理员A1不能访问管理员A2创建的用户,记住了这一点,管理员必须小心地创建和设计角色以及特权,这也可以扩展到LDAP用户和组。
表3.15列出了Chargeback Manager的最大限值。
为了跟踪vCloud实体的资源指标,vCenter Chargeback Manager根据vCloud Director配置的分配模式参数,在vCloud层次结构上设置分配单位。分配单位是与成本分摊指标相关的变量,表示资源分配的大小。表3.16列出了这些分配单位。
安装vCloud和vCloud Networking and Security Manager数据收集器创建了默认的成本模型和与vCloud Director和vCloud Networking and Security Manager集成的记账策略。记账策略控制按照使用的资源评估的成本。默认的vCloud记账策略根据vCPU、内存和存储的分配收费。成本时间间隔包括每小时、每天、每周、每季度、半年或者每年。
不要修改默认的账单策略和定价模型,而要建立拷贝并在复制品上进行修改。更多信息参见vCenter Chargeback Manager文档中的《User’s Guide》(用户指南,www.vmware.com/support/pubs/vcbm_pubs.html)。
费率因数(Rate Factor)允许对特定的可收费实体的基础成本进行缩放。用例包括如下。
促销费率:服务提供者为新客户提供10%的折扣。这并没有修改成本模型中的基础费率,而是应用0.9的费率因数,为客户降低10%的基础成本。
对特殊配置的费率:服务提供者决定使用费率因数,对特殊基础架构配置的客户实施不同的收费。
VM实例定价为vCPU和内存的固定组合指定固定的价格。虚拟机实例矩阵与定价模型相关。定价模型包含了层次化的选择条件、固定的价格表和默认的固定价格。选择条件选项包括名称模式匹配、自定义属性匹配或者无条件。
VM实例使用累进函数——如果特定的虚拟机规格没有对应的条目,收费根据下一个较大的实例规格进行。
vCenter Chargeback Manager 2.5推出了用于所有分配模式的VM实例定价。使用VM实例定价创建用于不同虚拟机组合的固定价格矩阵。
Chargeback可以为层次结构和实体生成成本、使用情况和比较报告。在生成报告时用相应的成本模型匹配实体或者层次结构。
Chargeback API可以将报告导出为XML。开发人员可以使用XSLT将原始XML转换为客户账单系统支持的格式。从Chargeback用户界面制作的报告可以使用PDF和XLS格式。可以创建具有只读权限的服务账户,从UI或者Chargeback API运行报告。
这篇文章我主要会介绍CodeBlocks与Visual Studio Code的调试功能,并简单介绍如何使用它。_codeblocks调试
String[] aa = "aaa|bbb|ccc".split("|");//String[] aa = "aaa|bbb|ccc".split("\\|"); 这样才能得到正确的字符串结果_分割符竖杠
最近移植dw1000的程序,把stm32f105版本移植到103版本上去。(1)发现两者的区别主要在于时钟上,具体请参考stm32 datasheet: 将始终改掉之后,SPI就可以运行stm32f103上了。(2)PA15和PB3默认是用于JLINK的,需要启用复用时钟,代码如下: RCC_APB2PeriphClockCmd( RCC_
armv6设备:iPhone, iPhone2, iPhone 3G,第一代、第二代iPod Toucharmv7设备:iPhone 3GS, iPhone 4, iPhone 4S iPad , iPad 2, the new iPad iPod Touch 3G, iPod Touch 4armv7s设备:...
对于很多 Web 开发人员来说,只需要生成简单的请求并接收简单的响应即可;但是对于希望掌握 Ajax 的开发人员来说,必须要全面理解 HTTP 状态代码、就绪状态和 XMLHttpRequest 对象。在本文中,Brett McLaughlin 将向您介绍各种状态代码,并展示浏览器如何对其进行处理,本文还给出了在 Ajax 中使用的比较少见的 HTTP 请求。
不知道大家是否非常羡慕C语言等在进行函数传参时,可以指定数据类型来传参呢?我之前有一篇讲过使用typing来指定数据类型,但是其仅仅是能指定数据类型,只能做一个提醒的作用,那么我们如何来结合typing模块,来写一个可以像Java等语言的指定参数类型呢?这里我推荐pydantic库。首先,在学这个库之前,我们需要去回顾一下typing然后,我们来解释一下我们即将要学的库:其使用 Python 类型注释的数据验证和设置管理。pydantic在运行时强制执行类型提示,并在数据无效时提供用户友好的错误。_pycharm如何导入pydantic
第一章 复数与复变函数一、复数1、复数域z=x+iyz=x+iyz=x+iyxxx实部(Rez\operatorname{Re} zRez)、yyy虚部(Imz\operatorname{Im} zImz)共轭复数、和、差、交换律、结合律、积、商全体复数引进上述运算后称为复数域,用CCC表示。2、复平面z=x+iyz=x+iyz=x+iy由有序数对(x,y)(x,y)(x,y)唯一确定。所以,可以由横坐标xxx【实轴】,纵坐标yyy【虚轴】的点来唯一确定复数z=x+iyz=x+iyz_复变函数 z = xy + i(x+y) 的图像
大家好,今天是我写博客的第一天,希望能够得到大家的喜欢与支持,这篇博客里,简单记录了一次缓冲区溢出的例子 有错误的地方,欢迎批评指正.环境:win7虚拟机,VS2010C语言源代码#include <stdio.h>void f(){ while(1) printf("f() is calling..................\n");}int main(){ int a[2]={0};/* printf("%08X\n",a); _asm{ mov [
Mozilla rr快速学习比GDB更加强大的调试工具说明:程序运行中,经常有一些段错误是无法复现的,可能在某些特定条件下才能触发,如多线程的执行顺序,gc操作等等,复现调试起来非常困难,而rr做的事情是,只要通过rr记录一次错误,可以无限次调试,并且每次调试都和段错误发送情况一模一样官..._gdb warning: corrupted shared library list:
A 试题 算法训练 寻找数组中最大值难度:简单提交此题 评测记录资源限制时间限制:1.0s 内存限制:512.0MB问题描述对于给定整数数组a[],寻找其中最大值,并返回下标。输入格式整数数组a[],数组元素个数小于1等于100。输出数据分作两行:第一行只有一个数,表示数组元素个数;第二行为数组的各个元素。输出格式输出最大值,及其下标样例输入33 2 1样例输出3 0解题思路:直接暴力遍历比较值并记录下标即可。代码如下。#include<bits/s
1.math对象:Math对象下的属性和方法都是静态Math.ceil(x)---向上取整Math.floor(x)---向下取整Math.Pi----圆周率的值Math.Max(num1,num2,...)---一组数字中的最大值Math.Min(num1,num2,...)---一组数字中的最小值Math.abs(x)----绝对值Math.random---随机数字(范围0~1..._s四大内置对象教过的所有属性和方法(math、string、array、date)
OPENCV学习笔记 - Harris Corner Detection (角点检测)原理代码结果原理牵涉到泰勒公式,特征向量特征值,PCA(这里暂且没有研究),正定矩阵性质https://www.youtube.com/watch?v=WyrVzTRZuXA&t=1413s感谢这个youtuber清晰的解释!有忘记线代原理的同学可以移步下面是我的笔记(乱糟糟乱糟糟代码...