prometheusoperator

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 30, 2019 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AdmissionWebhooks

type AdmissionWebhooks struct {
	FailurePolicy string `yaml:"failurePolicy"`
	Enabled       bool   `yaml:"enabled"`
	Patch         *Patch `yaml:"patch"`
}

type DefaultRules

type DefaultRules struct {
	Create      bool              `yaml:"create"`
	Rules       *Rules            `yaml:"rules"`
	Labels      map[string]string `yaml:"labels"`
	Annotations map[string]string `yaml:"annotations"`
}

type DisabledTool

type DisabledTool struct {
	Enabled bool `yaml:"enabled"`
}

type Global

type Global struct {
	Rbac             *Rbac         `yaml:"rbac"`
	ImagePullSecrets []interface{} `yaml:"imagePullSecrets"`
}

type Image

type Image struct {
	Repository string `yaml:"repository"`
	Tag        string `yaml:"tag"`
	PullPolicy string `yaml:"pullPolicy"`
}

type KubeletService

type KubeletService struct {
	Enabled   bool   `yaml:"enabled"`
	Namespace string `yaml:"namespace"`
}

type Patch

type Patch struct {
	Enabled           bool              `yaml:"enabled"`
	Image             *Image            `yaml:"image"`
	PriorityClassName string            `yaml:"priorityClassName"`
	PodAnnotations    map[string]string `yaml:"podAnnotations"`
	NodeSelector      map[string]string `yaml:"nodeSelector"`
}

type PrometheusOperator

type PrometheusOperator struct {
	ApplicationDirectoryPath string
	// contains filtered or unexported fields
}

func New

func New(logger logging.Logger, toolsDirectoryPath string) *PrometheusOperator

func (*PrometheusOperator) Reconcile

func (p *PrometheusOperator) Reconcile(overlay, specNamespace string, helm *template.Helm, spec *toolsetsv1beta1.PrometheusOperator) error

type PrometheusOperatorValues

type PrometheusOperatorValues struct {
	Enabled                       bool               `yaml:"enabled"`
	TLSProxy                      *TLSProxy          `yaml:"tlsProxy"`
	AdmissionWebhooks             *AdmissionWebhooks `yaml:"admissionWebhooks"`
	DenyNamespaces                []string           `yaml:"denyNamespaces"`
	ServiceAccount                *ServiceAccount    `yaml:"serviceAccount"`
	Service                       *Service           `yaml:"service"`
	CreateCustomResource          bool               `yaml:"createCustomResource"`
	CrdAPIGroup                   string             `yaml:"crdApiGroup"`
	CleanupCustomResource         bool               `yaml:"cleanupCustomResource"`
	PodLabels                     map[string]string  `yaml:"podLabels"`
	PodAnnotations                map[string]string  `yaml:"podAnnotations"`
	KubeletService                *KubeletService    `yaml:"kubeletService"`
	ServiceMonitor                *ServiceMonitor    `yaml:"serviceMonitor"`
	Resources                     struct{}           `yaml:"resources"`
	NodeSelector                  map[string]string  `yaml:"nodeSelector"`
	Tolerations                   []interface{}      `yaml:"tolerations"`
	Affinity                      struct{}           `yaml:"affinity"`
	SecurityContext               *SecurityContext   `yaml:"securityContext"`
	Image                         *Image             `yaml:"image"`
	ConfigmapReloadImage          *Image             `yaml:"configmapReloadImage"`
	PrometheusConfigReloaderImage *Image             `yaml:"prometheusConfigReloaderImage"`
	ConfigReloaderCPU             string             `yaml:"configReloaderCpu"`
	ConfigReloaderMemory          string             `yaml:"configReloaderMemory"`
	HyperkubeImage                *Image             `yaml:"hyperkubeImage"`
}

type Rbac

type Rbac struct {
	Create     bool `yaml:"create"`
	PspEnabled bool `yaml:"pspEnabled"`
}

type Rules

type Rules struct {
	Alertmanager                bool `yaml:"alertmanager"`
	Etcd                        bool `yaml:"etcd"`
	General                     bool `yaml:"general"`
	K8S                         bool `yaml:"k8s"`
	KubeApiserver               bool `yaml:"kubeApiserver"`
	KubePrometheusNodeAlerting  bool `yaml:"kubePrometheusNodeAlerting"`
	KubePrometheusNodeRecording bool `yaml:"kubePrometheusNodeRecording"`
	KubernetesAbsent            bool `yaml:"kubernetesAbsent"`
	KubernetesApps              bool `yaml:"kubernetesApps"`
	KubernetesResources         bool `yaml:"kubernetesResources"`
	KubernetesStorage           bool `yaml:"kubernetesStorage"`
	KubernetesSystem            bool `yaml:"kubernetesSystem"`
	KubeScheduler               bool `yaml:"kubeScheduler"`
	Network                     bool `yaml:"network"`
	Node                        bool `yaml:"node"`
	Prometheus                  bool `yaml:"prometheus"`
	PrometheusOperator          bool `yaml:"prometheusOperator"`
	Time                        bool `yaml:"time"`
}

type SecurityContext

type SecurityContext struct {
	RunAsNonRoot bool `yaml:"runAsNonRoot"`
	RunAsUser    int  `yaml:"runAsUser"`
}

type Service

type Service struct {
	Annotations              map[string]string `yaml:"annotations"`
	Labels                   map[string]string `yaml:"labels"`
	ClusterIP                string            `yaml:"clusterIP"`
	NodePort                 int               `yaml:"nodePort"`
	NodePortTLS              int               `yaml:"nodePortTls"`
	AdditionalPorts          []interface{}     `yaml:"additionalPorts"`
	LoadBalancerIP           string            `yaml:"loadBalancerIP"`
	LoadBalancerSourceRanges []interface{}     `yaml:"loadBalancerSourceRanges"`
	Type                     string            `yaml:"type"`
	ExternalIPs              []interface{}     `yaml:"externalIPs"`
}

type ServiceAccount

type ServiceAccount struct {
	Create bool   `yaml:"create"`
	Name   string `yaml:"name"`
}

type ServiceMonitor

type ServiceMonitor struct {
	Interval          string        `yaml:"interval"`
	SelfMonitor       bool          `yaml:"selfMonitor"`
	MetricRelabelings []interface{} `yaml:"metricRelabelings"`
	Relabelings       []interface{} `yaml:"relabelings"`
}

type TLSProxy

type TLSProxy struct {
	Enabled   bool        `yaml:"enabled"`
	Image     *Image      `yaml:"image"`
	Resources interface{} `yaml:"resources"`
}

type Values

type Values struct {
	NameOverride              string                    `yaml:"nameOverride"`
	FullnameOverride          string                    `yaml:"fullnameOverride"`
	CommonLabels              map[string]string         `yaml:"commonLabels"`
	DefaultRules              *DefaultRules             `yaml:"defaultRules"`
	AdditionalPrometheusRules []interface{}             `yaml:"additionalPrometheusRules"`
	Global                    *Global                   `yaml:"global"`
	Alertmanager              *DisabledTool             `yaml:"alertmanager"`
	Grafana                   *DisabledTool             `yaml:"grafana"`
	KubeAPIServer             *DisabledTool             `yaml:"kubeApiServer"`
	Kubelet                   *DisabledTool             `yaml:"kubelet"`
	KubeControllerManager     *DisabledTool             `yaml:"kubeControllerManager"`
	CoreDNS                   *DisabledTool             `yaml:"coreDns"`
	KubeDNS                   *DisabledTool             `yaml:"kubeDns"`
	KubeEtcd                  *DisabledTool             `yaml:"kubeEtcd"`
	KubeScheduler             *DisabledTool             `yaml:"kubeScheduler"`
	KubeProxy                 *DisabledTool             `yaml:"kubeProxy"`
	KubeStateMetricsScrap     *DisabledTool             `yaml:"kubeStateMetrics"`
	KubeStateMetrics          *DisabledTool             `yaml:"kube-state-metrics"`
	NodeExporter              *DisabledTool             `yaml:"nodeExporter"`
	PrometheusNodeExporter    *DisabledTool             `yaml:"prometheus-node-exporter"`
	PrometheusOperator        *PrometheusOperatorValues `yaml:"prometheusOperator"`
	Prometheus                *DisabledTool             `yaml:"prometheus"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL