diff --git a/_topic_map.yml b/_topic_map.yml index 1f3929b26dd1..b6eaf244ab1c 100644 --- a/_topic_map.yml +++ b/_topic_map.yml @@ -3019,9 +3019,6 @@ Topics: # Metrics - Name: Metrics File: serverless-admin-metrics - # Metering - - Name: Using metering with OpenShift Serverless - File: serverless-metering # HA - Name: High availability on OpenShift Serverless File: serverless-ha diff --git a/modules/serverless-metering-datasources.adoc b/modules/serverless-metering-datasources.adoc deleted file mode 100644 index b0c7a11c54f3..000000000000 --- a/modules/serverless-metering-datasources.adoc +++ /dev/null @@ -1,76 +0,0 @@ -// Module included in the following assemblies: -// serverless-metering.adoc - -[id="datasources-metering-serverless_{context}"] -= Datasources for Knative Serving metering -The following `ReportDataSources` are examples of how Knative Serving can be used with {product-title} metering. - -[id="knative-service-cpu-usage-ds_{context}"] -== Datasource for CPU usage in Knative Serving -This datasource provides the accumulated CPU seconds used per Knative service over the report time period. - -.YAML file -[source,yaml] ----- -apiVersion: metering.openshift.io/v1 -kind: ReportDataSource -metadata: - name: knative-service-cpu-usage -spec: - prometheusMetricsImporter: - query: > - sum - by(namespace, - label_serving_knative_dev_service, - label_serving_knative_dev_revision) - ( - label_replace(rate(container_cpu_usage_seconds_total{container!="POD",container!="",pod!=""}[1m]), "pod", "$1", "pod", "(.*)") - * - on(pod, namespace) - group_left(label_serving_knative_dev_service, label_serving_knative_dev_revision) - kube_pod_labels{label_serving_knative_dev_service!=""} - ) ----- - -[id="knative-service-memory-usage-ds_{context}"] -== Datasource for memory usage in Knative Serving -This datasource provides the average memory consumption per Knative service over the report time period. - -.YAML file -[source,yaml] ----- -apiVersion: metering.openshift.io/v1 -kind: ReportDataSource -metadata: - name: knative-service-memory-usage -spec: - prometheusMetricsImporter: - query: > - sum - by(namespace, - label_serving_knative_dev_service, - label_serving_knative_dev_revision) - ( - label_replace(container_memory_usage_bytes{container!="POD", container!="",pod!=""}, "pod", "$1", "pod", "(.*)") - * - on(pod, namespace) - group_left(label_serving_knative_dev_service, label_serving_knative_dev_revision) - kube_pod_labels{label_serving_knative_dev_service!=""} - ) ----- - -[id="applying-datasources-knative_{context}"] -== Applying Datasources for Knative Serving metering -You can apply the `ReportDataSources` by using the following command: - -[source,terminal] ----- -$ oc apply -f .yaml ----- - -.Example - -[source,terminal] ----- -$ oc apply -f knative-service-memory-usage.yaml ----- diff --git a/modules/serverless-metering-queries.adoc b/modules/serverless-metering-queries.adoc deleted file mode 100644 index 7961e7203599..000000000000 --- a/modules/serverless-metering-queries.adoc +++ /dev/null @@ -1,138 +0,0 @@ -// Module included in the following assemblies: -// serverless-metering.adoc - -[id="queries-metering-serverless_{context}"] -= Queries for Knative Serving metering -The following `ReportQuery` resources reference the example `DataSources` provided. - -[id="knative-service-cpu-usage-query_{context}"] -== Query for CPU usage in Knative Serving - -.YAML file - -[source,yaml] ----- -apiVersion: metering.openshift.io/v1 -kind: ReportQuery -metadata: - name: knative-service-cpu-usage -spec: - inputs: - - name: ReportingStart - type: time - - name: ReportingEnd - type: time - - default: knative-service-cpu-usage - name: KnativeServiceCpuUsageDataSource - type: ReportDataSource - columns: - - name: period_start - type: timestamp - unit: date - - name: period_end - type: timestamp - unit: date - - name: namespace - type: varchar - unit: kubernetes_namespace - - name: service - type: varchar - - name: data_start - type: timestamp - unit: date - - name: data_end - type: timestamp - unit: date - - name: service_cpu_seconds - type: double - unit: cpu_core_seconds - query: | - SELECT - timestamp '{| default .Report.ReportingStart .Report.Inputs.ReportingStart| prestoTimestamp |}' AS period_start, - timestamp '{| default .Report.ReportingEnd .Report.Inputs.ReportingEnd | prestoTimestamp |}' AS period_end, - labels['namespace'] as project, - labels['label_serving_knative_dev_service'] as service, - min("timestamp") as data_start, - max("timestamp") as data_end, - sum(amount * "timeprecision") AS service_cpu_seconds - FROM {| dataSourceTableName .Report.Inputs.KnativeServiceCpuUsageDataSource |} - WHERE "timestamp" >= timestamp '{| default .Report.ReportingStart .Report.Inputs.ReportingStart | prestoTimestamp |}' - AND "timestamp" < timestamp '{| default .Report.ReportingEnd .Report.Inputs.ReportingEnd | prestoTimestamp |}' - GROUP BY labels['namespace'],labels['label_serving_knative_dev_service'] ----- - -[id="knative-service-memory-usage-query_{context}"] -== Query for memory usage in Knative Serving - -.YAML file - -[source,yaml] ----- -apiVersion: metering.openshift.io/v1 -kind: ReportQuery -metadata: - name: knative-service-memory-usage -spec: - inputs: - - name: ReportingStart - type: time - - name: ReportingEnd - type: time - - default: knative-service-memory-usage - name: KnativeServiceMemoryUsageDataSource - type: ReportDataSource - columns: - - name: period_start - type: timestamp - unit: date - - name: period_end - type: timestamp - unit: date - - name: namespace - type: varchar - unit: kubernetes_namespace - - name: service - type: varchar - - name: data_start - type: timestamp - unit: date - - name: data_end - type: timestamp - unit: date - - name: service_usage_memory_byte_seconds - type: double - unit: byte_seconds - query: | - SELECT - timestamp '{| default .Report.ReportingStart .Report.Inputs.ReportingStart| prestoTimestamp |}' AS period_start, - timestamp '{| default .Report.ReportingEnd .Report.Inputs.ReportingEnd | prestoTimestamp |}' AS period_end, - labels['namespace'] as project, - labels['label_serving_knative_dev_service'] as service, - min("timestamp") as data_start, - max("timestamp") as data_end, - sum(amount * "timeprecision") AS service_usage_memory_byte_seconds - FROM {| dataSourceTableName .Report.Inputs.KnativeServiceMemoryUsageDataSource |} - WHERE "timestamp" >= timestamp '{| default .Report.ReportingStart .Report.Inputs.ReportingStart | prestoTimestamp |}' - AND "timestamp" < timestamp '{| default .Report.ReportingEnd .Report.Inputs.ReportingEnd | prestoTimestamp |}' - GROUP BY labels['namespace'],labels['label_serving_knative_dev_service'] ----- - -[id="applying-queries-knative_{context}"] -== Applying Queries for Knative Serving metering - -. Apply the `ReportQuery` by entering the following command: -+ - -[source,terminal] ----- -$ oc apply -f .yaml ----- - -+ -.Example command -+ - -[source,terminal] ----- -$ oc apply -f knative-service-memory-usage.yaml ----- diff --git a/modules/serverless-metering-reports.adoc b/modules/serverless-metering-reports.adoc deleted file mode 100644 index 1fef860171ac..000000000000 --- a/modules/serverless-metering-reports.adoc +++ /dev/null @@ -1,56 +0,0 @@ -// Module included in the following assemblies: -// serverless-metering.adoc - -[id="reports-metering-serverless_{context}"] -= Metering reports for Knative Serving - -You can run metering reports against Knative Serving by creating `Report` resources. -Before you run a report, you must modify the input parameter within the `Report` resource to specify the start and end dates of the reporting period. - -.YAML file - -[source,yaml] ----- -apiVersion: metering.openshift.io/v1 -kind: Report -metadata: - name: knative-service-cpu-usage -spec: - reportingStart: '2019-06-01T00:00:00Z' <1> - reportingEnd: '2019-06-30T23:59:59Z' <2> - query: knative-service-cpu-usage <3> -runImmediately: true ----- - -<1> Start date of the report, in ISO 8601 format. -<2> End date of the report, in ISO 8601 format. -<3> Either `knative-service-cpu-usage` for CPU usage report or `knative-service-memory-usage` for a memory usage report. - -[id="reports-metering-serverless-run_{context}"] -== Running a metering report - -. Run the report by entering the following command: -+ - -[source,terminal] ----- -$ oc apply -f .yml ----- - -. You can then check the report by entering the following command: -+ - -[source,terminal] ----- -$ oc get report ----- - -+ -.Example output -+ - -[source,terminal] ----- -NAME QUERY SCHEDULE RUNNING FAILED LAST REPORT TIME AGE -knative-service-cpu-usage knative-service-cpu-usage Finished 2019-06-30T23:59:59Z 10h ----- diff --git a/serverless/admin_guide/serverless-metering.adoc b/serverless/admin_guide/serverless-metering.adoc deleted file mode 100644 index 7b89618e67a8..000000000000 --- a/serverless/admin_guide/serverless-metering.adoc +++ /dev/null @@ -1,28 +0,0 @@ -include::modules/serverless-document-attributes.adoc[] -[id="metering-serverless"] -= Using metering with {ServerlessProductName} -:context: metering-serverless -include::modules/common-attributes.adoc[] - -toc::[] - -:FeatureName: Metering -include::modules/deprecated-feature.adoc[leveloffset=+1] - -As a cluster administrator, you can use metering to analyze what is happening in your {ServerlessProductName} cluster. - -For more information about metering on {product-title}, see xref:../../metering/metering-about-metering.adoc#about-metering[About metering]. - -[NOTE] -==== -Metering is not currently supported for IBM Z and IBM Power Systems. -==== - -[id="installing-metering-serverless"] -== Installing metering - -For information about installing metering on {product-title}, see xref:../../metering/metering-installing-metering.adoc#installing-metering[Installing Metering]. - -include::modules/serverless-metering-datasources.adoc[leveloffset=+1] -include::modules/serverless-metering-queries.adoc[leveloffset=+1] -include::modules/serverless-metering-reports.adoc[leveloffset=+1]