OpenStack的性能调优工具 - osprofiler

简介

osprofiler是专门针对OpenStack的性能调优工具,采集到的信息可以存入ceilometer、redis、mongodb、elasticsearch等后端,默认存储在ceilometer中。

安装

还是以devstack方式先安装个OpenStack出来,上个local.conf配置文件(性能信息存入ceilometer)

[[email protected] devstack]$ cat local.conf
[[local|localrc]]
# use trystack git mirror
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=
# enable panko, panko provides event storage for ceilometer now.
enable_plugin panko http://git.trystack.cn/openstack/panko
enable_plugin ceilometer http://git.trystack.cn/openstack/ceilometer
enable_plugin osprofiler http://git.trystack.org/openstack/osprofiler master
#CEILOMETER_BACKEND=mongodb
RECLONE=no
# add profiler topic
CEILOMETER_NOTIFICATION_TOPICS=notifications,profiler
# define osprofiler hmac keys
OSPROFILER_HMAC_KEYS=swordfish,foxtrot,charlie
enable_service ceilometer-api
PANKO_BACKEND=mongodb
[[post-config|$NOVA_CONF]]
[profiler]
enabled = True
trace_sqlalchemy = True

安装过程,就不详细叙述了!

注意:devstack安装osprofiler的时候,会以pip install osprofiler的方式安装(可能有坑),需要pip uninstall osprofiler,

然后切换到osprofiler源码目录,执行python setup.py build && python setup.py install.

使用

# 使用上面定义好的OSPROFILER_HMAC_KEYS中的任意一个
[[email protected] devstack]$ nova --profile charlie                                      boot --image 8e02a6be-511a-4904-a400-87f8d86a5862                                          --flavor 1                                          --nic net-id=cbfdd288-2357-4161-8180-f7d6bd001420                                          test1
/usr/lib/python2.7/site-packages/novaclient/client.py:278: UserWarning: The ‘tenant_id‘ argument is deprecated in Ocata and its use may result in errors in future releases. As ‘project_id‘ is provided, the ‘tenant_id‘ argument will be ignored.
  warnings.warn(msg)
+--------------------------------------+-----------------------------------------------------------------+
| Property                             | Value                                                           |
+--------------------------------------+-----------------------------------------------------------------+
| OS-DCF:diskConfig                    | MANUAL                                                          |
| OS-EXT-AZ:availability_zone          |                                                                 |
| OS-EXT-SRV-ATTR:host                 | -                                                               |
| OS-EXT-SRV-ATTR:hostname             | test1                                                           |
| OS-EXT-SRV-ATTR:hypervisor_hostname  | -                                                               |
| OS-EXT-SRV-ATTR:instance_name        |                                                                 |
| OS-EXT-SRV-ATTR:kernel_id            |                                                                 |
| OS-EXT-SRV-ATTR:launch_index         | 0                                                               |
| OS-EXT-SRV-ATTR:ramdisk_id           |                                                                 |
| OS-EXT-SRV-ATTR:reservation_id       | r-on04hs1u                                                      |
| OS-EXT-SRV-ATTR:root_device_name     | -                                                               |
| OS-EXT-SRV-ATTR:user_data            | -                                                               |
| OS-EXT-STS:power_state               | 0                                                               |
| OS-EXT-STS:task_state                | scheduling                                                      |
| OS-EXT-STS:vm_state                  | building                                                        |
| OS-SRV-USG:launched_at               | -                                                               |
| OS-SRV-USG:terminated_at             | -                                                               |
| accessIPv4                           |                                                                 |
| accessIPv6                           |                                                                 |
| adminPass                            | vzJTN6apxGu7                                                    |
| config_drive                         |                                                                 |
| created                              | 2017-03-14T02:08:48Z                                            |
| description                          | -                                                               |
| flavor                               | m1.tiny (1)                                                     |
| hostId                               |                                                                 |

| host_status                          |                                                                 |
| id                                   | a399a3f0-3ee5-4dbe-bc71-61cde64f3107                            |
| image                                | cirros-0.3.5-x86_64-disk (8e02a6be-511a-4904-a400-87f8d86a5862) |
| key_name                             | -                                                               |
| locked                               | False                                                           |
| metadata                             | {}                                                              |
| name                                 | test1                                                           |
| os-extended-volumes:volumes_attached | []                                                              |
| progress                             | 0                                                               |
| security_groups                      | default                                                         |
| status                               | BUILD                                                           |
| tags                                 | []                                                              |
| tenant_id                            | fb39574612b748e9b3dcd4597b8cf3c4                                |
| updated                              | 2017-03-14T0
| user_id                              | c376ccfaa36842889becad4491488941                                |
+--------------------------------------+-----------------------------------------------------------------+
To display trace use the command:

  osprofiler trace show --html 7c157a83-8608-45c2-9989-68da9a18906e

生成html报告

[[email protected] devstack]$ osprofiler trace show --html 7c157a83-8608-45c2-9989-68da9a18906e                                                         --out /tmp/a.html

来看看报告格式

参考链接

https://docs.openstack.org/developer/osprofiler/api.html#five-ways-to-add-a-new-trace-point

http://niusmallnan.com/_build/html/_templates/openstack/osprofiler.html

时间: 2024-10-26 11:26:00

OpenStack的性能调优工具 - osprofiler的相关文章

[转]Linux常用性能调优工具索引

From:http://www.frostsky.com/2013/03/linux-performance-analysis-tool?wpmp_switcher=desktop 前段时间看到brendangregg的 Linux Performance Analysis and Tools PPT里面提到Linux常用性能调优工具, 见下图: 其中提到了的工具,大部分在我日常工具箱里或者在实践的案例里面使用过, 都有很高的价值,这里方便大家索引下: nicstat: 参见 这里 oprofi

性能调优工具

[性能调优工具jps.jstack.jmap.jhat.jstat.hprof使用详解]http://my.oschina.net/feichexia/blog/196575 现实企业级Java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError,内存不足 内存泄露 线程死锁 锁争用(Lock Contention) Java进程消耗CPU过高 这些问题在日常开发中可能被很多人忽视(比如有的人遇到上面的问题只是重启服务器或者调大内存,而不会深究问题根源),但能够理解并解决这些

java 性能调优工具

1.jstack 用法jstack [option] pid -l long listings,会打印出额外的锁信息,在发生死锁时可以用jstack -l pid来观察锁持有情况 -m mixed mode,不仅会输出Java堆栈信息,还会输出C/C++堆栈信息(比如Native方法) 找出进程内最耗费CPU的线程,可以使用ps -Lfp pid或者ps -mp pid -o THREAD, tid, time或者top -Hp pid printf "%x\n" pid 得到pid的

Linux服务器常用性能调优工具

Linux服务器的性能往往受到CPU.内存.磁盘I/O.网络带宽等方面的影响,对于每个Linux后台服务器开发人员来说,掌握一些常用的性能调优工具是十分有必要的.下图几乎涵盖了一个系统的方方面面,图中的工具都可称得上是性能调优方面的“瑞士军刀”,短小精干.功能强大. 1.strace 在Linux中,进程不能直接访问硬件设备,当进程需要进行读取磁盘文件,接收网络数据等访问硬件设备 的操作时,必须由用户态模式切换至内核模式,通过系统调用访问硬件设备.strace可用来跟踪程序使用的底层系统调用,可

mysql性能调优工具之mytop

Mysql性能调优工具之mytop 的安装和使用 1.       mytop 的下载地址 http://yunpan.cn/cVG3uSs2Jtt9h  访问密码 7ef1 2.       首先安装mytop必要的组件 .   yum -y install perl-DBD-MySQL perl-DBIperl-TermReadKey 如果提示找不到安装包,可以先安装 Yum –y install  epel-release epel-release 这个可以使用到最新的yum源. 如果安装

【十一】jvm 性能调优工具之 jmap

jvm 性能调优工具之 jmap 概述 命令jmap是一个多功能的命令.它可以生成 java 程序的 dump 文件, 也可以查看堆内对象示例的统计信息.查看 ClassLoader 的信息以及 finalizer 队列. jmap 用法 参数: option: 选项参数. pid: 需要打印配置信息的进程ID. executable: 产生核心dump的Java可执行文件. core: 需要打印配置信息的核心文件. server-id 可选的唯一id,如果相同的远程主机上运行了多台调试服务器,

linux 性能调优工具参考 (linux performance tools)

之前发现几张图对于linux使用者有着较强的参考意义,下面对其进行简单备忘: # linux 静态信息查看工具 # linux 性能测试工具 benchmark # linux 性能观测工具 # linux 性能调优工具  资源来源链接:http://www.brendangregg.com/linuxperf.html 保持更新,其中不少工具都有使用过,欢迎大家留言交流:更多内容请关注 cnblogs.com/xuyaowen; 原文地址:https://www.cnblogs.com/xuy

Android性能调优工具之 TraceView

从1月份Google发布的16个关于性能优化的系列视频起,这段时间在各大社区都有看到很多优秀的关于优化系列的文章.有分析了性能产生的原因.有分享如何优化我们的应用.有介绍有哪些工具可以帮助我们检测性能问题. 其中 在关于一些系统性能调优工具里有介绍到工具之一:TraceView TraceView 是 Android 平台配备一个很好的性能分析的工具.它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到某个函数方法method的执行耗时时间. 因为小吕之前确实没有使用过该工具.所

【Java/Android性能优3】Android性能调优工具TraceView使用介绍

本文转自:http://blog.csdn.net/innost/article/details/9008691 在软件开发过程中,想必很多读者都遇到过系统性能问题.而解决系统性能问题的几个主要步骤是: 测评:对系统进行大量有针对性的测试,以得到合适的测试数据. 分析系统瓶颈:分析测试数据,找到其中的hotspot(热点,即bottleneck). 性能优化:对hotspot相关的代码进行优化. 由上述步骤可知,性能优化的目标对象是hotspot.如果找到的hotspot并非真正的热点,则性能优