#!/bin/bash # # Copyright 2014-2015 Red Hat, Inc. and/or its affiliates # and other contributors as indicated by the @author tags. # # 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. # apiVersion: "v1" kind: "Template" metadata: name: metrics-deployer-template annotations: description: "Template for deploying the required Metrics integration. Requires cluster-admin 'metrics-deployer' service account and 'metrics-deployer' secret." tags: "infrastructure" labels: metrics-infra: deployer provider: openshift component: deployer objects: - apiVersion: v1 kind: Pod metadata: generateName: metrics-deployer- spec: containers: - image: ${IMAGE_PREFIX}metrics-deployer:${IMAGE_VERSION} name: deployer volumeMounts: - name: secret mountPath: /secret readOnly: true - name: empty mountPath: /etc/deploy env: - name: PROJECT valueFrom: fieldRef: fieldPath: metadata.namespace - name: IMAGE_PREFIX value: ${IMAGE_PREFIX} - name: IMAGE_VERSION value: ${IMAGE_VERSION} - name: MASTER_URL value: ${MASTER_URL} - name: MODE value: ${MODE} - name: REDEPLOY value: ${REDEPLOY} - name: USE_PERSISTENT_STORAGE value: ${USE_PERSISTENT_STORAGE} - name: HAWKULAR_METRICS_HOSTNAME value: ${HAWKULAR_METRICS_HOSTNAME} - name: CASSANDRA_NODES value: ${CASSANDRA_NODES} - name: CASSANDRA_PV_SIZE value: ${CASSANDRA_PV_SIZE} - name: METRIC_DURATION value: ${METRIC_DURATION} - name: METRIC_RESOLUTION value: ${METRIC_RESOLUTION} dnsPolicy: ClusterFirst restartPolicy: Never serviceAccount: metrics-deployer volumes: - name: empty emptyDir: {} - name: secret secret: secretName: metrics-deployer parameters: - description: 'Specify prefix for metrics components; e.g. for "openshift/origin-metrics-deployer:latest", set prefix "openshift/origin-"' name: IMAGE_PREFIX value: "registry.access.redhat.com/openshift3/" - description: 'Specify version for metrics components; e.g. for "openshift/origin-metrics-deployer:latest", set version "latest"' name: IMAGE_VERSION value: "3.2.1" - description: "Internal URL for the master, for authentication retrieval" name: MASTER_URL value: "https://kubernetes.default.svc:443" - description: "External hostname where clients will reach Hawkular Metrics" name: HAWKULAR_METRICS_HOSTNAME required: true - description: "Can be set to: 'deploy' to perform an initial deployment; 'refresh' to delete and redeploy all components but to keep persisted data and routes; 'redeploy' to delete and redeploy everything (losing all data in the process)" name: MODE value: "deploy" - description: "(Deprecated) Turns 'deploy' mode into 'redeploy' mode, deleting and redeploying everything (losing all data in the process)" name: REDEPLOY value: "false" - description: "Set to true for persistent storage, set to false to use non persistent storage" name: USE_PERSISTENT_STORAGE value: "true" - description: "The number of Cassandra Nodes to deploy for the initial cluster" name: CASSANDRA_NODES value: "1" - description: "The persistent volume size for each of the Cassandra nodes" name: CASSANDRA_PV_SIZE value: "10Gi" - description: "How many days metrics should be stored for." name: METRIC_DURATION value: "7" - description: "How often metrics should be gathered. Defaults value of '10s' for 10 seconds" name: METRIC_RESOLUTION value: "10s"