Created
August 22, 2019 10:37
-
-
Save deepak1725/db31a65f118a32b531ac7574fc4a00ba to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
apiVersion: v1 | |
kind: Template | |
labels: | |
template: metrics-accumulator | |
metadata: | |
name: metrics-accumulator | |
annotations: | |
description: metrics-accumulator | |
objects: | |
- apiVersion: v1 | |
kind: PersistentVolumeClaim | |
metadata: | |
name: bayesian-prometheus-pvc | |
spec: | |
accessModes: | |
- ReadWriteOnce | |
resources: | |
requests: | |
storage: 10Gi | |
- apiVersion: v1 | |
kind: DeploymentConfig | |
metadata: | |
labels: | |
service: metrics-accumulator | |
name: metrics-accumulator | |
spec: | |
replicas: "${{REPLICAS}}" | |
selector: | |
service: metrics-accumulator | |
strategy: | |
type: Recreate | |
template: | |
metadata: | |
labels: | |
service: metrics-accumulator | |
spec: | |
containers: | |
- env: | |
- name: NUMBER_WORKER_PROCESS | |
value: "${NUMBER_WORKER_PROCESS}" | |
- name: METRICS_COLLECTOR_SERVICE_PORT | |
value: "${METRICS_COLLECTOR_SERVICE_PORT}" | |
- name: METRICS_COLLECTOR_SERVICE_TIMEOUT | |
value: "${METRICS_COLLECTOR_SERVICE_TIMEOUT}" | |
- name: SENTRY_DSN | |
value: "${SENTRY_DSN}" | |
- name: CLASS_TYPE | |
value: "${CLASS_TYPE}" | |
- name: FLASK_LOGGING_LEVEL | |
value: ${FLASK_LOGGING_LEVEL} | |
- name: RESET_COUNTER_ON_RESTART | |
value: "${RESET_COUNTER_ON_RESTART}" | |
- name: SENTRY_DSN | |
valueFrom: | |
secretKeyRef: | |
name: worker | |
key: sentry_dsn | |
image: "${DOCKER_REGISTRY}/${DOCKER_IMAGE}:${IMAGE_TAG}" | |
name: metrics-accumulator | |
ports: | |
- containerPort: ${{METRICS_COLLECTOR_SERVICE_PORT}} | |
livenessProbe: | |
initialDelaySeconds: 60 | |
periodSeconds: 60 | |
timeoutSeconds: 30 | |
failureThreshold: 3 | |
successThreshold: 1 | |
tcpSocket: | |
port: ${{METRICS_COLLECTOR_SERVICE_PORT}} | |
readinessProbe: | |
tcpSocket: | |
port: ${{METRICS_COLLECTOR_SERVICE_PORT}} | |
failureThreshold: 3 | |
successThreshold: 1 | |
initialDelaySeconds: 20 | |
periodSeconds: 60 | |
timeoutSeconds: 30 | |
resources: | |
requests: | |
cpu: ${CPU_REQUEST} | |
memory: ${MEMORY_REQUEST} | |
limits: | |
cpu: ${CPU_LIMIT} | |
memory: ${MEMORY_LIMIT} | |
volumeMounts: | |
- mountPath: "/var/log/prometheus" | |
name: bayesian-prometheus-pv | |
volumes: | |
- name: bayesian-prometheus-pv | |
persistentVolumeClaim: | |
claimName: bayesian-prometheus-pvc | |
- apiVersion: v1 | |
kind: Service | |
metadata: | |
labels: | |
service: metrics-accumulator | |
name: metrics-accumulator | |
spec: | |
ports: | |
- port: ${{METRICS_COLLECTOR_SERVICE_PORT}} | |
name: "${METRICS_COLLECTOR_SERVICE_PORT}" | |
targetPort: ${{METRICS_COLLECTOR_SERVICE_PORT}} | |
protocol: TCP | |
selector: | |
service: metrics-accumulator | |
- apiVersion: v1 | |
kind: Route | |
metadata: | |
name: metrics-accumulator | |
spec: | |
host: ${METRICS_COLLECTOR_API_HOSTNAME} | |
to: | |
kind: Service | |
name: metrics-accumulator | |
parameters: | |
- description: A hostname where the Metrics Collector API should be exposed (will be auto-generated if empty) | |
displayName: Metrics Collector API hostname | |
required: false | |
name: METRICS_COLLECTOR_API_HOSTNAME | |
- description: CPU request | |
displayName: CPU request | |
required: true | |
name: CPU_REQUEST | |
value: "128m" | |
- description: CPU limit | |
displayName: CPU limit | |
required: true | |
name: CPU_LIMIT | |
value: "500m" | |
- description: Memory request | |
displayName: Memory request | |
required: true | |
name: MEMORY_REQUEST | |
value: "512Mi" | |
- description: Memory limit | |
displayName: Memory limit | |
required: true | |
name: MEMORY_LIMIT | |
value: "512Mi" | |
- description: Docker registry where the image is | |
displayName: Docker registry | |
required: true | |
name: DOCKER_REGISTRY | |
value: "quay.io" | |
- description: Docker image to use | |
displayName: Docker image | |
required: true | |
name: DOCKER_IMAGE | |
value: "openshiftio/metrics-accumulator" | |
- description: Image tag | |
displayName: Image tag | |
required: true | |
name: IMAGE_TAG | |
value: "latest" | |
- description: Number of deployment replicas | |
displayName: Number of deployment replicas | |
required: true | |
name: REPLICAS | |
value: "1" | |
- description: Port Number | |
displayName: Port Number | |
required: true | |
name: METRICS_COLLECTOR_SERVICE_PORT | |
value: "5200" | |
- description: Timeout Value | |
displayName: Timeout Value | |
required: true | |
name: METRICS_COLLECTOR_SERVICE_TIMEOUT | |
value: "30" | |
- description: Number of worker processes | |
displayName: Number of worker proceses | |
required: true | |
name: NUMBER_WORKER_PROCESS | |
value: "1" | |
- description: Class Type | |
displayName: Class Type | |
required: true | |
name: CLASS_TYPE | |
value: "gevent" | |
- description: "Flask logging level (see: https://docs.python.org/3/library/logging.html#levels)" | |
displayName: Flask logging level | |
required: false | |
name: FLASK_LOGGING_LEVEL | |
value: "INFO" | |
- description: "Reset Gauge Counter on Restart of service" | |
displayName: Reset Counter on Restart | |
required: false | |
name: RESET_COUNTER_ON_RESTART | |
value: "0" | |
- description: Sentry DSN | |
displayName: Sentry DSN | |
required: false | |
name: SENTRY_DSN | |
value: "" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment