From 6338f8fbb09c874f741ea4c924f262ae9224cee3 Mon Sep 17 00:00:00 2001 From: Mathieu Rohon Date: Wed, 26 Apr 2017 10:28:18 +0200 Subject: [PATCH] Add skydive service This patch introduces the docker template to build the skydive container, that can be used to monitor and troubleshoot networking in an openstack deployment. The skydive-analyzer and the skydive-agent will both rely on the same container. Implements: blueprint skydive-service Co-Authored-By: Nicolas Bouron Signed-off-by: Mathieu Rohon Change-Id: Iab783179c2c3aba496a91debfd38a12215ae9f10 --- docker/skydive/skydive-agent/Dockerfile.j2 | 7 +++++++ docker/skydive/skydive-analyzer/Dockerfile.j2 | 8 ++++++++ docker/skydive/skydive-base/Dockerfile.j2 | 20 +++++++++++++++++++ kolla/common/config.py | 5 +++++ .../notes/add-skydive-52c3fb964fe6cc1b.yaml | 7 +++++++ 5 files changed, 47 insertions(+) create mode 100644 docker/skydive/skydive-agent/Dockerfile.j2 create mode 100644 docker/skydive/skydive-analyzer/Dockerfile.j2 create mode 100644 docker/skydive/skydive-base/Dockerfile.j2 create mode 100644 releasenotes/notes/add-skydive-52c3fb964fe6cc1b.yaml diff --git a/docker/skydive/skydive-agent/Dockerfile.j2 b/docker/skydive/skydive-agent/Dockerfile.j2 new file mode 100644 index 0000000000..50708e13a7 --- /dev/null +++ b/docker/skydive/skydive-agent/Dockerfile.j2 @@ -0,0 +1,7 @@ +FROM {{ namespace }}/{{ image_prefix }}skydive-base:{{ tag }} +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" + +{% block skydive_agent_header %}{% endblock %} + +{% block skydive_agent_footer %}{% endblock %} +{% block footer %}{% endblock %} diff --git a/docker/skydive/skydive-analyzer/Dockerfile.j2 b/docker/skydive/skydive-analyzer/Dockerfile.j2 new file mode 100644 index 0000000000..409076daf8 --- /dev/null +++ b/docker/skydive/skydive-analyzer/Dockerfile.j2 @@ -0,0 +1,8 @@ +FROM {{ namespace }}/{{ image_prefix }}skydive-base:{{ tag }} +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" + +{% block skydive_analyzer_header %}{% endblock %} +{% block skydive_analyzer_footer %}{% endblock %} +{% block footer %}{% endblock %} + +USER skydive diff --git a/docker/skydive/skydive-base/Dockerfile.j2 b/docker/skydive/skydive-base/Dockerfile.j2 new file mode 100644 index 0000000000..ccb8dbf838 --- /dev/null +++ b/docker/skydive/skydive-base/Dockerfile.j2 @@ -0,0 +1,20 @@ +FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }} +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" + +{% block skydive_base_header %}{% endblock %} + +{% import "macros.j2" as macros with context %} + +{{ macros.configure_user(name='skydive') }} + +{% if base_arch == 'x86_64' %} + +{% block skydive_install %} +RUN curl -o /usr/bin/skydive -L "https://github.com/skydive-project/skydive/releases/download/v0.11.0/skydive" \ + && chmod +x /usr/bin/skydive +{% endblock %} + +{% endif %} + +{% block skydive_base_footer %}{% endblock %} +{% block footer %}{% endblock %} diff --git a/kolla/common/config.py b/kolla/common/config.py index d068e81ab3..0c0fa6b9e4 100755 --- a/kolla/common/config.py +++ b/kolla/common/config.py @@ -73,6 +73,7 @@ _PROFILE_OPTS = [ 'qdrouterd', 'rabbitmq', 'redis', + 'skydive', 'tgtd', ], help='Infra images'), @@ -866,6 +867,10 @@ USERS = { 'sensu-user': { 'uid': 42467, 'gid': 42467, + }, + 'skydive-user': { + 'uid': 42468, + 'gid': 42468, } } diff --git a/releasenotes/notes/add-skydive-52c3fb964fe6cc1b.yaml b/releasenotes/notes/add-skydive-52c3fb964fe6cc1b.yaml new file mode 100644 index 0000000000..72c0c2a7da --- /dev/null +++ b/releasenotes/notes/add-skydive-52c3fb964fe6cc1b.yaml @@ -0,0 +1,7 @@ +--- +features: + - Add skydive Dockerfile. + With skydive, cloud operators will be able to monitor + and troubleshoot networking in openstack. + This container can then be used as a skydive analyzer + or as a skydive agent.