Remove Kibana indices before pod start up
The ps removes kibana indices from elasticsearch when a pod comes up. It also removes the source code in values.yaml for the flush job since it is not needed at this point. Change-Id: Icb0376fed4872308b26e608d5be0fbac504d802d
This commit is contained in:
parent
fa174c00db
commit
122dcef629
@ -15,7 +15,7 @@ apiVersion: v1
|
|||||||
appVersion: v7.1.0
|
appVersion: v7.1.0
|
||||||
description: OpenStack-Helm Kibana
|
description: OpenStack-Helm Kibana
|
||||||
name: kibana
|
name: kibana
|
||||||
version: 0.1.5
|
version: 0.1.6
|
||||||
home: https://www.elastic.co/products/kibana
|
home: https://www.elastic.co/products/kibana
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/elastic/kibana
|
- https://github.com/elastic/kibana
|
||||||
|
@ -14,6 +14,23 @@ limitations under the License.
|
|||||||
*/}}
|
*/}}
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
|
{{- if .Values.manifests.wait_for_kibana_pods_readiness }}
|
||||||
|
echo "Waiting for all Kibana pods to become Ready"
|
||||||
|
count=1
|
||||||
|
# Wait up to 30 minutes for all Kibana pods to become Ready. This does not necessarily mean
|
||||||
|
# Kibana pods will take up to 30 minutes to come up. This script will wait up to 30 minutes
|
||||||
|
# instead of going into an infinite loop to wait. This timed out value should be reduced once
|
||||||
|
# Kibana startup is enhanced.
|
||||||
|
while [[ $(kubectl get pods -n {{ .Release.Namespace }} -l application=kibana,component=dashboard -o 'jsonpath={..status.conditions[?(@.type=="Ready")].status}') =~ "False" ]]; do
|
||||||
|
sleep 30
|
||||||
|
if [[ $count -eq 60 ]]; then
|
||||||
|
echo "Timed out waiting for all Kibana pods to become Ready, proceed to create index patterns."
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
((count++))
|
||||||
|
done
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
{{- range $objectType, $indices := .Values.conf.create_kibana_indexes.indexes }}
|
{{- range $objectType, $indices := .Values.conf.create_kibana_indexes.indexes }}
|
||||||
{{- range $indices }}
|
{{- range $indices }}
|
||||||
curl -K- <<< "--user ${ELASTICSEARCH_USERNAME}:${ELASTICSEARCH_PASSWORD}" \
|
curl -K- <<< "--user ${ELASTICSEARCH_USERNAME}:${ELASTICSEARCH_PASSWORD}" \
|
||||||
|
@ -17,6 +17,10 @@ set -e
|
|||||||
COMMAND="${@:-start}"
|
COMMAND="${@:-start}"
|
||||||
|
|
||||||
function start () {
|
function start () {
|
||||||
|
|
||||||
|
curl --cacert /etc/elasticsearch/certs/ca.crt -K- <<< "--user ${ELASTICSEARCH_USERNAME}:${ELASTICSEARCH_PASSWORD}" \
|
||||||
|
-XDELETE "${ELASTICSEARCH_HOSTS}/.kibana*"
|
||||||
|
|
||||||
exec /usr/share/kibana/bin/kibana \
|
exec /usr/share/kibana/bin/kibana \
|
||||||
--elasticsearch.hosts="${ELASTICSEARCH_HOSTS}" \
|
--elasticsearch.hosts="${ELASTICSEARCH_HOSTS}" \
|
||||||
--elasticsearch.username="${ELASTICSEARCH_USERNAME}" \
|
--elasticsearch.username="${ELASTICSEARCH_USERNAME}" \
|
||||||
|
@ -22,6 +22,9 @@ apiVersion: batch/v1
|
|||||||
kind: Job
|
kind: Job
|
||||||
metadata:
|
metadata:
|
||||||
name: register-kibana-indexes
|
name: register-kibana-indexes
|
||||||
|
annotations:
|
||||||
|
"helm.sh/hook": post-install,post-upgrade
|
||||||
|
"helm.sh/hook-delete-policy": before-hook-creation
|
||||||
spec:
|
spec:
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
@ -81,4 +84,30 @@ spec:
|
|||||||
configMap:
|
configMap:
|
||||||
name: kibana-bin
|
name: kibana-bin
|
||||||
defaultMode: 0755
|
defaultMode: 0755
|
||||||
|
---
|
||||||
|
kind: ClusterRole
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
metadata:
|
||||||
|
name: {{ $serviceAccountName }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- ''
|
||||||
|
resources:
|
||||||
|
- pods
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ $serviceAccountName }}
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ $serviceAccountName }}
|
||||||
|
namespace: {{ $envAll.Release.Namespace }}
|
||||||
|
roleRef:
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ $serviceAccountName }}
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
@ -26,7 +26,6 @@ images:
|
|||||||
dep_check: quay.io/airshipit/kubernetes-entrypoint:v1.0.0
|
dep_check: quay.io/airshipit/kubernetes-entrypoint:v1.0.0
|
||||||
image_repo_sync: docker.io/library/docker:17.07.0
|
image_repo_sync: docker.io/library/docker:17.07.0
|
||||||
register_kibana_indexes: docker.io/openstackhelm/heat:newton-ubuntu_xenial
|
register_kibana_indexes: docker.io/openstackhelm/heat:newton-ubuntu_xenial
|
||||||
flush_kibana_metadata: docker.io/openstackhelm/heat:newton-ubuntu_xenial
|
|
||||||
pull_policy: IfNotPresent
|
pull_policy: IfNotPresent
|
||||||
local_registry:
|
local_registry:
|
||||||
active: false
|
active: false
|
||||||
@ -54,13 +53,6 @@ pod:
|
|||||||
register_kibana_indexes:
|
register_kibana_indexes:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
readOnlyRootFilesystem: true
|
readOnlyRootFilesystem: true
|
||||||
flush_kibana_metadata:
|
|
||||||
pod:
|
|
||||||
runAsUser: 1000
|
|
||||||
container:
|
|
||||||
flush_kibana_metadata:
|
|
||||||
allowPrivilegeEscalation: false
|
|
||||||
readOnlyRootFilesystem: true
|
|
||||||
affinity:
|
affinity:
|
||||||
anti:
|
anti:
|
||||||
type:
|
type:
|
||||||
@ -110,13 +102,6 @@ pod:
|
|||||||
limits:
|
limits:
|
||||||
memory: "1024Mi"
|
memory: "1024Mi"
|
||||||
cpu: "2000m"
|
cpu: "2000m"
|
||||||
flush_kibana_metadata:
|
|
||||||
requests:
|
|
||||||
memory: "128Mi"
|
|
||||||
cpu: "100m"
|
|
||||||
limits:
|
|
||||||
memory: "1024Mi"
|
|
||||||
cpu: "2000m"
|
|
||||||
probes:
|
probes:
|
||||||
kibana:
|
kibana:
|
||||||
kibana:
|
kibana:
|
||||||
@ -160,26 +145,13 @@ dependencies:
|
|||||||
- endpoint: internal
|
- endpoint: internal
|
||||||
service: local_image_registry
|
service: local_image_registry
|
||||||
kibana:
|
kibana:
|
||||||
jobs:
|
|
||||||
- flush-kibana-metadata
|
|
||||||
services:
|
services:
|
||||||
- endpoint: internal
|
- endpoint: internal
|
||||||
service: elasticsearch
|
service: elasticsearch
|
||||||
register_kibana_indexes:
|
register_kibana_indexes:
|
||||||
jobs:
|
|
||||||
- flush-kibana-metadata
|
|
||||||
services:
|
services:
|
||||||
- endpoint: internal
|
- endpoint: internal
|
||||||
service: kibana
|
service: kibana
|
||||||
flush_kibana_metadata:
|
|
||||||
services:
|
|
||||||
- endpoint: internal
|
|
||||||
service: elasticsearch
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
flush_kibana_metadata:
|
|
||||||
backoffLimit: 6
|
|
||||||
activeDeadlineSeconds: 600
|
|
||||||
|
|
||||||
conf:
|
conf:
|
||||||
httpd: |
|
httpd: |
|
||||||
@ -424,5 +396,5 @@ manifests:
|
|||||||
service: true
|
service: true
|
||||||
service_ingress: true
|
service_ingress: true
|
||||||
job_register_kibana_indexes: true
|
job_register_kibana_indexes: true
|
||||||
job_flush_kibana_metadata: true
|
wait_for_kibana_pods_readiness: false
|
||||||
...
|
...
|
||||||
|
@ -6,4 +6,5 @@ kibana:
|
|||||||
- 0.1.3 Enable TLS with Elasticsearch
|
- 0.1.3 Enable TLS with Elasticsearch
|
||||||
- 0.1.4 Enable TLS for Kibana ingress path
|
- 0.1.4 Enable TLS for Kibana ingress path
|
||||||
- 0.1.5 Use full image ref for docker official images
|
- 0.1.5 Use full image ref for docker official images
|
||||||
|
- 0.1.6 Remove Kibana indices before pod start up
|
||||||
...
|
...
|
||||||
|
Loading…
Reference in New Issue
Block a user