Add Ceph to osh-infra gates

This adds a ceph developer gate to openstack-helm-infra, which
depends on ceph moving to openstack-helm-infra. This also replaces
the NFS backed storage for the multinode gate with ceph instead

Change-Id: I11268463aa037a2e037217a2dbc89c7432c0d277
This commit is contained in:
Steve Wilkerson 2018-08-27 15:42:33 -05:00
parent 25bc83b580
commit 8037bf4ca9
74 changed files with 1117 additions and 236 deletions

View File

@ -26,7 +26,12 @@
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- openstack-helm-infra-dev-deploy:
- openstack-helm-infra-dev-deploy-ceph:
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- openstack-helm-infra-dev-deploy-nfs:
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
@ -49,7 +54,12 @@
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- openstack-helm-infra-dev-deploy:
- openstack-helm-infra-dev-deploy-ceph:
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
- ^releasenotes/.*$
- openstack-helm-infra-dev-deploy-nfs:
irrelevant-files:
- ^.*\.rst$
- ^doc/.*$
@ -212,7 +222,7 @@
- job:
name: openstack-helm-infra
timeout: 3600
timeout: 7200
pre-run:
- playbooks/osh-infra-upgrade-host.yaml
- playbooks/osh-infra-deploy-docker.yaml
@ -237,10 +247,18 @@
nodeset: openstack-helm-fedora
- job:
name: openstack-helm-infra-dev-deploy
name: openstack-helm-infra-dev-deploy-ceph
timeout: 7200
pre-run: playbooks/osh-infra-upgrade-host.yaml
run: playbooks/osh-infra-dev-deploy.yaml
run: playbooks/osh-infra-dev-deploy-ceph.yaml
post-run: playbooks/osh-infra-collect-logs.yaml
nodeset: openstack-helm-single-node
- job:
name: openstack-helm-infra-dev-deploy-nfs
timeout: 7200
pre-run: playbooks/osh-infra-upgrade-host.yaml
run: playbooks/osh-infra-dev-deploy-nfs.yaml
post-run: playbooks/osh-infra-collect-logs.yaml
nodeset: openstack-helm-single-node

View File

@ -0,0 +1,198 @@
======================
Development Deployment
======================
Deploy Local Docker Registry
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/010-deploy-docker-registry.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/010-deploy-docker-registry.sh
Deploy Cluster and Namespace Ingress Controllers
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/020-ingress.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/020-ingress.sh
Deploy Ceph
^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/030-ceph.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/030-ceph.sh
Activate the OSH-Infra namespace to be able to use Ceph
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/035-ceph-ns-activate.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/035-ceph-ns-activate.sh
Deploy LDAP
^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/040-ldap.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/040-ldap.sh
Deploy Prometheus
^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/050-prometheus.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/050-prometheus.sh
Deploy Alertmanager
^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/060-alertmanager.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/060-alertmanager.sh
Deploy Kube-State-Metrics
^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/070-kube-state-metrics.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/070-kube-state-metrics.sh
Deploy Node Exporter
^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/080-node-exporter.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/080-node-exporter.sh
Deploy OpenStack Exporter
^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/090-openstack-exporter.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/090-openstack-exporter.sh
Deploy Grafana
^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/100-grafana.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/100-grafana.sh
Deploy Nagios
^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/110-nagios.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/110-nagios.sh
Deploy Elasticsearch
^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/120-elasticsearch.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/120-elasticsearch.sh
Deploy Fluent-Logging
^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/130-fluent-logging.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/130-fluent-logging.sh
Deploy Kibana
^^^^^^^^^^^^^
.. literalinclude:: ../../../../tools/deployment/developer/ceph/140-kibana.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/ceph/140-kibana.sh

View File

@ -5,7 +5,7 @@ Development Deployment
Deploy Local Docker Registry
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/010-deploy-docker-registry.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/010-deploy-docker-registry.sh
:language: shell
:lines: 1,17-
@ -13,12 +13,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/010-deploy-docker-registry.sh
./tools/deployment/developer/nfs/010-deploy-docker-registry.sh
Deploy Cluster and Namespace Ingress Controllers
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/020-ingress.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/020-ingress.sh
:language: shell
:lines: 1,17-
@ -26,12 +26,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/020-ingress.sh
./tools/deployment/developer/nfs/020-ingress.sh
Deploy NFS Provisioner for LMA Services
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Deploy NFS Provisioner
^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/030-lma-nfs-provisioner.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/030-nfs-provisioner.sh
:language: shell
:lines: 1,17-
@ -39,12 +39,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/030-lma-nfs-provisioner.sh
./tools/deployment/developer/nfs/030-nfs-provisioner.sh
Deploy LDAP
^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/040-ldap.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/040-ldap.sh
:language: shell
:lines: 1,17-
@ -52,12 +52,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/040-ldap.sh
./tools/deployment/developer/nfs/040-ldap.sh
Deploy Prometheus
^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/050-prometheus.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/050-prometheus.sh
:language: shell
:lines: 1,17-
@ -65,12 +65,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/050-prometheus.sh
./tools/deployment/developer/nfs/050-prometheus.sh
Deploy Alertmanager
^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/060-alertmanager.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/060-alertmanager.sh
:language: shell
:lines: 1,17-
@ -78,12 +78,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/060-alertmanager.sh
./tools/deployment/developer/nfs/060-alertmanager.sh
Deploy Kube-State-Metrics
^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/070-kube-state-metrics.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/070-kube-state-metrics.sh
:language: shell
:lines: 1,17-
@ -91,12 +91,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/070-kube-state-metrics.sh
./tools/deployment/developer/nfs/070-kube-state-metrics.sh
Deploy Node Exporter
^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/080-node-exporter.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/080-node-exporter.sh
:language: shell
:lines: 1,17-
@ -104,12 +104,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/080-node-exporter.sh
./tools/deployment/developer/nfs/080-node-exporter.sh
Deploy OpenStack Exporter
^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/090-openstack-exporter.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/090-openstack-exporter.sh
:language: shell
:lines: 1,17-
@ -117,12 +117,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/090-openstack-exporter.sh
./tools/deployment/developer/nfs/090-openstack-exporter.sh
Deploy Grafana
^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/100-grafana.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/100-grafana.sh
:language: shell
:lines: 1,17-
@ -130,12 +130,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/100-grafana.sh
./tools/deployment/developer/nfs/100-grafana.sh
Deploy Nagios
^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/110-nagios.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/110-nagios.sh
:language: shell
:lines: 1,17-
@ -143,12 +143,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/110-nagios.sh
./tools/deployment/developer/nfs/110-nagios.sh
Deploy Elasticsearch
^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/120-elasticsearch.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/120-elasticsearch.sh
:language: shell
:lines: 1,17-
@ -156,12 +156,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/120-elasticsearch.sh
./tools/deployment/developer/nfs/120-elasticsearch.sh
Deploy Fluent-Logging
^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/130-fluent-logging.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/130-fluent-logging.sh
:language: shell
:lines: 1,17-
@ -169,12 +169,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/130-fluent-logging.sh
./tools/deployment/developer/nfs/130-fluent-logging.sh
Deploy Kibana
^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/developer/140-kibana.sh
.. literalinclude:: ../../../../tools/deployment/developer/nfs/140-kibana.sh
:language: shell
:lines: 1,17-
@ -182,4 +182,4 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/developer/140-kibana.sh
./tools/deployment/developer/nfs/140-kibana.sh

View File

@ -0,0 +1,10 @@
Development
===========
Contents:
.. toctree::
:maxdepth: 2
deploy-with-nfs
deploy-with-ceph

View File

@ -6,5 +6,5 @@ Contents:
.. toctree::
:maxdepth: 2
developer
developer/index
multinode

View File

@ -1,6 +1,6 @@
====================
Multinode Deployment
====================
======================
Development Deployment
======================
Deploy Local Docker Registry
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@ -15,36 +15,23 @@ Alternatively, this step can be performed by running the script directly:
./tools/deployment/multinode/010-deploy-docker-registry.sh
Deploy Cluster and Namespace Ingress Controllers
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Deploy Cluster and Namespace Ingress Controllers
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/020-ingress.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/020-ingress.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/020-ingress.sh
./tools/deployment/multinode/020-ingress.sh
Deploy NFS Provisioner for LMA Services
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/030-lma-nfs-provisioner.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/multinode/030-lma-nfs-provisioner.sh
Deploy LDAP
Deploy Ceph
^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/040-ldap.sh
.. literalinclude:: ../../../../tools/deployment/multinode/030-ceph.sh
:language: shell
:lines: 1,17-
@ -52,12 +39,12 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/multinode/040-ldap.sh
./tools/deployment/multinode/030-ceph.sh
Deploy Prometheus
^^^^^^^^^^^^^^^^^
Activate the OSH-Infra namespace to be able to use Ceph
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/050-prometheus.sh
.. literalinclude:: ../../../../tools/deployment/multinode/035-ceph-ns-activate.sh
:language: shell
:lines: 1,17-
@ -65,121 +52,147 @@ Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/multinode/050-prometheus.sh
./tools/deployment/multinode/035-ceph-ns-activate.sh
Deploy Alertmanager
^^^^^^^^^^^^^^^^^^^
Deploy LDAP
^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/060-alertmanager.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/040-ldap.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/060-alertmanager.sh
./tools/deployment/multinode/040-ldap.sh
Deploy Kube-State-Metrics
^^^^^^^^^^^^^^^^^^^^^^^^^
Deploy Prometheus
^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/070-kube-state-metrics.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/050-prometheus.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/070-kube-state-metrics.sh
./tools/deployment/multinode/050-prometheus.sh
Deploy Node Exporter
^^^^^^^^^^^^^^^^^^^^
Deploy Alertmanager
^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/080-node-exporter.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/060-alertmanager.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/080-node-exporter.sh
./tools/deployment/multinode/060-alertmanager.sh
Deploy OpenStack Exporter
^^^^^^^^^^^^^^^^^^^^^^^^^
Deploy Kube-State-Metrics
^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/090-openstack-exporter.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/070-kube-state-metrics.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/090-openstack-exporter.sh
./tools/deployment/multinode/070-kube-state-metrics.sh
Deploy Grafana
^^^^^^^^^^^^^^
Deploy Node Exporter
^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/100-grafana.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/080-node-exporter.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/100-grafana.sh
./tools/deployment/multinode/080-node-exporter.sh
Deploy Nagios
^^^^^^^^^^^^^
Deploy OpenStack Exporter
^^^^^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/110-nagios.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/090-openstack-exporter.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/110-nagios.sh
./tools/deployment/multinode/090-openstack-exporter.sh
Deploy Elasticsearch
^^^^^^^^^^^^^^^^^^^^
Deploy Grafana
^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/120-elasticsearch.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/100-grafana.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/120-elasticsearch.sh
./tools/deployment/multinode/100-grafana.sh
Deploy Fluent-Logging
^^^^^^^^^^^^^^^^^^^^^
Deploy Nagios
^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/130-fluent-logging.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/110-nagios.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/130-fluent-logging.sh
./tools/deployment/multinode/110-nagios.sh
Deploy Kibana
^^^^^^^^^^^^^
Deploy Elasticsearch
^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/140-kibana.sh
:language: shell
:lines: 1,17-
.. literalinclude:: ../../../tools/deployment/multinode/120-elasticsearch.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
.. code-block:: shell
./tools/deployment/multinode/140-kibana.sh
./tools/deployment/multinode/120-elasticsearch.sh
Deploy Fluent-Logging
^^^^^^^^^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/130-fluent-logging.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/multinode/130-fluent-logging.sh
Deploy Kibana
^^^^^^^^^^^^^
.. literalinclude:: ../../../tools/deployment/multinode/140-kibana.sh
:language: shell
:lines: 1,17-
Alternatively, this step can be performed by running the script directly:
.. code-block:: shell
./tools/deployment/multinode/140-kibana.sh

View File

@ -0,0 +1,128 @@
# Copyright 2017 The Openstack-Helm Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
- hosts: primary
tasks:
- name: Deploy Required packages
shell: |
set -xe;
./tools/deployment/developer/ceph/000-install-packages.sh
args:
chdir: "{{ zuul.project.src_dir }}"
environment:
zuul_site_mirror_fqdn: "{{ zuul_site_mirror_fqdn }}"
- name: Deploy Kubernetes
shell: |
set -xe;
./tools/deployment/developer/ceph/005-deploy-k8s.sh
args:
chdir: "{{ zuul.project.src_dir }}"
environment:
zuul_site_mirror_fqdn: "{{ zuul_site_mirror_fqdn }}"
- name: Deploy Registry NFS, Redis, and Docker Registry
shell: |
set -xe;
./tools/deployment/developer/ceph/010-deploy-docker-registry.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Cluster and Namespace Ingress
shell: |
set -xe;
./tools/deployment/developer/ceph/020-ingress.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Ceph
shell: |
set -xe;
./tools/deployment/developer/ceph/030-ceph.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Ceph NS Activate
shell: |
set -xe;
./tools/deployment/developer/ceph/035-ceph-ns-activate.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy LDAP
shell: |
set -xe;
./tools/deployment/developer/ceph/040-ldap.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Prometheus
shell: |
set -xe;
./tools/deployment/developer/ceph/050-prometheus.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Alertmanager
shell: |
set -xe;
./tools/deployment/developer/ceph/060-alertmanager.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Kube-State-Metrics
shell: |
set -xe;
./tools/deployment/developer/ceph/070-kube-state-metrics.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Node Exporter
shell: |
set -xe;
./tools/deployment/developer/ceph/080-node-exporter.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Prometheus OpenStack Exporter
shell: |
set -xe;
./tools/deployment/developer/ceph/090-openstack-exporter.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Grafana
shell: |
set -xe;
./tools/deployment/developer/ceph/100-grafana.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Nagios
shell: |
set -xe;
./tools/deployment/developer/ceph/110-nagios.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Elasticsearch
shell: |
set -xe;
./tools/deployment/developer/ceph/120-elasticsearch.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Test LDAP Auth for Elasticsearch
shell: |
set -xe;
./tools/deployment/developer/ceph/125-elasticsearch-ldap.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Fluent-Logging
shell: |
set -xe;
./tools/deployment/developer/ceph/130-fluent-logging.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Kibana
shell: |
set -xe;
./tools/deployment/developer/ceph/140-kibana.sh
args:
chdir: "{{ zuul.project.src_dir }}"

View File

@ -17,7 +17,7 @@
- name: Deploy Required packages
shell: |
set -xe;
./tools/deployment/developer/000-install-packages.sh
./tools/deployment/developer/nfs/000-install-packages.sh
args:
chdir: "{{ zuul.project.src_dir }}"
environment:
@ -25,7 +25,7 @@
- name: Deploy Kubernetes
shell: |
set -xe;
./tools/deployment/developer/005-deploy-k8s.sh
./tools/deployment/developer/nfs/005-deploy-k8s.sh
args:
chdir: "{{ zuul.project.src_dir }}"
environment:
@ -33,90 +33,90 @@
- name: Deploy Registry NFS, Redis, and Docker Registry
shell: |
set -xe;
./tools/deployment/developer/010-deploy-docker-registry.sh
./tools/deployment/developer/nfs/010-deploy-docker-registry.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Cluster and Namespace Ingress
shell: |
set -xe;
./tools/deployment/developer/020-ingress.sh
./tools/deployment/developer/nfs/020-ingress.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy NFS for Logging, Monitoring and Alerting Components
- name: Deploy NFS Provisioner
shell: |
set -xe;
./tools/deployment/developer/030-lma-nfs-provisioner.sh
./tools/deployment/developer/nfs/030-nfs-provisioner.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy LDAP
shell: |
set -xe;
./tools/deployment/developer/040-ldap.sh
./tools/deployment/developer/nfs/040-ldap.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Prometheus
shell: |
set -xe;
./tools/deployment/developer/050-prometheus.sh
./tools/deployment/developer/nfs/050-prometheus.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Alertmanager
shell: |
set -xe;
./tools/deployment/developer/060-alertmanager.sh
./tools/deployment/developer/nfs/060-alertmanager.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Kube-State-Metrics
shell: |
set -xe;
./tools/deployment/developer/070-kube-state-metrics.sh
./tools/deployment/developer/nfs/070-kube-state-metrics.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Node Exporter
shell: |
set -xe;
./tools/deployment/developer/080-node-exporter.sh
./tools/deployment/developer/nfs/080-node-exporter.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Prometheus OpenStack Exporter
shell: |
set -xe;
./tools/deployment/developer/090-openstack-exporter.sh
./tools/deployment/developer/nfs/090-openstack-exporter.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Grafana
shell: |
set -xe;
./tools/deployment/developer/100-grafana.sh
./tools/deployment/developer/nfs/100-grafana.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Nagios
shell: |
set -xe;
./tools/deployment/developer/110-nagios.sh
./tools/deployment/developer/nfs/110-nagios.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Elasticsearch
shell: |
set -xe;
./tools/deployment/developer/120-elasticsearch.sh
./tools/deployment/developer/nfs/120-elasticsearch.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Test LDAP Auth for Elasticsearch
shell: |
set -xe;
./tools/deployment/developer/125-elasticsearch-ldap.sh
./tools/deployment/developer/nfs/125-elasticsearch-ldap.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Fluent-Logging
shell: |
set -xe;
./tools/deployment/developer/130-fluent-logging.sh
./tools/deployment/developer/nfs/130-fluent-logging.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Kibana
shell: |
set -xe;
./tools/deployment/developer/140-kibana.sh
./tools/deployment/developer/nfs/140-kibana.sh
args:
chdir: "{{ zuul.project.src_dir }}"

View File

@ -17,19 +17,25 @@
- name: Deploy Registry NFS, Redis, and Docker Registry
shell: |
set -xe;
./tools/deployment/developer/010-deploy-docker-registry.sh
./tools/deployment/multinode/010-deploy-docker-registry.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Cluster and Namespace Ingress
- name: Deploy Cluster and Namespace Ingresses
shell: |
set -xe;
./tools/deployment/developer/020-ingress.sh
./tools/deployment/multinode/020-ingress.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy NFS for Logging, Monitoring and Alerting Components
- name: Deploy Ceph
shell: |
set -xe;
./tools/deployment/developer/030-lma-nfs-provisioner.sh
./tools/deployment/multinode/030-ceph.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy Ceph NS Activate
shell: |
set -xe;
./tools/deployment/multinode/035-ceph-ns-activate.sh
args:
chdir: "{{ zuul.project.src_dir }}"
- name: Deploy LDAP

View File

@ -21,12 +21,11 @@ make ldap
#NOTE: Deploy command
helm upgrade --install ldap ./ldap \
--namespace=openstack \
--set storage.pvc.class_name=openstack-helm-lma-nfs \
--namespace=osh-infra \
--set bootstrap.enabled=true
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status ldap

View File

@ -16,7 +16,7 @@
set -xe
ELASTICSEARCH_ENDPOINT="elasticsearch-logging.openstack"
ELASTICSEARCH_ENDPOINT="elasticsearch-logging.osh-infra"
#NOTE: Create index with specified LDAP user
function create_index () {

View File

@ -21,10 +21,10 @@ make kibana
#NOTE: Deploy command
helm upgrade --install kibana ./kibana \
--namespace=openstack
--namespace=osh-infra
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status kibana

View File

@ -1 +0,0 @@
../common/010-deploy-docker-registry.sh

View File

@ -1 +0,0 @@
../common/030-lma-nfs-provisioner.sh

View File

@ -1 +0,0 @@
../common/040-ldap.sh

View File

@ -1 +0,0 @@
../common/070-kube-state-metrics.sh

View File

@ -1 +0,0 @@
../common/080-node-exporter.sh

View File

@ -1 +0,0 @@
../common/090-openstack-exporter.sh

View File

@ -1 +0,0 @@
../common/125-elasticsearch-ldap.sh

View File

@ -1 +0,0 @@
../common/140-kibana.sh

View File

@ -0,0 +1 @@
../common/000-install-packages.sh

View File

@ -0,0 +1 @@
../common/005-deploy-k8s.sh

View File

@ -0,0 +1 @@
../../common/010-deploy-docker-registry.sh

View File

@ -0,0 +1,52 @@
#!/bin/bash
# Copyright 2017 The Openstack-Helm Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
set -xe
#NOTE: Lint and package chart
make ingress
#NOTE: Deploy global ingress
tee /tmp/ingress-kube-system.yaml << EOF
deployment:
mode: cluster
type: DaemonSet
network:
host_namespace: true
EOF
helm upgrade --install ingress-kube-system ./ingress \
--namespace=kube-system \
--values=/tmp/ingress-kube-system.yaml
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh kube-system
#NOTE: Display info
helm status ingress-kube-system
#NOTE: Deploy namespace ingress
for NAMESPACE in osh-infra ceph; do
helm upgrade --install ingress-${NAMESPACE} ./ingress \
--namespace=${NAMESPACE} \
${OSH_EXTRA_HELM_ARGS} \
${OSH_EXTRA_HELM_ARGS_INGRESS_OPENSTACK}
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh ${NAMESPACE}
#NOTE: Display info
helm status ingress-${NAMESPACE}
done

View File

@ -0,0 +1,194 @@
#!/bin/bash
# Copyright 2017 The Openstack-Helm Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
set -xe
#NOTE: Lint and package chart
for CHART in ceph-mon ceph-osd ceph-client ceph-provisioners; do
make "${CHART}"
done
#NOTE: Deploy command
: ${OSH_EXTRA_HELM_ARGS:=""}
[ -s /tmp/ceph-fs-uuid.txt ] || uuidgen > /tmp/ceph-fs-uuid.txt
CEPH_FS_ID="$(cat /tmp/ceph-fs-uuid.txt)"
#NOTE(portdirect): to use RBD devices with Ubuntu kernels < 4.5 this
# should be set to 'hammer'
. /etc/os-release
if [ "x${ID}" == "xubuntu" ] && \
[ "$(uname -r | awk -F "." '{ print $2 }')" -lt "5" ]; then
CRUSH_TUNABLES=hammer
else
CRUSH_TUNABLES=null
fi
tee /tmp/ceph.yaml <<EOF
endpoints:
ceph_mon:
namespace: ceph
port:
mon:
default: 6789
ceph_mgr:
namespace: ceph
port:
mgr:
default: 7000
metrics:
default: 9283
network:
public: 172.17.0.1/16
cluster: 172.17.0.1/16
port:
mon: 6789
rgw: 8088
mgr: 7000
deployment:
storage_secrets: true
ceph: true
rbd_provisioner: true
cephfs_provisioner: true
client_secrets: false
rgw_keystone_user_and_endpoints: false
bootstrap:
enabled: true
conf:
rgw_ks:
enabled: false
ceph:
global:
fsid: ${CEPH_FS_ID}
mon_addr: :6789
osd_pool_default_size: 1
osd:
osd_crush_chooseleaf_type: 0
pool:
crush:
tunables: ${CRUSH_TUNABLES}
target:
osd: 1
pg_per_osd: 100
default:
crush_rule: same_host
spec:
# RBD pool
- name: rbd
application: rbd
replication: 1
percent_total_data: 40
# CephFS pools
- name: cephfs_metadata
application: cephfs
replication: 1
percent_total_data: 5
- name: cephfs_data
application: cephfs
replication: 1
percent_total_data: 10
# RadosGW pools
- name: .rgw.root
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.control
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.data.root
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.gc
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.log
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.intent-log
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.meta
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.usage
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.users.keys
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.users.email
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.users.swift
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.users.uid
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.buckets.extra
application: rgw
replication: 1
percent_total_data: 0.1
- name: default.rgw.buckets.index
application: rgw
replication: 1
percent_total_data: 3
- name: default.rgw.buckets.data
application: rgw
replication: 1
percent_total_data: 34.8
storage:
osd:
- data:
type: directory
location: /var/lib/openstack-helm/ceph/osd/osd-one
journal:
type: directory
location: /var/lib/openstack-helm/ceph/osd/journal-one
pod:
replicas:
mds: 1
mgr: 1
rgw: 1
EOF
for CHART in ceph-mon ceph-osd ceph-client ceph-provisioners; do
helm upgrade --install ${CHART} ./${CHART} \
--namespace=ceph \
--values=/tmp/ceph.yaml \
${OSH_INFRA_EXTRA_HELM_ARGS} \
${OSH_INFRA_EXTRA_HELM_ARGS_CEPH_DEPLOY}
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh ceph
#NOTE: Validate deploy
MON_POD=$(kubectl get pods \
--namespace=ceph \
--selector="application=ceph" \
--selector="component=mon" \
--no-headers | awk '{ print $1; exit }')
kubectl exec -n ceph ${MON_POD} -- ceph -s
done

View File

@ -0,0 +1,56 @@
#!/bin/bash
# Copyright 2017 The Openstack-Helm Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
set -xe
#NOTE: Lint and package chart
make ceph-provisioners
#NOTE: Deploy command
: ${OSH_EXTRA_HELM_ARGS:=""}
tee /tmp/ceph-osh-infra-config.yaml <<EOF
endpoints:
ceph_mon:
namespace: ceph
network:
public: 172.17.0.1/16
cluster: 172.17.0.1/16
deployment:
storage_secrets: false
ceph: false
rbd_provisioner: false
cephfs_provisioner: false
client_secrets: true
rgw_keystone_user_and_endpoints: false
bootstrap:
enabled: false
conf:
rgw_ks:
enabled: false
EOF
helm upgrade --install ceph-osh-infra-config ./ceph-provisioners \
--namespace=osh-infra \
--values=/tmp/ceph-osh-infra-config.yaml \
${OSH_EXTRA_HELM_ARGS} \
${OSH_EXTRA_HELM_ARGS_CEPH_NS_ACTIVATE}
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
kubectl get -n osh-infra jobs --show-all
kubectl get -n osh-infra secrets
kubectl get -n osh-infra configmaps

View File

@ -0,0 +1 @@
../../common/040-ldap.sh

View File

@ -0,0 +1 @@
../common/050-prometheus.sh

View File

@ -0,0 +1 @@
../common/060-alertmanager.sh

View File

@ -0,0 +1 @@
../../common/070-kube-state-metrics.sh

View File

@ -0,0 +1 @@
../../common/080-node-exporter.sh

View File

@ -0,0 +1 @@
../../common/090-openstack-exporter.sh

View File

@ -0,0 +1 @@
../common/100-grafana.sh

View File

@ -0,0 +1 @@
../common/110-nagios.sh

View File

@ -0,0 +1 @@
../common/120-elasticsearch.sh

View File

@ -0,0 +1 @@
../../common/125-elasticsearch-ldap.sh

View File

@ -0,0 +1 @@
../common/130-fluent-logging.sh

View File

@ -0,0 +1 @@
../../common/140-kibana.sh

View File

@ -21,11 +21,10 @@ make prometheus
#NOTE: Deploy command
helm upgrade --install prometheus ./prometheus \
--namespace=openstack \
--set storage.storage_class=openstack-helm-lma-nfs
--namespace=osh-infra
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status prometheus

View File

@ -17,16 +17,15 @@
set -xe
#NOTE: Lint and package chart
make alertmanager
make prometheus-alertmanager
#NOTE: Deploy command
helm upgrade --install prometheus-alertmanager ./prometheus-alertmanager \
--namespace=openstack \
--set pod.replicas.alertmanager=1 \
--set storage.storage_class=openstack-helm-lma-nfs
--namespace=osh-infra \
--set pod.replicas.alertmanager=1
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status prometheus-alertmanager

View File

@ -41,11 +41,11 @@ conf:
provider_config: sessions
EOF
helm upgrade --install grafana ./grafana \
--namespace=openstack \
--namespace=osh-infra \
--values=/tmp/grafana.yaml
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status grafana

View File

@ -21,10 +21,10 @@ make nagios
#NOTE: Deploy command
helm upgrade --install nagios ./nagios \
--namespace=openstack
--namespace=osh-infra
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status nagios

View File

@ -21,9 +21,6 @@ make elasticsearch
#NOTE: Deploy command
tee /tmp/elasticsearch.yaml << EOF
storage:
elasticsearch:
storage_class: openstack-helm-lma-nfs
monitoring:
prometheus:
enabled: true
@ -32,11 +29,11 @@ pod:
data: 1
EOF
helm upgrade --install elasticsearch ./elasticsearch \
--namespace=openstack \
--namespace=osh-infra \
--values=/tmp/elasticsearch.yaml
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status elasticsearch

View File

@ -21,12 +21,12 @@ make fluent-logging
#NOTE: Deploy command
helm upgrade --install fluent-logging ./fluent-logging \
--namespace=openstack \
--namespace=osh-infra \
--set monitoring.prometheus.enabled=true \
--set pod.replicas.fluentd=1
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status fluent-logging

View File

@ -0,0 +1 @@
../common/000-install-packages.sh

View File

@ -0,0 +1 @@
../common/005-deploy-k8s.sh

View File

@ -0,0 +1 @@
../../common/010-deploy-docker-registry.sh

View File

@ -16,6 +16,9 @@
set -xe
#NOTE: Lint and package chart
make ingress
#NOTE: Deploy global ingress
tee /tmp/ingress-kube-system.yaml << EOF
deployment:
@ -34,12 +37,14 @@ helm upgrade --install ingress-kube-system ./ingress \
#NOTE: Display info
helm status ingress-kube-system
#NOTE: Deploy namespace ingress controllers
helm upgrade --install ingress-openstack ./ingress \
--namespace=openstack
#NOTE: Deploy namespace ingress
helm upgrade --install ingress-osh-infra ./ingress \
--namespace=osh-infra \
${OSH_INFRA_EXTRA_HELM_ARGS} \
${OSH_INFRA_EXTRA_HELM_ARGS_INGRESS_OPENSTACK}
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Display info
helm status ingress-openstack
helm status ingress-osh-infra

View File

@ -19,19 +19,19 @@ set -xe
make nfs-provisioner
#NOTE: Deploy nfs instance for logging, monitoring and alerting components
tee /tmp/lma-nfs-provisioner.yaml << EOF
tee /tmp/nfs-provisioner.yaml << EOF
labels:
node_selector_key: openstack-control-plane
node_selector_value: enabled
storageclass:
name: openstack-helm-lma-nfs
name: general
EOF
helm upgrade --install lma-nfs-provisioner \
./nfs-provisioner --namespace=openstack \
--values=/tmp/lma-nfs-provisioner.yaml
helm upgrade --install nfs-provisioner \
./nfs-provisioner --namespace=osh-infra \
--values=/tmp/nfs-provisioner.yaml
#NOTE: Wait for deployment
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status lma-nfs-provisioner
helm status nfs-provisioner

View File

@ -0,0 +1 @@
../../common/040-ldap.sh

View File

@ -0,0 +1 @@
../common/050-prometheus.sh

View File

@ -0,0 +1 @@
../common/060-alertmanager.sh

View File

@ -0,0 +1 @@
../../common/070-kube-state-metrics.sh

View File

@ -0,0 +1 @@
../../common/080-node-exporter.sh

View File

@ -0,0 +1 @@
../../common/090-openstack-exporter.sh

View File

@ -0,0 +1 @@
../common/100-grafana.sh

View File

@ -0,0 +1 @@
../common/110-nagios.sh

View File

@ -0,0 +1 @@
../common/120-elasticsearch.sh

View File

@ -0,0 +1 @@
../../common/125-elasticsearch-ldap.sh

View File

@ -0,0 +1 @@
../common/130-fluent-logging.sh

View File

@ -0,0 +1 @@
../../common/140-kibana.sh

View File

@ -16,6 +16,9 @@
set -xe
#NOTE: Lint and package chart
make ingress
#NOTE: Deploy global ingress
tee /tmp/ingress-kube-system.yaml << EOF
pod:
@ -29,7 +32,9 @@ network:
EOF
helm upgrade --install ingress-kube-system ./ingress \
--namespace=kube-system \
--values=/tmp/ingress-kube-system.yaml
--values=/tmp/ingress-kube-system.yaml \
${OSH_INFRA_EXTRA_HELM_ARGS} \
${OSH_INFRA_EXTRA_HELM_ARGS_INGRESS_KUBE_SYSTEM}
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh kube-system
@ -37,19 +42,22 @@ helm upgrade --install ingress-kube-system ./ingress \
#NOTE: Display info
helm status ingress-kube-system
#NOTE: Deploy namespace ingress controllers
tee /tmp/ingress-openstack.yaml << EOF
#NOTE: Deploy namespaced ingress controllers
for NAMESPACE in osh-infra ceph; do
#NOTE: Deploy namespace ingress
tee /tmp/ingress-${NAMESPACE}.yaml << EOF
pod:
replicas:
ingress: 2
error_page: 2
EOF
helm upgrade --install ingress-openstack ./ingress \
--namespace=openstack \
--values=/tmp/ingress-openstack.yaml
helm upgrade --install ingress-${NAMESPACE} ./ingress \
--namespace=${NAMESPACE} \
--values=/tmp/ingress-${NAMESPACE}.yaml
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh ${NAMESPACE}
#NOTE: Display info
helm status ingress-openstack
#NOTE: Display info
helm status ingress-${NAMESPACE}
done

View File

@ -0,0 +1,96 @@
#!/bin/bash
# Copyright 2017 The Openstack-Helm Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
set -xe
#NOTE: Deploy command
[ -s /tmp/ceph-fs-uuid.txt ] || uuidgen > /tmp/ceph-fs-uuid.txt
CEPH_PUBLIC_NETWORK="$(./tools/deployment/multinode/kube-node-subnet.sh)"
CEPH_CLUSTER_NETWORK="$(./tools/deployment/multinode/kube-node-subnet.sh)"
CEPH_FS_ID="$(cat /tmp/ceph-fs-uuid.txt)"
#NOTE(portdirect): to use RBD devices with Ubuntu kernels < 4.5 this
# should be set to 'hammer'
. /etc/os-release
if [ "x${ID}" == "xubuntu" ] && \
[ "$(uname -r | awk -F "." '{ print $2 }')" -lt "5" ]; then
CRUSH_TUNABLES=hammer
else
CRUSH_TUNABLES=null
fi
if [ "x${ID}" == "xcentos" ]; then
CRUSH_TUNABLES=hammer
fi
tee /tmp/ceph.yaml << EOF
endpoints:
identity:
namespace: openstack
object_store:
namespace: ceph
ceph_mon:
namespace: ceph
network:
public: ${CEPH_PUBLIC_NETWORK}
cluster: ${CEPH_CLUSTER_NETWORK}
deployment:
storage_secrets: true
ceph: true
rbd_provisioner: true
cephfs_provisioner: true
client_secrets: false
rgw_keystone_user_and_endpoints: false
bootstrap:
enabled: true
conf:
ceph:
global:
fsid: ${CEPH_FS_ID}
rgw_ks:
enabled: true
pool:
crush:
tunables: ${CRUSH_TUNABLES}
target:
# NOTE(portdirect): 5 nodes, with one osd per node
osd: 5
pg_per_osd: 100
storage:
osd:
- data:
type: directory
location: /var/lib/openstack-helm/ceph/osd/osd-one
journal:
type: directory
location: /var/lib/openstack-helm/ceph/osd/journal-one
EOF
for CHART in ceph-mon ceph-osd ceph-client ceph-provisioners; do
helm upgrade --install ${CHART} ./${CHART} \
--namespace=ceph \
--values=/tmp/ceph.yaml \
${OSH_INFRA_EXTRA_HELM_ARGS} \
${OSH_INFRA_EXTRA_HELM_ARGS_CEPH_DEPLOY}
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh ceph 1200
#NOTE: Validate deploy
MON_POD=$(kubectl get pods \
--namespace=ceph \
--selector="application=ceph" \
--selector="component=mon" \
--no-headers | awk '{ print $1; exit }')
kubectl exec -n ceph ${MON_POD} -- ceph -s
done

View File

@ -1 +0,0 @@
../common/030-lma-nfs-provisioner.sh

View File

@ -0,0 +1,52 @@
#!/bin/bash
# Copyright 2017 The Openstack-Helm Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
set -xe
#NOTE: Deploy command
CEPH_PUBLIC_NETWORK="$(./tools/deployment/multinode/kube-node-subnet.sh)"
CEPH_CLUSTER_NETWORK="$(./tools/deployment/multinode/kube-node-subnet.sh)"
tee /tmp/ceph-osh-infra-config.yaml <<EOF
endpoints:
ceph_mon:
namespace: ceph
network:
public: ${CEPH_PUBLIC_NETWORK}
cluster: ${CEPH_CLUSTER_NETWORK}
deployment:
storage_secrets: false
ceph: false
rbd_provisioner: false
cephfs_provisioner: false
client_secrets: true
rgw_keystone_user_and_endpoints: false
bootstrap:
enabled: false
conf:
rgw_ks:
enabled: false
EOF
helm upgrade --install ceph-osh-infra-config ./ceph-provisioners \
--namespace=osh-infra \
--values=/tmp/ceph-osh-infra-config.yaml \
${OSH_INFRA_EXTRA_HELM_ARGS} \
${OSH_INFRA_EXTRA_HELM_ARGS_CEPH_NS_ACTIVATE}
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status ceph-osh-infra-config

View File

@ -21,12 +21,11 @@ make prometheus
#NOTE: Deploy command
helm upgrade --install prometheus ./prometheus \
--namespace=openstack \
--set storage.storage_class=openstack-helm-lma-nfs \
--namespace=osh-infra \
--set pod.replicas.prometheus=2
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status prometheus

View File

@ -17,15 +17,14 @@
set -xe
#NOTE: Lint and package chart
make alertmanager
make prometheus-alertmanager
#NOTE: Deploy command
helm upgrade --install alertmanager ./prometheus-alertmanager \
--namespace=openstack \
--set storage.storage_class=openstack-helm-lma-nfs
--namespace=osh-infra
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status alertmanager

View File

@ -44,11 +44,11 @@ pod:
grafana: 2
EOF
helm upgrade --install grafana ./grafana \
--namespace=openstack \
--namespace=osh-infra \
--values=/tmp/grafana.yaml
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status grafana

View File

@ -21,11 +21,11 @@ make nagios
#NOTE: Deploy command
helm upgrade --install nagios ./nagios \
--namespace=openstack \
--namespace=osh-infra \
--set pod.replicas.nagios=3
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status nagios

View File

@ -21,9 +21,6 @@ make elasticsearch
#NOTE: Deploy command
tee /tmp/elasticsearch.yaml << EOF
storage:
elasticsearch:
storage_class: openstack-helm-lma-nfs
conf:
elasticsearch:
env:
@ -33,11 +30,11 @@ monitoring:
enabled: true
EOF
helm upgrade --install elasticsearch ./elasticsearch \
--namespace=openstack \
--namespace=osh-infra \
--values=/tmp/elasticsearch.yaml
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status elasticsearch

View File

@ -21,11 +21,11 @@ make fluent-logging
#NOTE: Deploy command
helm upgrade --install fluent-logging ./fluent-logging \
--namespace=openstack \
--namespace=osh-infra \
--set monitoring.prometheus.enabled=true
#NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack
./tools/deployment/common/wait-for-pods.sh osh-infra
#NOTE: Validate Deployment info
helm status fluent-logging

View File

@ -0,0 +1,35 @@
#!/bin/bash
# Copyright 2017 The Openstack-Helm Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
set -e
UTILS_IMAGE=docker.io/openstackhelm/gate-utils:v0.1.0
NODE_IPS=$(mktemp --suffix=.txt)
kubectl get nodes -o json | jq -r '.items[].status.addresses[] | select(.type=="InternalIP").address' | sort -V > $NODE_IPS
FIRST_IP_SUBNET=$(sudo docker run --rm ${UTILS_IMAGE} ipcalc "$(head -n 1 ${NODE_IPS})/24" | awk '/^Network/ { print $2 }')
LAST_IP_SUBNET=$(sudo docker run --rm ${UTILS_IMAGE} ipcalc "$(tail -n 1 ${NODE_IPS})/24" | awk '/^Network/ { print $2 }')
rm -f $NODE_IPS
function ip_diff {
echo $(($(echo $LAST_IP_SUBNET | awk -F '.' "{ print \$$1}") - $(echo $FIRST_IP_SUBNET | awk -F '.' "{ print \$$1}")))
}
for X in {1..4}; do
if ! [ "$(ip_diff ${X})" -eq "0" ]; then
SUBMASK=$((((${X} - 1 )) * 8))
break
elif [ ${X} -eq "4" ]; then
SUBMASK=24
fi
done
echo ${FIRST_IP_SUBNET%/*}/${SUBMASK}