zoukankan      html  css  js  c++  java
  • OpenStack 物理资源问题

    Contents [hide]

    写在前面

     物理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'])*10
    hyp_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.

  • 相关阅读:
    代码规范总结
    git记住提交密码的技巧
    php foreach遍历
    flight学习笔记
    the resource is not on the build path of a php project
    Google安装postman插件
    PHP开发框架CodeIgniter
    eclipse中php项目开发的环境配置说明
    MyBatis入门篇
    mybatis学习(十二)——mybatis逆向工程
  • 原文地址:https://www.cnblogs.com/CLTANG/p/4332620.html
Copyright © 2011-2022 走看看