openstack参数调优

###Nova关键参数调优:

vcpu_pin_set 建议值是预留前几个物理 CPU,把后面的所有 CPU 分配给虚拟机使用

cpu_allocation_ratio = 4.0 物理 CPU 超售比例,默认是 16 倍,超线程也算作一个物理 CPU,需要根据具体负载和物理 CPU 能力进行综合判断后确定具体的配置

ram_allocation_ratio = 1.0 内存分配超售比例,默认是 1.5 倍,生产环境不建议开启超售。

reserved_host_memory_mb = 4096 内存预留量,这部分内存不能被虚拟机使用

reserved_host_disk_mb = 10240 磁盘预留空间,这部分空间不能被虚拟机使用

service_down_time = 120 服务下线时间阈值,默认60,如果一个节点上的 nova 服务超过这个时间没有上报心跳到数据库,api 服务会认为该服务已经下线,如果配置过短或过长,都会导致误判。

rpc_response_timeout = 300 RPC 调用超时时间,由于 Python 的单进程不能真正的并发,所以 RPC 请求可能不能及时响应,尤其是目标节点在执行耗时较长的定时任务时,所以需要综合考虑超时时间和等待容忍时间。

multi_host = True 是否开启 nova-network 的多节点模式,如果需要多节点部署,则该项需要设置为 True。

###keystone关键参数调优:

主要是用来来存储 token,一般是 SQL 数据库,也可以是 memcache。sql 可以持久化存储,而 memcache 则速度更快,尤其是当用户要更新密码的时候,需要删除所有过期的 token,这种情况下 SQL 的速度与 memcache 相差很大很大。

###glance关键参数调优:注意包括glance-api 和 glance-registry

workers = 2 glance-api 处理请求的子进程数量,如果配置成 0,则只有一个主进程,相应的配置成 2,则有一个主进程加 2 个子进程来并发处理请求。建议根据进程所在的物理节点计算能力和云平台请求量来综合确定。

api_limit_max = 1000 与 nova 中的配置 osapi_max_limit 意义相同

limit_param_default = 1000一个响应中最大返回项数,可以在请求参数中指定,默认是 25,如果设置过短,可能导致响应数据被截断。

##openstack底层依赖软件版本、配置以及调优

1.虚拟化技术选型

我们选用的是 Linux 内核兼容最好的 KVM 虚拟化技术。相对于 Xen 虚拟化技术,KVM 虚拟化技术与 Linux 内核联系更为紧密,更容易维护。选择 KVM 虚拟化技术后,虚拟化管理驱动采用了 OpenStack 社区为 KVM 配置的计算驱动 libvirt,这也是一套使用非常广泛,社区活跃度很高的一套开源虚拟化管理软件,支持 KVM 在内的各种虚拟化管理。

2.CPU配置优化CPU0 由于处理中断请求,本身负荷就较重,不宜再用于云主机。因此,综合上面的因素考虑以及多轮的测试验证,我们最终决定将 0-3 号 CPU 预留出来,然后让云主机在剩余的 CPU 资源中由宿主机内核去调度。

3.内存配置优化

echo 0 > /sys/kernel/mm/ksm/pages_shared

.echo 0 > /sys/kernel/mm/ksm/pages_sharing

echo always > /sys/kernel/mm/transparent_hugepage/enabled

echo never > /sys/kernel/mm/transparent_hugepage/defrag

echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag

4.IO配置优化#磁盘IO调优KVM 的 disk cache 方式:借鉴 IBM 的分析,网易私有云采用 none 这种 cache 方式

5.网络IO调优我们主要是开启了 vhost_net 模式,来减少网络延时和增加吞吐量

  • 9
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
对于OpenStack中的RabbitMQ参数,以下是一些建议: 1. 内存设置:RabbitMQ使用内存作为缓存,可以通过修改RabbitMQ的配置文件(通常位于/etc/rabbitmq/rabbitmq.conf)来整内存限制。可以根据系统资源和需要进行整,确保分配足够的内存给RabbitMQ进程。 2. 磁盘设置:RabbitMQ使用磁盘来存储消息和元数据。为了提高性能,建议将RabbitMQ的数据目录放置在高性能磁盘上,并保证有足够的可用磁盘空间。可以通过修改RabbitMQ的配置文件来指定数据目录的位置。 3. 连接数设置:RabbitMQ默认限制连接数和每个连接的并发数。如果系统中有大量的客户端连接或者消息处理需求很高,可以通过修改RabbitMQ的配置文件来增加连接数和并发数的限制,以满足高并发的需求。 4. 消息确认方式设置:RabbitMQ提供了多种消息确认方式,包括ack、nack和reject。根据具体的业务需求,可以选择合适的消息确认方式。例如,对于性能要求较高的场景,可以选择批量确认方式。 5. 长连接设置:RabbitMQ默认采用长连接方式,即客户端和RabbitMQ之间保持持久化的TCP连接。对于高负载场景,可以考虑使用连接池技术来管理连接,从而减少连接的创建和销毁开销。 6. 高可用设置:如果需要提高RabbitMQ的可用性和容错性,可以考虑使用RabbitMQ的集群和镜像队列功能。集群可以将消息分布在多个节点上,提供更高的可用性;镜像队列可以将消息复制到多个节点上,提供更高的数据冗余和容错性。 以上是一些常见的RabbitMQ参数建议,具体的策略还需要根据实际情况进行整和化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值