欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

OpenStack初始化浅析

程序员文章站 2022-09-24 15:43:13
目前的openstack的部署工具已经很完备了,尤其是kolla,至少可以满足目前的各种需求。在部署安装的问题解决后,我们对日后如何用好openstack就需要做一下研究。...

目前的openstack的部署工具已经很完备了,尤其是kolla,至少可以满足目前的各种需求。在部署安装的问题解决后,我们对日后如何用好openstack就需要做一下研究。这里整理一下目前所关注和思考的问题,也是openstack交付给用户时我们要回答的问题。

cpu和内存超分比例

经常有人问我,一台机器可以虚拟出多少台虚拟机。对于这个问题,我的答案永远都是:it depends。完全取决于你,从1个到100,都是可能的。

openstack默认的cpu超分比例是16:0,内存是1.5:0。那么在生产环境如何配置呢?这个需要认真考虑,不同的openstack使用场景确实区别很大。

对于开发环境,16倍的超分比例,很可能也跑的很好。内存也可以超分。而目前看到的生产环境中,稳妥的做法是4:0超分比例,内存不超分,这样的做法比较普遍。

这里面要简单介绍一下kvm计算cpu超分的计算方式。一颗物理cpu,是12core,超线程,那么就是24core,如果我们不做任何的超分,1.0,那么就是24个core,创建4core的虚拟机,可以创建6个。如果我在参数里设置的cpu超分比例是4.0,那么就有24*4=96core,对于4core的虚拟机,我就可以创建出24个。

cpu和内存预留

对于计算节点的cpu和内存,需要保留多少,尤其现在超融合架构下,保留多少比较合适,都是比较争议的问题,不同的软件版本,不同的硬件条件,结果都会不同。

对于超融合架构,采用ssd,以前是需要专门做cpu的预留和绑定,不过现在好像很少人谈及这个问题。不过一般习惯,大家都是内存保留4g,现在内存比较便宜,4g内存跑计算节点各种服务,问题不大。

cpu的预留多少给主机使用,这个参数很多环境下都不设置,不做任何的保留。

flavor

一般开始的时候,很少考虑flavor该如何设置,不过真正使用起来,flavor问题其实很多,因为一旦flavor有虚拟机使用,你就无法删除和修改,这样如果你对flavor做任何操作,都会导致虚拟机产生各种问题。因此openstack默认初始化的flavor,在实际中应该做调整。

目前openstack支持startfragment 专门租户设置特别flavor,所以我们建议生产环境设置2个flavor

1.    4core+8g内存

2.    8core+16g内存

3.    1core+2g内存

第三个flavor,主要目的是测试使用。日常用户使用2个flavor应该就足够了。

这个其实也需要考虑主机的内存到底多少是最合适。如果机器是512g内存,16g内存的虚拟机可以创建32个,减掉系统保留内存,30个虚拟机是没啥问题的。

对于core来说,我们就需要240个core。如果一个cpu是15个core,超分比例是4,那么就基本够用。从成本角度,15个core的cpu很贵,通常12core的cpu比较合算。

镜像

这个很重要,不过过去私有云的镜像制作都很不正规,导致很多问题。一个linux的openstack镜像,其实是需要做很多工作,用户用起来才会感觉好用。

1.    上传镜像,必须指定内存和硬盘的最小要求,这样可以避免很多用户出错

2.    上传qcow2,转换成raw格式

3.    只提供最小化安装的linux镜像(centos 7.2,centos 7.3,ubuntu 16.04)

4.    集成qemu agent

5.    关闭selinux

6.    不设置wap分区

7.    加快ssh速度,设置ssh不用dns

8.    指定源,加快速度

9.    可以设置密码

对于openstack特殊服务,例如ironic,sahara,trove,其实还需要特殊的定制的镜像。

镜像上传,只能让管理员上传。

租户和计费

很多情况下,为了方便,创建用户时都分配管理员权限,导致很多管理问题。还是应该要求一个租户一个用户对应。这样好管理,不能那么随意。

对于租户,要启用计费系统才能了解到资源是如何消耗掉的。