aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjinyuanliu <jayonlau@gmail.com>2022-03-11 10:25:11 +0800
committerRadosław Piliszek <radoslaw.piliszek@gmail.com>2022-03-16 14:48:50 +0000
commit3d51f064646940ce5034489238120ab2a6752879 (patch)
tree32b66dc7af2f8cddfe6941d4960f8e7962523068
parent5bb6489922aab2b431be8f121465eb7f3a49b5ae (diff)
downloadkolla-3d51f064646940ce5034489238120ab2a6752879.tar.gz
kolla-3d51f064646940ce5034489238120ab2a6752879.zip
venus: add log management system
This project provides a one-stop solution to log collection, cleaning, indexing, analysis, alarm, visualization, report generation and other needs. Which involves helping operator or maintainer to quickly solve retrieve problems, grasp the operational health of the platform, and improve the level of platform management. https://wiki.openstack.org/wiki/Venus Change-Id: I051fb0f17d97134d89da0b6668879a9b36de10d1
-rw-r--r--docker/venus/venus-api/Dockerfile.j211
-rw-r--r--docker/venus/venus-base/Dockerfile.j229
-rw-r--r--docker/venus/venus-base/extend_start.sh10
-rw-r--r--docker/venus/venus-manager/Dockerfile.j213
-rwxr-xr-xkolla/common/config.py8
-rwxr-xr-xkolla/image/build.py1
-rw-r--r--releasenotes/notes/add-venus-e2a9824f5ef5cf30.yaml6
-rw-r--r--roles/kolla-build-config/defaults/main.yml1
8 files changed, 79 insertions, 0 deletions
diff --git a/docker/venus/venus-api/Dockerfile.j2 b/docker/venus/venus-api/Dockerfile.j2
new file mode 100644
index 000000000..a10e55535
--- /dev/null
+++ b/docker/venus/venus-api/Dockerfile.j2
@@ -0,0 +1,11 @@
+FROM {{ namespace }}/{{ image_prefix }}venus-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+{% endblock %}
+
+{% block venus_api_header %}{% endblock %}
+
+{% block venus_api_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER venus
diff --git a/docker/venus/venus-base/Dockerfile.j2 b/docker/venus/venus-base/Dockerfile.j2
new file mode 100644
index 000000000..9f95a4963
--- /dev/null
+++ b/docker/venus/venus-base/Dockerfile.j2
@@ -0,0 +1,29 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+{% endblock %}
+
+{% block venus_base_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{{ macros.configure_user(name='venus') }}
+
+ADD venus-base-archive /venus-base-source
+
+{% set venus_base_pip_packages = [
+ '/venus'
+] %}
+
+RUN ln -s venus-base-source/* venus \
+ && {{ macros.install_pip(venus_base_pip_packages | customizable("pip_packages")) }} \
+ && mkdir -p /etc/venus \
+ && cp -r /venus/etc/venus/* /etc/venus/ \
+ && chown -R venus: /etc/venus
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+RUN touch /usr/local/bin/kolla_venus_extend_start \
+ && chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_venus_extend_start
+
+{% block venus_base_footer %}{% endblock %}
diff --git a/docker/venus/venus-base/extend_start.sh b/docker/venus/venus-base/extend_start.sh
new file mode 100644
index 000000000..fa7bbe54b
--- /dev/null
+++ b/docker/venus/venus-base/extend_start.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+if [[ ! -d "/var/log/kolla/venus" ]]; then
+ mkdir -p /var/log/kolla/venus
+fi
+if [[ $(stat -c %a /var/log/kolla/venus) != "755" ]]; then
+ chmod 755 /var/log/kolla/venus
+fi
+
+. /usr/local/bin/kolla_venus_extend_start
diff --git a/docker/venus/venus-manager/Dockerfile.j2 b/docker/venus/venus-manager/Dockerfile.j2
new file mode 100644
index 000000000..a15b6c92b
--- /dev/null
+++ b/docker/venus/venus-manager/Dockerfile.j2
@@ -0,0 +1,13 @@
+FROM {{ namespace }}/{{ image_prefix }}venus-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+{% endblock %}
+
+{% block venus_manager_header %}{% endblock %}
+
+RUN chmod 755 /usr/local/bin/kolla_venus_extend_start
+
+{% block venus_manager_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER venus
diff --git a/kolla/common/config.py b/kolla/common/config.py
index 25e582132..42eef7aaa 100755
--- a/kolla/common/config.py
+++ b/kolla/common/config.py
@@ -621,6 +621,10 @@ SOURCES = {
'type': 'url',
'location': ('$tarballs_base/openstack/trove/'
'trove-${openstack_branch}.tar.gz')},
+ 'venus-base': {
+ 'type': 'url',
+ 'location': ('$tarballs_base/openstack/venus/'
+ 'venus-${openstack_branch}.tar.gz')},
'vitrage-base': {
'type': 'url',
'location': ('$tarballs_base/openstack/vitrage/'
@@ -951,6 +955,10 @@ USERS = {
'letsencrypt-user': {
'uid': 42488,
'gid': 42488,
+ },
+ 'venus-user': {
+ 'uid': 42489,
+ 'gid': 42489,
}
}
diff --git a/kolla/image/build.py b/kolla/image/build.py
index b137059fa..c9c2a60bd 100755
--- a/kolla/image/build.py
+++ b/kolla/image/build.py
@@ -95,6 +95,7 @@ UNBUILDABLE_IMAGES = {
"monasca-base",
"monasca-thresh",
"solum-base",
+ "venus-base",
"zun-base",
},
diff --git a/releasenotes/notes/add-venus-e2a9824f5ef5cf30.yaml b/releasenotes/notes/add-venus-e2a9824f5ef5cf30.yaml
new file mode 100644
index 000000000..241bdad9a
--- /dev/null
+++ b/releasenotes/notes/add-venus-e2a9824f5ef5cf30.yaml
@@ -0,0 +1,6 @@
+---
+features:
+ - |
+ Add Venus images. Venus is an OpenStack project to provide "one-stop solution to log collection,
+ cleaning, indexing, analysis, alarm, visualization service". This project aims to provide
+ a platform to quickly solve service exception problems.
diff --git a/roles/kolla-build-config/defaults/main.yml b/roles/kolla-build-config/defaults/main.yml
index 0b855330a..5f8cdb061 100644
--- a/roles/kolla-build-config/defaults/main.yml
+++ b/roles/kolla-build-config/defaults/main.yml
@@ -65,6 +65,7 @@ kolla_build_sources:
- tacker-base
- mistral-base-plugin-tacker
openstack/trove: trove-base
+ openstack/venus: venus-base
openstack/vitrage: vitrage-base
openstack/watcher: watcher-base
openstack/zun: zun-base