This PS udpates the Prometheus values to use yaml rather than text.
It also consolates all configuration into a single `etc` configmap,
inline with other OSH charts.
Change-Id: I162d4817a2b1b842499ef27d754707f8fce23bf3
This PS splits the `prometheus_pod_annotations.tpl` into seperate
files for each definition contained within it to be consistent
with other funstions in Helm-Toolkit, which can be located by path
from their name.
Change-Id: Ief9e31ead7eb1028cedd8e608d6b11e53e63e515
Currently, services have two serviceaccounts: one specified in the
chart that cannot read anything, and one injected via helm-toolkit
that can read everything. This patch set refactors the logic to:
- cleanup the roles and their binding automatically when the helm
chart is deleted;
- remove the need to separately mount a serviceaccount with secret;
- better handling of namespaces resource restriction.
Co-Authored-By: portdirect <pete@port.direct>
Change-Id: I47d41e0cad9b5b002f59fc9652bad2cc025538dc
This adds the ability to define custom alert template via the
values.yaml file for Alertmanager. This will provide the ability
for an operator to define actions to be taken upon an alert firing
such as sending Slack alerts, email alerts, or any other
organization-specific action
Change-Id: I78a40e43cfeb7391699908a1f73b57846fedbcbb
Adds additional flags to Alertmanager for the peer meshing. This
also adds a headless discovery service so each instance can
calculate the DNS names of its mesh peers on startup.
Change-Id: I2ba7f4aec88f73e6bc3ff31117973ebb4e85ceba
This ps adds the ability for the NFS-provisioner to use a volume
claim for providing storage for other services. This provides the
ability to provide read-write-many access backed by a
read-write-once storage class, in situations where such a
requirement exists.
Change-Id: I7dcf79b871fd4fa699ee4e3a50151a654f27761f
Fixes an issue preventing the elastic curator configuration being
populated via elasticsearch's values.yaml
Change-Id: I74901c1aa99abc56a06ea95ca9ea9d818761d79b
This adds the prometheus- prefix to the alertmanager,
kube-state-metrics and node exporter charts to reflect their
intended usage as part of a prometheus centric monitoring solution
This will imply a logical grouping of these components, similar to
their deployment in the osh-infra gates
Change-Id: I4f391a10b64389022f01a94ea3704c110f8f9bb5
This patch sets fixes the make clean target as it currently attempts
to delete the generated */charts up the parents, where the directory
is guaranteed to be non-empty.
Change-Id: Id1327998cc1cdc73bdf0113d5ec68330d9fc70f0
This PS moves the default storage access-mode to ReadWriteOnce, as
the PVC is created inline with the statefulset. So ReadWriteMany will
have no effect, as a volume is created per pod.
Change-Id: I2a6a28832c0b1beedeb3e280572b3717628f7b88
Updates the Prometheus chart to use version 2.0 by default. This
introduces a change in the rules format (to yaml), and changes the
flags required for the storage layer.
Change-Id: Icb06a6570683b7accebc142f75901530c6359180
This PS updates the fluent-logging chart to use the same entrypoint
pattern as other OSH components.
Change-Id: I3bf9baf9824e1b7f7e46c4fcae292240566d9153
The current fluent-bit implementation only supports the json-file
log driver for docker, this PS moves CentOS and Fedora to use that
until we can support Journald.
Change-Id: I8aa876aa96119d9a1a0e06c28873e3c4c1e3ace5
This PS fixes pip and jq installation on CentOS. It also removes
some duplicate code in the gate playbooks.
Co-Authored-By: portdirect <pete@port.direct>
This patch set should fix an issue where centos cannot find
python-pip in the EPEL.
Change-Id: If3a437e0756a363b8cefaa9a8bdd1c3498fedbfd
This introduces an initial helm chart for fluent logging.
It provides a functional fluent-bit and fluentd deployment to
use in conjunction with elasticsearch and kibana to consume
and aggregate logs from all resource types in a cluster.
It can deliver logs to kafka for external tools to consume.
This PS moves fluent-logging chart from osh-addons, osh to
osh-infra repo.
previous ps(addon): https://review.openstack.org/#/c/507023/
previous ps(osh): https://review.openstack.org/#/c/514622/
Specification: https://review.openstack.org/#/c/505491/
Partially implements: blueprint osh-logging-framework
Change-Id: I72e580aa3a197550060fc07af8396a7c8368d40b
This allows the keystone endpoint uri lookup function to
avoid adding a FQDN suffix to an IP address based host
entry.
Change-Id: I016e6512fb21182a8be9e3de1e4a2da59a20fb36
This PS brings the OSH-Infra Make inline with OSH and allows images
to be pulled on a per chart basis to the local machine.
Change-Id: Ieda89adf97140a2ad3824ff36e969bd016ccdf00
The elasticsearch tests fail because the pods don't have
readiness or liveliness probes in the templates. This adds those
definitions
Change-Id: I4fd25aec5ae02d89ae1b933d8b083a3e9cafc55a
Adds tasks to gather descriptions of kubernetes objects, logs from
deployed pods, logs from helm test pods, the status of each
helm release, and metrics from endpoints exposed to prometheus
Change-Id: I606797c6a5d75ba446ed2c16a9710f7b0227f910
Alertmanager and prometheus were missing entries for job
resources in values.yaml. Also added resources to the prometheus
helm test template
Change-Id: I11dbad19d1f881c398a4b4dcd0c0eab23fccf278
This moves the Elasticsearch chart to OSH infra, along with rbac
rules for running Elasticsearch. It includes a cronjob for running
ES Curator for cleaning up old indices
Change-Id: I69fcbe8b77de8b594eba5340a6e4340f389ba5bf
This will move prometheus to OSH-infra to be included as part of
the basic infrastructure deploy for openstack-helm. It includes
charts for Prometheus, Node Exporter, Kube-State-Metrics, and
Alertmanager. It provides a base for monitoring and alerting
for the underlying infrastructure
Partially Implements: blueprint osh-monitoring
Change-Id: Ie453373b54c5f1825339ce0566e4b5d0f74abc20
Adds a common-helm-test task executed as part of the
deploy-helm-packages playbook. It allows the ability to run helm
tests against a chart by including a helm_test key in the chart
definition
Change-Id: I52bd5ca2fafa4eb704369590f7903c127133b090
This adds extra args for the kube-scheduler to expose metrics on
port 10251 on all interfaces. This allows for Prometheus to gather
metrics for the scheduler
Change-Id: I26d473f511f6541a14a9387be1ce56841572bfff
This PS resolves an issue in the way ansible variables are merged
re-enableing use of the gate scripts for local development use.
Change-Id: Ia18a9f92816e4cc49f1c5423c04bed8a80abc6dc