Re: Using Google profiling tools on a ceph OSD

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Chris,

I think you want to build your own container image and install the performance tools in it. Then you should edit the unit.run files for each osd to add those envs to the podman command. For sending the signals, you could look into podman kill -s. Might work for this use case.

Hope that helps,

Sebastian


Am 24.07.21 um 00:09 schrieb Sam Just:
Are the actual osds running in containers with cephadm?
-Sam

On Fri, Jul 23, 2021 at 4:19 AM Chris Ward <tjcw01@xxxxxxxxx> wrote:
I would like to take a google profile (performance profile) of a ceph OSD.
I'm using 'cephadm' to depoy my cluster, which results in a set of servers
which are too wrapped up in automation for me to be able to add the google
profiling hooks. I'll describe how to take a google profile of a regular
linux process, in the hope that someone can help me adapt this to the way
cephadm deploys a ceph OSD.

First, you install the google profiling library and analysis tool.
'sudo apt install google-perftools' would do the install on Ubuntu; there is
a matching package in EPEL for RHEL/Centos.

Then you run the OSD with some environment variables set
   LD_PRELOAD=/usr/lib/libprofiler.so
   CPUPROFILE=osd.googleprof
   CPUPROFILESIGNAL=12
It's OK to set these variables for additional processes (e.g. all processes in
a container)

Then you get ready to run the client benchmarking application. Just before
starting the client, you send signal SIGUSR2 (signal 12) to the OSD process;
this turns profiling on.
After the benchmarking application completes, you send another SIGUSR2 to the
OSD; this stops profiling and writes the profile to file osd.googleprof .

After profiling, you run the analysis tool.
   google-pprof --pdf OSD osd.googleprof >osd.pdf
where OSD is the appropriate program binary file. This writes a call graph as
a PDF to the given file.

Thanks for all help !
_______________________________________________
Dev mailing list -- dev@xxxxxxx
To unsubscribe send an email to dev-leave@xxxxxxx
_______________________________________________
Dev mailing list -- dev@xxxxxxx
To unsubscribe send an email to dev-leave@xxxxxxx


Attachment: OpenPGP_signature
Description: OpenPGP digital signature

_______________________________________________
Dev mailing list -- dev@xxxxxxx
To unsubscribe send an email to dev-leave@xxxxxxx

[Index of Archives]     [CEPH Users]     [Ceph Devel]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux