From dbad66160b4736cfa45070a5c2ea164b4c947fb8 Mon Sep 17 00:00:00 2001 From: Chance Zibolski Date: Wed, 3 Apr 2019 13:00:04 -0700 Subject: [PATCH] manifests: Regenerate manifests for 0.14.0 --- .../metering-operator-deployment.yaml | 4 +- ...metering.0.14.0.clusterserviceversion.yaml | 440 ++++++++++++++++++ .../openshift/olm/metering.package.yaml | 2 +- 3 files changed, 443 insertions(+), 3 deletions(-) create mode 100644 manifests/deploy/openshift/olm/metering.0.14.0.clusterserviceversion.yaml diff --git a/manifests/deploy/openshift/helm-operator/metering-operator-deployment.yaml b/manifests/deploy/openshift/helm-operator/metering-operator-deployment.yaml index 912980e48..211ba8e11 100644 --- a/manifests/deploy/openshift/helm-operator/metering-operator-deployment.yaml +++ b/manifests/deploy/openshift/helm-operator/metering-operator-deployment.yaml @@ -20,7 +20,7 @@ spec: runAsNonRoot: true containers: - name: metering-operator - image: "quay.io/coreos/metering-helm-operator:0.13.0-latest" + image: "quay.io/coreos/metering-helm-operator:0.14.0" args: ["run-operator.sh"] imagePullPolicy: Always env: @@ -62,7 +62,7 @@ spec: memory: 100Mi - name: tiller - image: "quay.io/coreos/metering-helm-operator:0.13.0-latest" + image: "quay.io/coreos/metering-helm-operator:0.14.0" args: ["tiller"] imagePullPolicy: Always env: diff --git a/manifests/deploy/openshift/olm/metering.0.14.0.clusterserviceversion.yaml b/manifests/deploy/openshift/olm/metering.0.14.0.clusterserviceversion.yaml new file mode 100644 index 000000000..f4c359136 --- /dev/null +++ b/manifests/deploy/openshift/olm/metering.0.14.0.clusterserviceversion.yaml @@ -0,0 +1,440 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + name: metering-operator.v0.14.0 + namespace: placeholder + annotations: + alm-examples: |- + [ + { + "apiVersion": "metering.openshift.io/v1alpha1", + "kind": "Metering", + "metadata": { + "name": "operator-metering" + }, + "spec": {} + }, + { + "apiVersion": "metering.openshift.io/v1alpha1", + "kind": "Report", + "metadata": { + "name": "namespace-memory-usage-hourly" + }, + "spec": { + "generationQuery": "namespace-memory-usage", + "schedule": { + "period": "hourly" + } + } + } + ] + categories: OpenShift Optional, Monitoring + certified: "false" + containerImage: quay.io/coreos/metering-helm-operator:0.14.0 + createdAt: 2019-01-01T11:59:59Z + description: Chargeback and reporting tool to provide accountability for how resources + are used across a cluster + support: Red Hat, Inc. + +spec: + displayName: Metering + description: | + Operator Metering is a chargeback and reporting tool to provide accountability for how resources are used across a cluster. Cluster admins can schedule reports based on historical usage data by Pod, Namespace, and Cluster wide. Operator Metering is part of the [Operator Framework](https://coreos.com/blog/introducing-operator-framework-metering). + + Read the user guide for more details on [running and viewing your first report](https://github.com/operator-framework/operator-metering/blob/master/Documentation/using-metering.md). + + ### Core capabilities + + * **Chargeback/Showback** - Break down the reserved and utlized resources requested by applications. + + * **Pod, Namespace & Cluster Reports** - Built in reports exist to break down CPU and RAM in any way you desire. + + * **Scheduled Reports** - Schedule reports to run on a standard interval, eg. daily or monthly + + * **Post-Processing** - Reports are generated in CSV format and stored in persistent storage for further post-processing. Use this to send reminder emails, integrate into your ERP system, or graph on a dashboard. + + * **HTTP API** - Reports can be queried from an in-cluster HTTP API in addition to reading from persistent storage. + + ### Before you start + + Metering runs a big data stack to crunch your data and requires at least 4GB of RAM and 4 CPU cores. At least one Node should have 2GB of RAM and 2 CPU cores. Memory and CPU consumption may often be lower, but will spike when running reports, or collecting data for larger clusters. + + ### Common Configurations + + Metering works out of the box without any customizations or configuration. Read the [full documentation](https://github.com/operator-framework/operator-metering/blob/master/Documentation/metering-config.md) for more details. + + * **Use a specific StorageClass** - Follow the example to [use your own StorageClass](https://github.com/operator-framework/operator-metering/blob/master/manifests/metering-config/custom-storage.yaml) instead of the Dynamic Provisioner. + + * **Store data in S3 instead of PV** - Store your report output [in an S3 bucket](https://github.com/operator-framework/operator-metering/blob/master/Documentation/configuring-storage.md#storing-data-in-s3) instead of a PersistentVolume. + + * **Configure AWS Billing Data Source** - To assign Pod $$ costs on AWS, create a [read-only IAM user](https://github.com/operator-framework/operator-metering/blob/master/Documentation/configuring-aws-billing.md) ([example-policy](https://github.com/operator-framework/operator-metering/blob/master/Documentation/aws/read-only.json)) and [configure Metering](https://github.com/operator-framework/operator-metering/blob/master/manifests/metering-config/aws-billing.yaml) to use it. + + keywords: [metering metrics reporting prometheus chargeback] + version: 0.14.0 + maturity: alpha + maintainers: + - email: sd-operator-metering@redhat.com + name: Red Hat + + provider: + name: Red Hat + + labels: + operator-metering: "true" + + selector: + matchLabels: + operator-metering: "true" + + installModes: + - supported: true + type: OwnNamespace + - supported: true + type: SingleNamespace + - supported: false + type: MultiNamespace + - supported: false + type: AllNamespaces + + install: + strategy: deployment + spec: + clusterPermissions: + - rules: + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - apiGroups: + - authorization.k8s.io + resources: + - subjectaccessreviews + verbs: + - create + - apiGroups: + - authentication.k8s.io + resources: + - tokenreviews + verbs: + - create + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterrolebindings + - clusterroles + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch + serviceAccountName: metering-operator + + permissions: + - rules: + - apiGroups: + - metering.openshift.io + resources: + - '*' + verbs: + - '*' + - apiGroups: + - monitoring.coreos.com + resources: + - '*' + verbs: + - '*' + - apiGroups: + - "" + resources: + - pods + - pods/attach + - pods/exec + - pods/portforward + - pods/proxy + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch + - apiGroups: + - "" + resources: + - configmaps + - endpoints + - persistentvolumeclaims + - replicationcontrollers + - replicationcontrollers/scale + - secrets + - serviceaccounts + - services + - services/proxy + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch + - apiGroups: + - "" + resources: + - bindings + - events + - limitranges + - namespaces/status + - pods/log + - pods/status + - replicationcontrollers/status + - resourcequotas + - resourcequotas/status + verbs: + - get + - list + - watch + - apiGroups: + - "" + resources: + - events + verbs: + - create + - update + - patch + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - list + - watch + - apiGroups: + - apps + resources: + - deployments + - deployments/rollback + - deployments/scale + - statefulsets + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch + - apiGroups: + - batch + resources: + - cronjobs + - jobs + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch + - apiGroups: + - extensions + resources: + - daemonsets + - deployments + - deployments/rollback + - deployments/scale + - replicasets + - replicasets/scale + - replicationcontrollers/scale + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch + - apiGroups: + - rbac.authorization.k8s.io + resources: + - rolebindings + - roles + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch + - apiGroups: + - route.openshift.io + resources: + - routes + verbs: + - create + - get + - list + - watch + - update + - delete + serviceAccountName: metering-operator + + deployments: + - name: metering-operator + spec: + replicas: 1 + selector: + matchLabels: + app: metering-operator + strategy: + type: Recreate + template: + metadata: + labels: + app: metering-operator + spec: + containers: + - args: + - run-operator.sh + env: + - name: HELM_RELEASE_CRD_NAME + value: Metering + - name: HELM_RELEASE_CRD_API_GROUP + value: metering.openshift.io + - name: HELM_CHART_PATH + value: /openshift-metering-0.1.0.tgz + - name: ALL_NAMESPACES + value: "false" + - name: TARGET_NAMESPACES + valueFrom: + fieldRef: + fieldPath: metadata.annotations['olm.targetNamespaces'] + - name: MY_POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: MY_POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: HELM_HOST + value: 127.0.0.1:44134 + - name: HELM_WAIT + value: "false" + - name: HELM_RECONCILE_INTERVAL_SECONDS + value: "30" + - name: RELEASE_HISTORY_LIMIT + value: "3" + image: quay.io/coreos/metering-helm-operator:0.14.0 + imagePullPolicy: Always + name: metering-operator + resources: + limits: + cpu: 50m + memory: 100Mi + requests: + cpu: 50m + memory: 100Mi + - args: + - tiller + env: + - name: TILLER_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: TILLER_HISTORY_MAX + value: "3" + image: quay.io/coreos/metering-helm-operator:0.14.0 + imagePullPolicy: Always + livenessProbe: + failureThreshold: 3 + httpGet: + path: /liveness + port: 44135 + scheme: HTTP + initialDelaySeconds: 1 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 1 + name: tiller + readinessProbe: + failureThreshold: 3 + httpGet: + path: /readiness + port: 44135 + scheme: HTTP + initialDelaySeconds: 1 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 1 + resources: + limits: + cpu: 50m + memory: 100Mi + requests: + cpu: 50m + memory: 50Mi + restartPolicy: Always + securityContext: + runAsNonRoot: true + serviceAccount: metering-operator + terminationGracePeriodSeconds: 30 + + customresourcedefinitions: + owned: + - description: A SQL query used by Metering to generate reports. + displayName: Metering Generation Query + kind: ReportGenerationQuery + name: reportgenerationqueries.metering.openshift.io + version: v1alpha1 + - description: An instance of Metering with high-level configuration + displayName: Metering + kind: Metering + name: meterings.metering.openshift.io + version: v1alpha1 + - description: A scheduled or on-off Metering Report summarizes data based on the + query specified. + displayName: Metering Report + kind: Report + name: reports.metering.openshift.io + version: v1alpha1 + - description: A Prometheus query that Metering can use to collect metrics. + displayName: Metering Prometheus Query + kind: ReportPrometheusQuery + name: reportprometheusqueries.metering.openshift.io + version: v1alpha1 + - description: A resource describing a source of data for usage by Report Generation + Queries. + displayName: Metering Data Source + kind: ReportDataSource + name: reportdatasources.metering.openshift.io + version: v1alpha1 + - description: Represents a configurable storage location for Metering to store metering + and report data. + displayName: Metering Storage Location + kind: StorageLocation + name: storagelocations.metering.openshift.io + version: v1alpha1 + - description: Used under-the-hood. A resource describing a source of data for usage + by Report Generation Queries. + displayName: Metering Presto Table + kind: PrestoTable + name: prestotables.metering.openshift.io + version: v1alpha1 + diff --git a/manifests/deploy/openshift/olm/metering.package.yaml b/manifests/deploy/openshift/olm/metering.package.yaml index b28266def..1fdfe68ff 100644 --- a/manifests/deploy/openshift/olm/metering.package.yaml +++ b/manifests/deploy/openshift/olm/metering.package.yaml @@ -1,5 +1,5 @@ packageName: metering channels: -- currentCSV: metering-operator.v0.13.0-latest +- currentCSV: metering-operator.v0.14.0 name: alpha