d64c5fea64
Change-Id: If41dae31763abac8c9c65b1650556438a9b6b0df
123 lines
3.4 KiB
Bash
Executable File
123 lines
3.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# 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 elasticsearch
|
|
|
|
#NOTE: Deploy command
|
|
tee /tmp/elasticsearch.yaml << EOF
|
|
jobs:
|
|
verify_repositories:
|
|
cron: "*/3 * * * *"
|
|
curator:
|
|
cron: "*/10 * * * *"
|
|
monitoring:
|
|
prometheus:
|
|
enabled: true
|
|
pod:
|
|
replicas:
|
|
client: 1
|
|
data: 1
|
|
master: 2
|
|
conf:
|
|
elasticsearch:
|
|
snapshots:
|
|
enabled: true
|
|
curator:
|
|
action_file:
|
|
actions:
|
|
1:
|
|
action: delete_indices
|
|
description: >-
|
|
"Delete indices older than 365 days"
|
|
options:
|
|
timeout_override:
|
|
continue_if_exception: False
|
|
ignore_empty_list: True
|
|
disable_action: False
|
|
filters:
|
|
- filtertype: pattern
|
|
kind: prefix
|
|
value: logstash-
|
|
- filtertype: age
|
|
source: name
|
|
direction: older
|
|
timestring: '%Y.%m.%d'
|
|
unit: days
|
|
unit_count: 365
|
|
2:
|
|
action: snapshot
|
|
description: >-
|
|
"Snapshot all indices older than 365 days"
|
|
options:
|
|
repository: logstash_snapshots
|
|
name: "snapshot-%Y-.%m.%d"
|
|
wait_for_completion: True
|
|
max_wait: 36000
|
|
wait_interval: 30
|
|
ignore_empty_list: True
|
|
continue_if_exception: False
|
|
disable_action: False
|
|
filters:
|
|
- filtertype: age
|
|
source: name
|
|
direction: older
|
|
timestring: '%Y.%m.%d'
|
|
unit: days
|
|
unit_count: 365
|
|
3:
|
|
action: delete_snapshots
|
|
description: >-
|
|
"Delete index snapshots older than 365 days"
|
|
options:
|
|
repository: logstash_snapshots
|
|
timeout_override: 1200
|
|
retry_interval: 120
|
|
retry_count: 5
|
|
ignore_empty_list: True
|
|
continue_if_exception: False
|
|
disable_action: False
|
|
filters:
|
|
- filtertype: pattern
|
|
kind: prefix
|
|
value: snapshot-
|
|
- filtertype: age
|
|
source: name
|
|
direction: older
|
|
timestring: '%Y.%m.%d'
|
|
unit: days
|
|
unit_count: 365
|
|
|
|
EOF
|
|
|
|
: ${OSH_INFRA_EXTRA_HELM_ARGS_ELASTICSEARCH:="$(./tools/deployment/common/get-values-overrides.sh elasticsearch)"}
|
|
|
|
helm upgrade --install elasticsearch ./elasticsearch \
|
|
--namespace=osh-infra \
|
|
--values=/tmp/elasticsearch.yaml\
|
|
${OSH_INFRA_EXTRA_HELM_ARGS} \
|
|
${OSH_INFRA_EXTRA_HELM_ARGS_ELASTICSEARCH}
|
|
|
|
#NOTE: Wait for deploy
|
|
./tools/deployment/common/wait-for-pods.sh osh-infra
|
|
|
|
#NOTE: Validate Deployment info
|
|
helm status elasticsearch
|
|
|
|
# Delete the test pod if it still exists
|
|
kubectl delete pods -l application=elasticsearch,release_group=elasticsearch,component=test --namespace=osh-infra --ignore-not-found
|
|
helm test elasticsearch
|