将设为首页浏览此站
开启辅助访问 天气与日历 收藏本站联系我们切换到窄版

易陆发现论坛

 找回密码
 开始注册
查看: 8646|回复: 4
收起左侧

OpenStack 物理资源超荷配置

[复制链接]
发表于 2018-12-1 03:42:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?开始注册

x
物理CPU核数为12,能虚拟多少虚拟核的机器?openstack的默认使用nova hypersisor-stats获取到的vcpus值就是24(超线程),而虚拟内核和机器的内核数不是一一对应的。openstack的自有设置 openstack的配置文件/etc/nova/nova.conf中有配置#cpu_allocation_ratio=16.0#disk_allocation_ratio=1.0#ram_allocation_ratio=1.5
分别的都是真实内核和虚拟内核(16:1),真实内存和虚拟内存(1.5:1),真实磁盘盒虚拟磁盘(1:1)的比例,说明openstack是清楚的表示我们的vcpus应该是一个虚拟内核数,而不是计算节点的真实内核数。
解决办法
按照openstack提供的patch解决:https://review.openstack.org/#/c/93168/ 其实主要原理就是将我们的配置文件的值*真实内核,内存,得到我们的vcpu,vmemory,vdisk.
最终解决办法
没有按照官方的解决办法,因为官方的解决版本测试版本不正确。使用我们自己的解决办法。 实际解决办法: 在/usr/lib/python2.6/site-package/nova/api/openstack/compute/contrib/hypervisors.py的 245行加上:
stats['vcpus'] = int(stats['vcpus']*10)stats['memory_mb'] = int(stats['memory_mb']*1.2
143行加上:
hyp_dict['vcpus'] = int(hyp_dict['vcpus'])*10hyp_dict['memory_mb'] = int(hyp_dict['memory_mb'])*1.2
重启所有控制节点的nova-api服务,然后再查看结果,执行结果:
[root@node-5 nova]# nova hypervisor-show 1+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| Property             | Value                                                                                                                                                                                                                                                                                           |+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| hypervisor_hostname  | node-12.domain.tld                                                                                                                                                                                                                                                                              || cpu_info             | {"vendor": "Intel", "model": "SandyBridge", "arch": "x86_64", "features": ["pdpe1gb", "osxsave", "dca", "pcid", "pdcm", "xtpr", "tm2", "est", "smx", "vmx", "ds_cpl", "monitor", "dtes64", "pbe", "tm", "ht", "ss", "acpi", "ds", "vme"], "topology": {"cores": 6, "threads": 2, "sockets": 1}} || free_disk_gb         | 1167                                                                                                                                                                                                                                                                                            || hypervisor_version   | 1002001                                                                                                                                                                                                                                                                                         || disk_available_least | 1105                                                                                                                                                                                                                                                                                            || local_gb             | 3667                                                                                                                                                                                                                                                                                            || free_ram_mb          | -62869                                                                                                                                                                                                                                                                                          || id                   | 1                                                                                                                                                                                                                                                                                               || vcpus_used           | 125                                                                                                                                                                                                                                                                                             || hypervisor_type      | QEMU                                                                                                                                                                                                                                                                                            || local_gb_used        | 2500                                                                                                                                                                                                                                                                                            || memory_mb_used       | 256512                                                                                                                                                                                                                                                                                          || memory_mb            | 193643                                                                                                                                                                                                                                                                                          || current_workload     | 0                                                                                                                                                                                                                                                                                               || vcpus                | 240                                                                                                                                                                                                                                                                                             || running_vms          | 21                                                                                                                                                                                                                                                                                              || service_id           | 25                                                                                                                                                                                                                                                                                              || service_host         | node-12.domain.tld                                                                                                                                                                                                                                                                              |+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
可以看到,1这个计算节点的vcpus数目成了240.
发表于 2018-12-1 04:07:02 | 显示全部楼层
就个人目前所知,L版有3种方式配置cpu的超配比。当然有什么错误之处,还请见谅!
6 ~( \9 j  g& U* X0 P+ c7 _
! D7 j& n& @6 \( |( Y; s" w) O" ]" Q
& Y+ Y' i, ]- u1 \+ W5 i" o1 n1 V& ~" P  {
0 ^% v# j* l' e- S7 T* J5 Y* ya、AggregateCoreFilter的cpu_allocation_ratio metadata key
* _1 d# W* @: F( z4 I! k  I* k; F$ ?* C8 d
     使用:nova aggregate-set-metadata 1 cpu_allocation_ratio=2.0
' A3 K- V. e7 V/ d8 q4 U" K! u) a9 m5 {
b、compute node的配置文件nova.conf支持cpu_allocation_ratio参数设置
6 x; b5 n4 K0 e% u) u
( E0 G" ^( {+ Ac、原本的controller node nova.conf的cpu_allocation_ratio参数设置
- p; \" J! |2 D  G5 D/ c7 V+ P0 N2 H( U

9 K( p+ N/ l* L- U/ F- k" P% f& f$ G' C" [1 C2 @) `
优先级:a > b > c
发表于 2018-12-1 04:08:36 | 显示全部楼层
(1).版本:opensatck N版本# o9 D& J$ ]6 f

/ n: U' T. Z+ A+ C& `8 f(2).kolla-ansible部署的云平台
3 D$ ]2 v7 F. C9 `. Y# n6 M7 o. G. H' w2 m( F! V' B9 E* o% n
方法如下:2 u' ?/ W4 M& V- w  z( _

: T/ q* v- R3 |; l修改nova-schelder下nova.conf配置文件,添加一条信息:cpu_allocation_ratio=4.0 。还需要在schler调度原则上加一条规则:corefilter。然后重启nova-schelder 容器则生效。
$ W1 P6 ^7 M# L$ u' `6 k- H4 h: B4 I" r' _/ y5 g2 h; A; ]
8 s$ h: Y9 ]: l: O/ }6 I
; `0 c& \/ S. ]* s* v8 o; c
(3).非容器部署的N版本opensatck。
' g: W+ t' D2 ]. c# N5 {5 p
% G  p. G# ], |2 t$ r0 |同以上(2),直接修改nova.conf配置文件 重启nova相关服务则生效。3 y/ [2 L; ^. u% \" _0 ?, X
---------------------
( m  [( C( W7 M4 k* |! b
发表于 2018-12-9 09:57:49 | 显示全部楼层
total_usable_ram_mb为物理主机所能提供的物理内存,如4G,8G,ram_allocation_ration为内存超额分配 系数,在nova.conf中设置。openstack默认超额分配系数为1.5。free_ram_mb为主机剩余内存值,该值可为负数。 used_ram_mb为以分配内存,一般为该主机上已创建虚拟机内存总和。memory_mb_limit为超额后的内存,当剩余可以可用的 useble_ram内存小于虚拟机的创建时所需内存时,表示该主机无法创建虚拟机,系统将不会选择该主机创建虚拟机。
 楼主| 发表于 2018-12-20 10:33:42 | 显示全部楼层
默认OpenStack的CPU超配比例是1:16,内存超配比例是1:1.5。下面配置的就是这个比例,你可以自己算一下,cat /proc/cpuinfo里面的逻辑核数,再x16就是你能够分配给虚拟机的。内存也是类似。
; N8 y( b9 R! g8 C1 ^6 {4 `; H#cpu_allocation_ratio=16.0
# s# l2 b, v' Q# @4 B2 _4 d& |; [0 g 4 m% S* Q) Y- C5 f; U6 S
#ram_allocation_ratio=1.5
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

如有购买积分卡请联系497906712

QQ|返回首页|Archiver|手机版|小黑屋|易陆发现 点击这里给我发消息

GMT+8, 2023-2-1 01:30 , Processed in 0.047286 second(s), 22 queries .

Powered by LR.LINUX.cloud bbs168x X3.2 Licensed

© 2012-2022 Comsenz Inc.

快速回复 返回顶部 返回列表