Configure Jaeger collector in DevStack
This patch adds a new type of collector "jaeger". To try this patch out add following lines into local.conf: enable_plugin osprofiler https://git.openstack.org/openstack/osprofiler refs/changes/67/611067/4 OSPROFILER_BRANCH=refs/changes/67/611067/4 OSPROFILER_COLLECTOR=jaeger Jaeger UI can be accessed on port 16686. Change-Id: I29031764290106570a1d358f6fd653c5367ca587
This commit is contained in:
parent
48a3de18f8
commit
0b878cfd24
|
@ -16,6 +16,7 @@ that control this:
|
||||||
|
|
||||||
* ``<empty>`` - default messaging driver is used
|
* ``<empty>`` - default messaging driver is used
|
||||||
* ``redis`` - Redis is installed
|
* ``redis`` - Redis is installed
|
||||||
|
* ``jaeger`` - Jaeger is installed
|
||||||
|
|
||||||
The default value of ``OSPROFILER_CONNECTION_STRING`` is set automatically
|
The default value of ``OSPROFILER_CONNECTION_STRING`` is set automatically
|
||||||
depending on ``OSPROFILER_COLLECTOR`` value.
|
depending on ``OSPROFILER_COLLECTOR`` value.
|
||||||
|
@ -29,6 +30,7 @@ that control this:
|
||||||
* ``elasticsearch://host:port`` - use Elasticsearch as trace storage
|
* ``elasticsearch://host:port`` - use Elasticsearch as trace storage
|
||||||
* ``mongodb://host:port`` - use MongoDB as trace storage
|
* ``mongodb://host:port`` - use MongoDB as trace storage
|
||||||
* ``loginsight://username:password@host`` - use LogInsight as trace collector/storage
|
* ``loginsight://username:password@host`` - use LogInsight as trace collector/storage
|
||||||
|
* ``jaeger://host:port`` - use Jaeger as trace collector
|
||||||
|
|
||||||
|
|
||||||
To configure DevStack and enable OSProfiler edit ``${DEVSTACK_DIR}/local.conf``
|
To configure DevStack and enable OSProfiler edit ``${DEVSTACK_DIR}/local.conf``
|
||||||
|
|
|
@ -56,12 +56,28 @@ function install_redis() {
|
||||||
pip_install_gr redis
|
pip_install_gr redis
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function install_jaeger() {
|
||||||
|
if is_ubuntu; then
|
||||||
|
install_package docker.io
|
||||||
|
start_service docker
|
||||||
|
add_user_to_group stack docker
|
||||||
|
sg docker -c "docker run -d --name jaeger -p 6831:6831/udp -p 16686:16686 jaegertracing/all-in-one:1.7"
|
||||||
|
else
|
||||||
|
exit_distro_not_supported "docker.io installation"
|
||||||
|
fi
|
||||||
|
|
||||||
|
pip_install jaeger-client
|
||||||
|
}
|
||||||
|
|
||||||
function install_osprofiler_collector() {
|
function install_osprofiler_collector() {
|
||||||
if [ -z "$OSPROFILER_COLLECTOR" ]; then
|
if [ -z "$OSPROFILER_COLLECTOR" ]; then
|
||||||
OSPROFILER_CONNECTION_STRING=${OSPROFILER_CONNECTION_STRING:-"messaging://"}
|
OSPROFILER_CONNECTION_STRING=${OSPROFILER_CONNECTION_STRING:-"messaging://"}
|
||||||
elif [ "$OSPROFILER_COLLECTOR" == "redis" ]; then
|
elif [ "$OSPROFILER_COLLECTOR" == "redis" ]; then
|
||||||
install_redis
|
install_redis
|
||||||
OSPROFILER_CONNECTION_STRING=${OSPROFILER_CONNECTION_STRING:-"redis://localhost:6379"}
|
OSPROFILER_CONNECTION_STRING=${OSPROFILER_CONNECTION_STRING:-"redis://localhost:6379"}
|
||||||
|
elif [ "$OSPROFILER_COLLECTOR" == "jaeger" ]; then
|
||||||
|
install_jaeger
|
||||||
|
OSPROFILER_CONNECTION_STRING=${OSPROFILER_CONNECTION_STRING:-"jaeger://localhost:6831"}
|
||||||
else
|
else
|
||||||
die $LINENO "OSProfiler collector $OSPROFILER_COLLECTOR is not supported"
|
die $LINENO "OSProfiler collector $OSPROFILER_COLLECTOR is not supported"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -7,7 +7,7 @@ set -o xtrace
|
||||||
|
|
||||||
source $DEST/osprofiler/devstack/lib/osprofiler
|
source $DEST/osprofiler/devstack/lib/osprofiler
|
||||||
|
|
||||||
if [[ "$1" == "stack" && "$2" == "pre-install" ]]; then
|
if [[ "$1" == "stack" && "$2" == "install" ]]; then
|
||||||
echo_summary "Configuring system services for OSProfiler"
|
echo_summary "Configuring system services for OSProfiler"
|
||||||
install_osprofiler_collector
|
install_osprofiler_collector
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue