我正在帮助开发一个内部云基础设施(OpenStack),为我们的部门提供一个完全可供选择的系统,而不是AWS/Rackspace/SoftLayer/等等。
我的老板刚刚从一个内部客户那里转告我一个问题,他要求我们支持DTrace。我知道甲骨文DTrace项目以及dtrace4linux和Linux自己的原生SystemTap (我记得它最初是在Linuxk探针上构建的;但我发现SystemTap的较新版本可以访问DTrace或合并到3.5内核中的探针修补程序)。我还听说过赛斯迪格和LTTng,甚至全迹 ( Linux、ftrace和uprobes支持之间有什么区别?)
我最初的回答是问这个用户是否试图有效地利用-S和它的艾斯莱选项来交织系统调用跟踪(àla 绞合)。
但我也想在顾客回来之前知道更多。
我的第一个也是最重要的问题是:在CentOS 6、6.5和7.0的“开箱即用”(不替换库存内核)中,可以使用哪些选项?Ubuntu12.04和14.04LTS发行版同样的问题吗?
在云VM实例(OpenStack Nova,KVM)中,这些是否特别适合或特别不好使用?
对这些选择是否有相当好的和合理的最近的比较?对于每个人的时间和精力投资,我的最佳选择是什么?
尼尔斯·普罗沃斯在西斯特瑞斯上的工作发生了什么?
发布于 2015-03-11 11:24:53
IMHO SystemTap是您的客户的好选择。我为DTrace和SystemTap做了很多工作,不得不说DTrace可以实现什么,SystemTap可以实现什么。
它们与其他工具https://sourceware.org/systemtap/wiki/SystemtapDtraceComparison进行了比较(正如预期的那样,SystemTap是赢家)。它也是向后兼容的DTrace USDT探针.
它适用于CentOS 6.x和7.x股票内核。不能说任何关于Ubuntu的东西,因为我使用Debian --工作得很好,但是Debian 7股票内核没有u探针。我也在Xen下使用过它,看起来一切都很好。
但是,与您提到的其他工具相比,SystemTap要复杂得多,因为与Sysdig不同,每个性能数据收集都需要脚本(它有示例,但不多,没有DTraceToolkit这样的东西)。事件LTTng项目正在开发用户友好的工具。
另外,著名的DTrace开发人员Brendan目前正在使用Sysdig和SystemTap,这应该意味着什么。
https://stackoverflow.com/questions/28464191
复制相似问题