aboutsummaryrefslogtreecommitdiff
path: root/docker
diff options
context:
space:
mode:
authorGaëtan Trellu <gaetan.trellu@incloudus.com>2019-07-02 18:55:59 -0400
committerGaëtan Trellu <gaetan.trellu@incloudus.com>2019-07-18 11:29:37 -0400
commit046158b1494938a61f8a9b98d8b0bba88295f2df (patch)
tree49bedbc6e329e943a5d936c045a549c99c77c246 /docker
parent5ecb9107ea286bd0c1a45d4d95d064c764d33296 (diff)
downloadkolla-046158b1494938a61f8a9b98d8b0bba88295f2df.tar.gz
kolla-046158b1494938a61f8a9b98d8b0bba88295f2df.zip
Add HAcluster containers
Theses images contains High Availability solution such as Corosync, Pacemaker, Pacemaker Remote and PCS. Change-Id: I86fd145d2998f68b08a16082414b86904971549a Implements: blueprint pacemaker-container
Diffstat (limited to 'docker')
-rw-r--r--docker/base/Dockerfile.j21
-rw-r--r--docker/base/crmsh.repo7
-rw-r--r--docker/hacluster/hacluster-base/Dockerfile.j212
-rw-r--r--docker/hacluster/hacluster-base/extend_start.sh8
-rw-r--r--docker/hacluster/hacluster-corosync/Dockerfile.j211
-rw-r--r--docker/hacluster/hacluster-pacemaker-remote/Dockerfile.j211
-rw-r--r--docker/hacluster/hacluster-pacemaker/Dockerfile.j211
-rw-r--r--docker/hacluster/hacluster-pcs/Dockerfile.j211
8 files changed, 72 insertions, 0 deletions
diff --git a/docker/base/Dockerfile.j2 b/docker/base/Dockerfile.j2
index b93e378f9..5a1821d0f 100644
--- a/docker/base/Dockerfile.j2
+++ b/docker/base/Dockerfile.j2
@@ -75,6 +75,7 @@ COPY yum.conf /etc/yum.conf
{% if base_arch == 'x86_64' %}
{% set base_yum_repo_files = [
+ 'crmsh.repo',
'elasticsearch.repo',
'grafana.repo',
'influxdb.repo',
diff --git a/docker/base/crmsh.repo b/docker/base/crmsh.repo
new file mode 100644
index 000000000..1c3396f75
--- /dev/null
+++ b/docker/base/crmsh.repo
@@ -0,0 +1,7 @@
+[network_ha-clustering_Stable]
+name=Stable High Availability/Clustering packages (CentOS_CentOS-7)
+type=rpm-md
+baseurl=http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/CentOS_CentOS-7/
+gpgcheck=1
+gpgkey=http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/CentOS_CentOS-7/repodata/repomd.xml.key
+enabled=1
diff --git a/docker/hacluster/hacluster-base/Dockerfile.j2 b/docker/hacluster/hacluster-base/Dockerfile.j2
new file mode 100644
index 000000000..7997e1229
--- /dev/null
+++ b/docker/hacluster/hacluster-base/Dockerfile.j2
@@ -0,0 +1,12 @@
+FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block hacluster_base_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+RUN chmod 755 /usr/local/bin/kolla_extend_start
+
+{% block hacluster_base_footer %}{% endblock %}
diff --git a/docker/hacluster/hacluster-base/extend_start.sh b/docker/hacluster/hacluster-base/extend_start.sh
new file mode 100644
index 000000000..c0e9301d0
--- /dev/null
+++ b/docker/hacluster/hacluster-base/extend_start.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+if [[ ! -d "/var/log/kolla/hacluster" ]]; then
+ mkdir -p /var/log/kolla/hacluster
+fi
+if [[ $(stat -c %a /var/log/kolla/hacluster) != "755" ]]; then
+ chmod 755 /var/log/kolla/hacluster
+fi
diff --git a/docker/hacluster/hacluster-corosync/Dockerfile.j2 b/docker/hacluster/hacluster-corosync/Dockerfile.j2
new file mode 100644
index 000000000..08f3f678f
--- /dev/null
+++ b/docker/hacluster/hacluster-corosync/Dockerfile.j2
@@ -0,0 +1,11 @@
+FROM {{ namespace }}/{{ image_prefix }}hacluster-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block hacluster_corosync_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% set hacluster_corosync_packages = ['corosync'] %}
+{{ macros.install_packages(hacluster_corosync_packages | customizable("packages")) }}
+
+{% block hacluster_corosync_footer %}{% endblock %}
diff --git a/docker/hacluster/hacluster-pacemaker-remote/Dockerfile.j2 b/docker/hacluster/hacluster-pacemaker-remote/Dockerfile.j2
new file mode 100644
index 000000000..2a6570ffe
--- /dev/null
+++ b/docker/hacluster/hacluster-pacemaker-remote/Dockerfile.j2
@@ -0,0 +1,11 @@
+FROM {{ namespace }}/{{ image_prefix }}hacluster-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block hacluster_pacemaker_remote_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% set hacluster_pacemaker_remote_packages = ['pacemaker-remote'] %}
+{{ macros.install_packages(hacluster_pacemaker_remote_packages | customizable("packages")) }}
+
+{% block hacluster_pacemaker_remote_footer %}{% endblock %}
diff --git a/docker/hacluster/hacluster-pacemaker/Dockerfile.j2 b/docker/hacluster/hacluster-pacemaker/Dockerfile.j2
new file mode 100644
index 000000000..a11163a3c
--- /dev/null
+++ b/docker/hacluster/hacluster-pacemaker/Dockerfile.j2
@@ -0,0 +1,11 @@
+FROM {{ namespace }}/{{ image_prefix }}hacluster-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block hacluster_pacemaker_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% set hacluster_pacemaker_packages = ['pacemaker'] %}
+{{ macros.install_packages(hacluster_pacemaker_packages | customizable("packages")) }}
+
+{% block hacluster_pacemaker_footer %}{% endblock %}
diff --git a/docker/hacluster/hacluster-pcs/Dockerfile.j2 b/docker/hacluster/hacluster-pcs/Dockerfile.j2
new file mode 100644
index 000000000..0b760ca25
--- /dev/null
+++ b/docker/hacluster/hacluster-pcs/Dockerfile.j2
@@ -0,0 +1,11 @@
+FROM {{ namespace }}/{{ image_prefix }}hacluster-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block hacluster_pcs_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% set hacluster_pcs_packages = ['pcs','crmsh'] %}
+{{ macros.install_packages(hacluster_pcs_packages | customizable("packages")) }}
+
+{% block hacluster_pcs_footer %}{% endblock %}