MeterBase/v1alpha1
MeterBase is the resource that sets up Metering for Red Hat Marketplace. This is an internal resource not meant to be modified directly.
apiVersion
Description: APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
Type: string
Property | Type | Description |
---|---|---|
apiVersion | string | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
kind
Description: Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
Type: string
Property | Type | Description |
---|---|---|
kind | string | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
metadata
Description: (No Description)
Type: object
Property | Type | Description |
---|---|---|
metadata | object | (No Description) |
spec
Description: MeterBaseSpec defines the desired state of MeterBase
Type: object
Property | Type | Description |
---|---|---|
spec | object | MeterBaseSpec defines the desired state of MeterBase |
spec.additionalScrapeConfigs | object | AdditionalConfigs are set by meter definitions and meterbase to what is available on the system. |
spec.additionalScrapeConfigs.key | string | The key of the secret to select from. Must be a valid secret key. |
spec.additionalScrapeConfigs.name | string | Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid? |
spec.additionalScrapeConfigs.optional | boolean | Specify whether the Secret or its key must be defined |
spec.dataServiceEnabled | boolean | DataServiceEnabled is the flag that controls if the DataService will be created. Setting enabled to “true” will install DataService components. False will delete the DataServicecomponents. |
spec.enabled | boolean | Enabled is the flag that controls if the controller does work. Setting enabled to “true” will install metering components. False will suspend controller operations for metering components. |
spec.meterdefinitionCatalogServerConfig | object | MeterdefinitionCatalogServerConfig holds configuration for the Meterdefinition Catalog Server. |
spec.meterdefinitionCatalogServerConfig.deployMeterDefinitionCatalogServer | boolean | DeployMeterDefinitionCatalogServer controls whether the deploymentconfig controller will deploy the resources needed to create the Meterdefinition Catalog Server. Setting DeployMeterDefinitionCatalogServer to “true” wil install a DeploymentConfig, ImageStream, and Service. |
spec.meterdefinitionCatalogServerConfig.syncCommunityMeterDefinitions | boolean | SyncCommunityMeterDefinitions represents the enablement of logic that will sync community meterdefinitions from the meterdefinition catalog, defaults to true when not set |
spec.meterdefinitionCatalogServerConfig.syncSystemMeterDefinitions | boolean | SyncSystemMeterDefinitions represents the enablement of logic that will sync system meterdefinitions from the meterdefinition catalog, defaults to true when not set |
spec.prometheus | object | Prometheus deployment configuration. |
spec.prometheus.replicas | integer | Replicas defines the number of desired replicas for the prometheus deployment. Used primarily when running metering on CRC |
spec.prometheus.resources | object | Resource requirements for the deployment. Default is not defined. |
spec.prometheus.resources.claims | array | Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container.This is an alpha field and requires enabling the DynamicResourceAllocation feature gate.This field is immutable. It can only be set for containers. |
spec.prometheus.resources.limits | object | Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
spec.prometheus.resources.requests | object | Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
spec.prometheus.selector | object | Selector for the pods in the Prometheus deployment |
spec.prometheus.storage | object | Storage for the deployment. |
spec.prometheus.storage.class | string | Storage class for the prometheus stateful set. Default is "" i.e. default. |
spec.prometheus.storage.emptyDir | object | EmptyDir is a temporary storage type that gets created on the prometheus pod. When this is defined metering will run on CRC. |
spec.prometheus.storage.emptyDir.medium | string | medium represents what type of storage medium should back this directory. The default is "" which means to use the node’s default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
spec.prometheus.storage.emptyDir.sizeLimit | (No Type) | sizeLimit is the total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir |
spec.prometheus.storage.size | string | Storage size for the prometheus deployment. Default is 40Gi. |
spec.userWorkloadMonitoringEnabled | boolean | UserWorkloadMonitoringEnabled controls whether to attempt to use Openshift user-defined workload monitoring as the Prometheus provider |
status
Description: MeterBaseStatus defines the observed state of MeterBase.
Type: object
Property | Type | Description |
---|---|---|
status | object | MeterBaseStatus defines the observed state of MeterBase. |
status.availableReplicas | integer | Total number of available pods (ready for at least minReadySeconds) targeted by this Prometheus deployment. |
status.conditions | array | MeterBaseConditions represent the latest available observations of an object’s stateonfig |
status.meterdefinitionCatalogServerStatus | object | MeterdefinitionCatalogServerStatus is the most recent observed status of the Meterdefinition Catalog Server. Read-only. Not included when requesting from the apiserver, only from the Prometheus |
status.meterdefinitionCatalogServerStatus.conditions | array | MeterdefinitionCatalogServerConditions represent the latest available observations of an object’s stateonfig |
status.prometheusStatus | object | PrometheusStatus is the most recent observed status of the Prometheus cluster. Read-only. Not included when requesting from the apiserver, only from the Prometheus |
status.prometheusStatus.availableReplicas | integer | Total number of available pods (ready for at least minReadySeconds) targeted by this Prometheus deployment. |
status.prometheusStatus.conditions | array | The current state of the Prometheus deployment. |
status.prometheusStatus.paused | boolean | Represents whether any actions on the underlying managed objects are being performed. Only delete actions will be performed. |
status.prometheusStatus.replicas | integer | Total number of non-terminated pods targeted by this Prometheus deployment (their labels match the selector). |
status.prometheusStatus.shardStatuses | array | The list has one entry per shard. Each entry provides a summary of the shard status. |
status.prometheusStatus.unavailableReplicas | integer | Total number of unavailable pods targeted by this Prometheus deployment. |
status.prometheusStatus.updatedReplicas | integer | Total number of non-terminated pods targeted by this Prometheus deployment that have the desired version spec. |
status.replicas | integer | Total number of non-terminated pods targeted by this Prometheus deployment (their labels match the selector). |
status.targets | array | Targets is a list of prometheus activeTargets |
status.unavailableReplicas | integer | Total number of unavailable pods targeted by this Prometheus deployment. |
status.updatedReplicas | integer | Total number of non-terminated pods targeted by this Prometheus deployment that have the desired version spec. |