We are bringing the best of Tectonic to Red Hat OpenShift to build the most secure, hybrid Kubernetes application platform.
Parts of Tectonic Monitoring are configurable. This configuration lies in a ConfigMap called tectonic-monitoring
in the tectonic-system
namespace. The configuration file itself is defined under the config.yaml
key within the ConfigMap's data.
Configuring Tectonic Monitoring is optional. If the config does not exist, or is empty or malformed, then defaults will be used.
In certain environments it may be required that container images are downloaded from a custom registry rather than from the canonical container image repositories on quay.io.
This is an example configuration with all image parameters set to a custom registry:
prometheusOperator:
baseImage: custom-registry.com/prometheus-operator
prometheusConfigReloaderBaseImage: custom-registry.com/prometheus-config-reloader
configReloaderBaseImage: custom-registry.com/configmap-reload
prometheusK8s:
baseImage: custom-registry.com/prometheus
alertmanagerMain:
baseImage: custom-registry.com/alertmanager
auth:
baseImage: custom-registry.com/tectonic-monitoring-auth
nodeExporter:
baseImage: custom-registry.com/node-exporter
kubeStateMetrics:
baseImage: custom-registry.com/kube-state-metrics
Note: The container images coming from repositories of a custom registry are expected to mirror the canonical repositories on quay.io.
The following configuration options are available for Tectonic Monitoring.
The Config object represents the top level keys of the YAML configuration. Refer to the underlying configuration objects for their individual fields.
[ prometheusOperator: <PrometheusOperatorConfig> ]
[ prometheusK8s: <PrometheusK8sConfig> ]
[ alertmanagerMain: <AlertmanagerMainConfig> ]
[ ingress: <IngressConfig> ]
[ auth: <AuthConfig> ]
[ nodeExporter: <NodeExporterConfig> ]
[ kubeStateMetrics: <KubeStateMetricsConfig> ]
Use PrometheusOperatorConfig to customize the base images used by the Prometheus Operator.
# baseImage references a base container image. Defaults to "quay.io/coreos/prometheus-operator".
baseImage: <string>
# prometheusConfigReloaderBaseImage references a base container image. Defaults to "quay.io/coreos/prometheus-config-reloader".
prometheusConfigReloaderBaseImage: <string>
# configReloaderBaseImage references a base container image. Defaults to "quay.io/coreos/configmap-reload".
configReloaderBaseImage: <string>
Use PrometheusK8sConfig to customize the Prometheus instance used for cluster monitoring.
# retention time for samples.
retention: <string>
# baseImage references a base container image. Defaults to "quay.io/prometheus/prometheus".
baseImage: <string>
# nodeSelector defines the nodes on which the Prometheus server will be scheduled.
nodeSelector:
[ - <labelname>: <labelvalue> ]
# resources defines the resource requests and limits for the Prometheus instance.
resources: [v1.ResourceRequirements](https://kubernetes.io/docs/api-reference/v1.6/#resourcerequirements-v1-core)
Use AlertmanagerMainConfig to customize the central Alertmanager cluster.
# baseImage references a base container image. Defaults to "quay.io/prometheus/alertmanager".
baseImage: <string>
# nodeSelector defines the nodes on which Alertmanager instances will be scheduled.
nodeSelector:
[ - <labelname>: <labelvalue> ]
# resources defines the resource requests and limits for the Alertmanager instances.
resources: [v1.ResourceRequirements](https://kubernetes.io/docs/api-reference/v1.6/#resourcerequirements-v1-core)
Use IngressConfig to configure the parameters used to expose Prometheus and Alertmanager via Ingress.
# baseAddress is the dns name that the Tectonic Console is reachable under. If unset, Tectonic Monitoring will attempt to retrieve the value from information present in the cluster, and fall back to `prometheus.tectonic-system.svc` in case of errors.
baseAddress: <string>
# tlsSecretName is the name of the TLS secret tectonic-monitoring-ingress should use. In unset will use the same TLS secret as tectonic-ingress, and failing that will default to `tectonic-ingress-tls-secret`
tlsSecretName: <string>
Use AuthConfig to configure parameters for deployment of tectonic-monitoring-auth-prometheus
and tectonic-monitoring-auth-alertmanager
components.
# baseImage is the container image repository that will be used to deploy monitoring auth service, along with the tag specified in the asset manifest. Defaults to repository listed in manifests in assets folder.
baseImage: <string>
Use NodeExporterConfig to configure parameters for deployment of the node-exporter
components.
# baseImage is the container image repository that will be used to deploy the node-exporter pods
baseImage: <string>
Use KubeStateMetricsConfig to configure parameters for deployment of the kube-state-metrics
components.
# baseImage is the container image repository that will be used to deploy the kube-state-metrics pods
baseImage: <string>