Documentation ¶
Overview ¶
Package v2alpha1 contains API Schema definitions for the datadoghq v2alpha1 API group +kubebuilder:object:generate=true +groupName=datadoghq.com
Index ¶
- Variables
- func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
- type APMFeatureConfig
- type AdmissionControllerFeatureConfig
- type CSPMFeatureConfig
- type CWSFeatureConfig
- type ClusterChecksRunnerFeatureConfig
- type ConfigMapConfig
- type ContainerCollectionFeatureConfig
- type CustomConfig
- type DatadogAgent
- type DatadogAgentGenericContainer
- type DatadogAgentList
- type DatadogAgentPodTemplateOverride
- type DatadogAgentResourceOverride
- type DatadogAgentSpec
- type DatadogAgentStatus
- type DatadogCredentials
- type DatadogFeatures
- type DatadogMonitorFeatureConfig
- type Endpoint
- type ExternalMetricsServerFeatureConfig
- type GlobalConfig
- type HostPortConfig
- type ImageConfig
- type KubeStateMetricsCoreFeatureConfig
- type KubeletConfig
- type LocalService
- type LogCollectionFeatureConfig
- type NPMFeatureConfig
- type NetworkPolicyConfig
- type NetworkPolicyFlavor
- type OrchestratorExplorerFeatureConfig
- type ProcessCollectionFeatureConfig
- type PrometheusScrapeFeatureConfig
- type ResourceName
- type Secret
- type USMFeatureConfig
- type UnixDomainSocketConfig
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "datadoghq.com", Version: "v2alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func GetOpenAPIDefinitions ¶
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
Types ¶
type APMFeatureConfig ¶
type APMFeatureConfig struct { // Enabled enables Application Performance Monitoring. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // HostPortConfig contains host port configuration. // Enabled Default: false // Port Default: 8126 // +optional HostPortConfig *HostPortConfig `json:"hostPortConfig,omitempty"` // UnixDomainSocketConfig contains socket configuration. // See also: https://docs.datadoghq.com/agent/kubernetes/apm/?tab=helm#agent-environment-variables // Enabled Default: true // Path Default: `/var/run/datadog/apm.socket` // +optional UnixDomainSocketConfig *UnixDomainSocketConfig `json:"unixDomainSocket,omitempty"` }
APMFeatureConfig contains APM (Application Performance Monitoring) configuration. APM runs in the Trace Agent.
func (*APMFeatureConfig) DeepCopy ¶
func (in *APMFeatureConfig) DeepCopy() *APMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APMFeatureConfig.
func (*APMFeatureConfig) DeepCopyInto ¶
func (in *APMFeatureConfig) DeepCopyInto(out *APMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdmissionControllerFeatureConfig ¶
type AdmissionControllerFeatureConfig struct { // Enabled enables the Admission Controller. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // MutateUnlabelled enables config injection without the need of pod label 'admission.datadoghq.com/enabled="true"'. // Default: false // +optional MutateUnlabelled *bool `json:"mutateUnlabelled,omitempty"` // ServiceName corresponds to the webhook service name. // +optional ServiceName *string `json:"serviceName,omitempty"` // agentCommunicationMode corresponds to the mode used by the Datadog application libraries to communicate with the Agent. // It can be "hostip", "service", or "socket". // +optional AgentCommunicationMode *string `json:"agentCommunicationMode,omitempty"` }
AdmissionControllerFeatureConfig contains the Admission Controller feature configuration. The Admission Controller runs in the Cluster Agent.
func (*AdmissionControllerFeatureConfig) DeepCopy ¶
func (in *AdmissionControllerFeatureConfig) DeepCopy() *AdmissionControllerFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdmissionControllerFeatureConfig.
func (*AdmissionControllerFeatureConfig) DeepCopyInto ¶
func (in *AdmissionControllerFeatureConfig) DeepCopyInto(out *AdmissionControllerFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CSPMFeatureConfig ¶
type CSPMFeatureConfig struct { // Enabled enables Cloud Security Posture Management. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // CheckInterval defines the check interval. // +optional CheckInterval *metav1.Duration `json:"checkInterval,omitempty"` // ConfigMap contains compliance benchmarks. // The content of the ConfigMap will be merged with the benchmarks bundled with the agent. // Any benchmarks with the same name as those existing in the agent will take precedence. // +optional ConfigMap *ConfigMapConfig `json:"configDir,omitempty"` }
CSPMFeatureConfig contains CSPM (Cloud Security Posture Management) configuration. CSPM runs in the Security Agent.
func (*CSPMFeatureConfig) DeepCopy ¶
func (in *CSPMFeatureConfig) DeepCopy() *CSPMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSPMFeatureConfig.
func (*CSPMFeatureConfig) DeepCopyInto ¶
func (in *CSPMFeatureConfig) DeepCopyInto(out *CSPMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CWSFeatureConfig ¶
type CWSFeatureConfig struct { // Enabled enables Cloud Workload Security. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // ConfigMap contains security policies. // The content of the ConfigMap will be merged with the policies bundled with the agent. // Any policies with the same name as those existing in the agent will take precedence. // +optional ConfigMap *ConfigMapConfig `json:"configDir,omitempty"` // EnableSyscallMonitor enables Syscall Monitoring (recommended for troubleshooting only). // Default: false // +optional EnableSyscallMonitor *bool `json:"enableSyscallMonitor"` }
CWSFeatureConfig contains CWS (Cloud Workload Security) configuration. CWS runs in the Security Agent.
func (*CWSFeatureConfig) DeepCopy ¶
func (in *CWSFeatureConfig) DeepCopy() *CWSFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CWSFeatureConfig.
func (*CWSFeatureConfig) DeepCopyInto ¶
func (in *CWSFeatureConfig) DeepCopyInto(out *CWSFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterChecksRunnerFeatureConfig ¶
type ClusterChecksRunnerFeatureConfig struct { // Enabled enables Cluster Checks Runners to run all Cluster Checks. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
ClusterChecksRunnerFeatureConfig contains the Cluster Checks Runner feature configuration. Cluster Checks Runners are Agents dedicated to running Cluster Checks dispatched by the Cluster Agent.
func (*ClusterChecksRunnerFeatureConfig) DeepCopy ¶
func (in *ClusterChecksRunnerFeatureConfig) DeepCopy() *ClusterChecksRunnerFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterChecksRunnerFeatureConfig.
func (*ClusterChecksRunnerFeatureConfig) DeepCopyInto ¶
func (in *ClusterChecksRunnerFeatureConfig) DeepCopyInto(out *ClusterChecksRunnerFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigMapConfig ¶
type ConfigMapConfig struct { // Name is the name of the ConfigMap. Name string `json:"name,omitempty"` // Items maps a ConfigMap data key to a file path mount. // +listType=map // +listMapKey=key // +optional Items []corev1.KeyToPath `json:"items,omitempty"` }
ConfigMapConfig contains ConfigMap information used to store a configuration file.
func (*ConfigMapConfig) DeepCopy ¶
func (in *ConfigMapConfig) DeepCopy() *ConfigMapConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapConfig.
func (*ConfigMapConfig) DeepCopyInto ¶
func (in *ConfigMapConfig) DeepCopyInto(out *ConfigMapConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ContainerCollectionFeatureConfig ¶
type ContainerCollectionFeatureConfig struct { // Enabled enables Process monitoring. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` }
ContainerCollectionFeatureConfig contains Container Collection configuration. Container Collection is run in the Process Agent.
func (*ContainerCollectionFeatureConfig) DeepCopy ¶
func (in *ContainerCollectionFeatureConfig) DeepCopy() *ContainerCollectionFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerCollectionFeatureConfig.
func (*ContainerCollectionFeatureConfig) DeepCopyInto ¶
func (in *ContainerCollectionFeatureConfig) DeepCopyInto(out *ContainerCollectionFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CustomConfig ¶
type CustomConfig struct { // ConfigData corresponds to the configuration file content. ConfigData *string `json:"configData,omitempty"` // ConfigMap references an existing ConfigMap with the configuration file content. ConfigMap *ConfigMapConfig `json:"configMap,omitempty"` }
CustomConfig provides a place for custom configuration of the Agent or Cluster Agent, corresponding to datadog.yaml or datadog-cluster.yaml. The configuration can be provided in the ConfigData field as raw data, or referenced in a ConfigMap. Note: `ConfigData` and `ConfigMap` cannot be set together. +k8s:openapi-gen=true
func (*CustomConfig) DeepCopy ¶
func (in *CustomConfig) DeepCopy() *CustomConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomConfig.
func (*CustomConfig) DeepCopyInto ¶
func (in *CustomConfig) DeepCopyInto(out *CustomConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogAgent ¶
type DatadogAgent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DatadogAgentSpec `json:"spec,omitempty"` Status DatadogAgentStatus `json:"status,omitempty"` }
DatadogAgent Deployment with the Datadog Operator. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:unservedversion +kubebuilder:resource:path=datadogagents,shortName=dd +kubebuilder:printcolumn:name="active",type="string",JSONPath=".status.conditions[?(@.type=='Active')].status" +kubebuilder:printcolumn:name="agent",type="string",JSONPath=".status.agent.status" +kubebuilder:printcolumn:name="cluster-agent",type="string",JSONPath=".status.clusterAgent.status" +kubebuilder:printcolumn:name="cluster-checks-runner",type="string",JSONPath=".status.clusterChecksRunner.status" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp" +k8s:openapi-gen=true +genclient
func (*DatadogAgent) DeepCopy ¶
func (in *DatadogAgent) DeepCopy() *DatadogAgent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgent.
func (*DatadogAgent) DeepCopyInto ¶
func (in *DatadogAgent) DeepCopyInto(out *DatadogAgent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DatadogAgent) DeepCopyObject ¶
func (in *DatadogAgent) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DatadogAgentGenericContainer ¶
type DatadogAgentGenericContainer struct { // Name of the container that is overridden //+optional Name string `json:"name,omitempty"` // Specify additional environmental variables in the container // See also: https://docs.datadoghq.com/agent/kubernetes/?tab=helm#environment-variables // // +optional // +listType=map // +listMapKey=name Env []corev1.EnvVar `json:"env,omitempty"` // Specify additional volume mounts in the container. // +optional // +listType=map // +listMapKey=name // +listMapKey=mountPath VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` // Specify the Request and Limits of the pods // To get guaranteed QoS class, specify requests and limits equal. // See also: http://kubernetes.io/docs/user-guide/compute-resources/ Resources *corev1.ResourceRequirements `json:"resources,omitempty"` // Command allows the specification of a custom entrypoint for container // +listType=atomic Command []string `json:"command,omitempty"` // Args allows the specification of extra args to the `Command` parameter // +listType=atomic Args []string `json:"args,omitempty"` // HealthPort of the container for the internal liveness probe. // Must be the same as the Liveness/Readiness probes. // +optional HealthPort *int32 `json:"healthPort,omitempty"` // Configure the Readiness Probe of the container // +optional ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"` // Configure the Liveness Probe of the container // +optional LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"` }
DatadogAgentGenericContainer is the generic structure describing any container's common configuration. +k8s:openapi-gen=true
func (*DatadogAgentGenericContainer) DeepCopy ¶
func (in *DatadogAgentGenericContainer) DeepCopy() *DatadogAgentGenericContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentGenericContainer.
func (*DatadogAgentGenericContainer) DeepCopyInto ¶
func (in *DatadogAgentGenericContainer) DeepCopyInto(out *DatadogAgentGenericContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogAgentList ¶
type DatadogAgentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DatadogAgent `json:"items"` }
DatadogAgentList contains a list of DatadogAgent.
func (*DatadogAgentList) DeepCopy ¶
func (in *DatadogAgentList) DeepCopy() *DatadogAgentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentList.
func (*DatadogAgentList) DeepCopyInto ¶
func (in *DatadogAgentList) DeepCopyInto(out *DatadogAgentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DatadogAgentList) DeepCopyObject ¶
func (in *DatadogAgentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DatadogAgentPodTemplateOverride ¶
type DatadogAgentPodTemplateOverride struct { // Configure the basic configurations for each agent container Containers []DatadogAgentGenericContainer `json:"containers,omitempty"` // Specify additional volumes in the different components (Datadog Agent, Cluster Agent, Cluster Check Runner). // +optional // +listType=map // +listMapKey=name Volumes []corev1.Volume `json:"volumes,omitempty"` // The container image of the different components (Datadog Agent, Cluster Agent, Cluster Check Runner). Image *ImageConfig `json:"image,omitempty"` // Configure the different component (Datadog Agent, Cluster Agent, Cluster Check Runner) tolerations. // +optional // +listType=atomic Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // Pod-level SecurityContext. // +optional SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"` // If specified, indicates the pod's priority. "system-node-critical" and "system-cluster-critical" // are two special keywords which indicate the highest priorities with the former being the highest priority. // Any other name must be defined by creating a PriorityClass object with that name. If not specified, // the pod priority will be default or zero if there is no default. PriorityClassName string `json:"priorityClassName,omitempty"` // If specified, the pod's scheduling constraints. // +optional Affinity *corev1.Affinity `json:"affinity,omitempty"` // Annotations provide annotations that will be added to the different component (Datadog Agent, Cluster Agent, Cluster Check Runner) pods. Annotations map[string]string `json:"annotations,omitempty"` // AdditionalLabels provide labels that will be added to the different component (Datadog Agent, Cluster Agent, Cluster Check Runner) pods. Labels map[string]string `json:"labels,omitempty"` // Kubelet contains the kubelet configuration parameters. // +optional Kubelet *KubeletConfig `json:"kubelet,omitempty"` }
DatadogAgentPodTemplateOverride is the generic description equivalent to a subset of the PodTemplate for a component.
func (*DatadogAgentPodTemplateOverride) DeepCopy ¶
func (in *DatadogAgentPodTemplateOverride) DeepCopy() *DatadogAgentPodTemplateOverride
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentPodTemplateOverride.
func (*DatadogAgentPodTemplateOverride) DeepCopyInto ¶
func (in *DatadogAgentPodTemplateOverride) DeepCopyInto(out *DatadogAgentPodTemplateOverride)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogAgentResourceOverride ¶
type DatadogAgentResourceOverride struct { // DatadogAgentPodTemplateOverride is used to configure the components at the pod level in an agnostic way DatadogAgentPodTemplateOverride *DatadogAgentPodTemplateOverride `json:"podOverride,omitempty"` // Name overrides the default name for the resource Name string `json:"name,omitempty"` }
DatadogAgentResourceOverride is the generic description of a component (Cluster Agent Deployment, Node Agent Daemonset, etc.). TODO: Add the Resource type and name to allow overriding the kind of the Resource (e.g. ExtendedDaemonset)
func (*DatadogAgentResourceOverride) DeepCopy ¶
func (in *DatadogAgentResourceOverride) DeepCopy() *DatadogAgentResourceOverride
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentResourceOverride.
func (*DatadogAgentResourceOverride) DeepCopyInto ¶
func (in *DatadogAgentResourceOverride) DeepCopyInto(out *DatadogAgentResourceOverride)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogAgentSpec ¶
type DatadogAgentSpec struct { // Features running on the Agent and Cluster Agent // +optional Features *DatadogFeatures `json:"features,omitempty"` // Global settings to configure the agents // +optional Global *GlobalConfig `json:"global,omitempty"` // Override the default configurations of the agents // +optional Override map[ResourceName]DatadogAgentResourceOverride `json:"override,omitempty"` }
DatadogAgentSpec defines the desired state of DatadogAgent
func (*DatadogAgentSpec) DeepCopy ¶
func (in *DatadogAgentSpec) DeepCopy() *DatadogAgentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentSpec.
func (*DatadogAgentSpec) DeepCopyInto ¶
func (in *DatadogAgentSpec) DeepCopyInto(out *DatadogAgentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogAgentStatus ¶
type DatadogAgentStatus struct { // DefaultOverride contains attributes that were not configured that the runtime defaulted. // +optional DefaultOverride *DatadogAgentSpec `json:"defaultOverride,omitempty"` }
DatadogAgentStatus defines the observed state of DatadogAgent. +k8s:openapi-gen=true
func (*DatadogAgentStatus) DeepCopy ¶
func (in *DatadogAgentStatus) DeepCopy() *DatadogAgentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogAgentStatus.
func (*DatadogAgentStatus) DeepCopyInto ¶
func (in *DatadogAgentStatus) DeepCopyInto(out *DatadogAgentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogCredentials ¶
type DatadogCredentials struct { // APIKey configures your Datadog API key. // See also: https://app.datadoghq.com/account/settings#agent/kubernetes APIKey string `json:"apiKey,omitempty"` // APISecret references an existing Secret which stores the API key instead of creating a new one. // If set, this parameter takes precedence over "APIKey". // +optional APISecret *Secret `json:"apiSecret,omitempty"` // AppKey configures your Datadog application key. // If you are using clusterAgent.metricsProvider.enabled = true, you must set // a Datadog application key for read access to your metrics. // +optional AppKey string `json:"appKey,omitempty"` // AppSecret references an existing Secret which stores the application key instead of creating a new one. // If set, this parameter takes precedence over "AppKey". // +optional AppSecret *Secret `json:"appSecret,omitempty"` }
DatadogCredentials is a generic structure that holds credentials to access Datadog. +k8s:openapi-gen=true
func (*DatadogCredentials) DeepCopy ¶
func (in *DatadogCredentials) DeepCopy() *DatadogCredentials
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogCredentials.
func (*DatadogCredentials) DeepCopyInto ¶
func (in *DatadogCredentials) DeepCopyInto(out *DatadogCredentials)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogFeatures ¶
type DatadogFeatures struct { // LogCollection configuration. LogCollection *LogCollectionFeatureConfig `json:"logCollection,omitempty"` // ProcessCollection configuration. ProcessCollection *ProcessCollectionFeatureConfig `json:"processCollection,omitempty"` // ContainerCollection configuration. ContainerCollection *ContainerCollectionFeatureConfig `json:"containerCollection,omitempty"` // APM (Application Performance Monitoring) configuration. APM *APMFeatureConfig `json:"apm,omitempty"` // CSPM (Cloud Security Posture Management) configuration. CSPM *CSPMFeatureConfig `json:"cspm,omitempty"` // CWS (Cloud Workload Security) configuration. CWS *CWSFeatureConfig `json:"cws,omitempty"` // NPM (Network Performance Monitoring) configuration. NPM *NPMFeatureConfig `json:"npm,omitempty"` // USM (Universal Service Monitoring) configuration. USM *USMFeatureConfig `json:"usm,omitempty"` // OrchestratorExplorer check configuration. OrchestratorExplorer *OrchestratorExplorerFeatureConfig `json:"orchestratorExplorer,omitempty"` // KubeStateMetricsCore check configuration. KubeStateMetricsCore *KubeStateMetricsCoreFeatureConfig `json:"kubeStateMetricsCore,omitempty"` // AdmissionController configuration. AdmissionController *AdmissionControllerFeatureConfig `json:"admissionController,omitempty"` // ExternalMetricsServer configuration. ExternalMetricsServer *ExternalMetricsServerFeatureConfig `json:"externalMetricsServer,omitempty"` // ClusterChecksRunner configuration. ClusterChecksRunner *ClusterChecksRunnerFeatureConfig `json:"clusterChecksRunner,omitempty"` // PrometheusScrape configuration. PrometheusScrape *PrometheusScrapeFeatureConfig `json:"prometheusScrape,omitempty"` // DatadogMonitor configuration. DatadogMonitor *DatadogMonitorFeatureConfig `json:"datadogMonitor,omitempty"` }
DatadogFeatures are features running on the Agent and Cluster Agent. +k8s:openapi-gen=true
func (*DatadogFeatures) DeepCopy ¶
func (in *DatadogFeatures) DeepCopy() *DatadogFeatures
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogFeatures.
func (*DatadogFeatures) DeepCopyInto ¶
func (in *DatadogFeatures) DeepCopyInto(out *DatadogFeatures)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatadogMonitorFeatureConfig ¶
type DatadogMonitorFeatureConfig struct { // Enabled enables Datadog Monitors. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
DatadogMonitorFeatureConfig contains the Datadog Monitor feature configuration. DatadogMonitor is run by the Datadog Operator.
func (*DatadogMonitorFeatureConfig) DeepCopy ¶
func (in *DatadogMonitorFeatureConfig) DeepCopy() *DatadogMonitorFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatadogMonitorFeatureConfig.
func (*DatadogMonitorFeatureConfig) DeepCopyInto ¶
func (in *DatadogMonitorFeatureConfig) DeepCopyInto(out *DatadogMonitorFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Endpoint ¶
type Endpoint struct { // URL defines the endpoint URL. URL *string `json:"url,omitempty"` // Credentials defines the Datadog credentials used to submit data to/query data from Datadog. Credentials *DatadogCredentials `json:"credentials,omitempty"` }
Endpoint configures an endpoint and its associated Datadog credentials.
func (*Endpoint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint.
func (*Endpoint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalMetricsServerFeatureConfig ¶
type ExternalMetricsServerFeatureConfig struct { // Enabled enables the External Metrics Server. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // WPAController enables the informer and controller of the Watermark Pod Autoscaler. // NOTE: The Watermark Pod Autoscaler controller needs to be installed. // See also: https://github.com/DataDog/watermarkpodautoscaler. // Default: false // +optional WPAController bool `json:"wpaController,omitempty"` // UseDatadogMetrics enables usage of the DatadogMetrics CRD (allowing one to scale on arbitrary Datadog metric queries). // Default: true // +optional UseDatadogMetrics bool `json:"useDatadogMetrics,omitempty"` // Port specifies the metricsProvider External Metrics Server service port. // Default: 8443 // +optional Port *int32 `json:"port,omitempty"` // Override the API endpoint for the External Metrics Server. // URL Default: "https://app.datadoghq.com". // +optional Endpoint *Endpoint `json:"endpoint,omitempty"` }
ExternalMetricsServerFeatureConfig contains the External Metrics Server feature configuration. The External Metrics Server runs in the Cluster Agent.
func (*ExternalMetricsServerFeatureConfig) DeepCopy ¶
func (in *ExternalMetricsServerFeatureConfig) DeepCopy() *ExternalMetricsServerFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalMetricsServerFeatureConfig.
func (*ExternalMetricsServerFeatureConfig) DeepCopyInto ¶
func (in *ExternalMetricsServerFeatureConfig) DeepCopyInto(out *ExternalMetricsServerFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GlobalConfig ¶
type GlobalConfig struct { // Credentials defines the Datadog credentials used to submit data to/query data from Datadog. Credentials *DatadogCredentials `json:"credentials,omitempty"` // ClusterName sets a unique cluster name for the deployment to easily scope monitoring data in the Datadog app. // +optional ClusterName string `json:"clusterName,omitempty"` // Site is the Datadog intake site Agent data are sent to. // Set to 'datadoghq.eu' to send data to the EU site. // Default: 'datadoghq.com' // +optional Site string `json:"site,omitempty"` // Registry is the image registry to use for all Agent images. // Use 'public.ecr.aws/datadog' for AWS ECR. // Use 'docker.io/datadog' for DockerHub. // Default: 'gcr.io/datadoghq' // +optional Registry *string `json:"registry,omitempty"` // LogLevel sets logging verbosity. This can be overridden by container. // Valid log levels are: trace, debug, info, warn, error, critical, and off. // Default: 'info' LogLevel *string `json:"logLevel,omitempty"` // Tags contains a list of tags to attach to every metric, event and service check collected. // Learn more about tagging: https://docs.datadoghq.com/tagging/ // +optional // +listType=set Tags []string `json:"tags,omitempty"` // NetworkPolicy contains the network configuration. // +optional NetworkPolicy *NetworkPolicyConfig `json:"networkPolicy,omitempty"` // LocalService contains configuration to customize the internal traffic policy service. // +optional LocalService *LocalService `json:"localService,omitempty"` }
GlobalConfig is a set of parameters that are used to configure all the components of the Datadog Operator.
func (*GlobalConfig) DeepCopy ¶
func (in *GlobalConfig) DeepCopy() *GlobalConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalConfig.
func (*GlobalConfig) DeepCopyInto ¶
func (in *GlobalConfig) DeepCopyInto(out *GlobalConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HostPortConfig ¶
type HostPortConfig struct { // Enabled enables host port configuration // +optional Enabled *bool `json:"enabled,omitempty"` // Port takes a port number (0 < x < 65536) to expose on the host. (Most containers do not need this.) // If HostNetwork is enabled, this value must match the ContainerPort. // +optional Port *int32 `json:"hostPort,omitempty"` }
HostPortConfig contains host port configuration.
func (*HostPortConfig) DeepCopy ¶
func (in *HostPortConfig) DeepCopy() *HostPortConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostPortConfig.
func (*HostPortConfig) DeepCopyInto ¶
func (in *HostPortConfig) DeepCopyInto(out *HostPortConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageConfig ¶
type ImageConfig struct { // Define the image to use: // Use "gcr.io/datadoghq/agent:latest" for Datadog Agent 7 // Use "datadog/dogstatsd:latest" for standalone Datadog Agent DogStatsD 7 // Use "gcr.io/datadoghq/cluster-agent:latest" for Datadog Cluster Agent // Use "agent" with the registry and tag configurations for <registry>/agent:<tag> // Use "cluster-agent" with the registry and tag configurations for <registry>/cluster-agent:<tag> Name string `json:"name,omitempty"` // Define the image tag to use. // To be used if the Name field does not correspond to a full image string. // +optional Tag string `json:"tag,omitempty"` // Define whether the Agent image should support JMX. // +optional JMXEnabled bool `json:"jmxEnabled,omitempty"` // The Kubernetes pull policy: // Use Always, Never or IfNotPresent. PullPolicy *corev1.PullPolicy `json:"pullPolicy,omitempty"` // It is possible to specify Docker registry credentials. // See https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod // +optional PullSecrets *[]corev1.LocalObjectReference `json:"pullSecrets,omitempty"` }
ImageConfig Datadog agent container image config. +k8s:openapi-gen=true
func (*ImageConfig) DeepCopy ¶
func (in *ImageConfig) DeepCopy() *ImageConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageConfig.
func (*ImageConfig) DeepCopyInto ¶
func (in *ImageConfig) DeepCopyInto(out *ImageConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeStateMetricsCoreFeatureConfig ¶
type KubeStateMetricsCoreFeatureConfig struct { // Enabled enables Kube State Metrics Core. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` // Conf overrides the configuration for the default Kubernetes State Metrics Core check. // This must point to a ConfigMap containing a valid cluster check configuration. // +optional Conf *CustomConfig `json:"conf,omitempty"` }
KubeStateMetricsCoreFeatureConfig contains the Kube State Metrics Core check feature configuration. The Kube State Metrics Core check runs in the Cluster Agent (or Cluster Check Runners). See also: https://docs.datadoghq.com/integrations/kubernetes_state_core +k8s:openapi-gen=true
func (*KubeStateMetricsCoreFeatureConfig) DeepCopy ¶
func (in *KubeStateMetricsCoreFeatureConfig) DeepCopy() *KubeStateMetricsCoreFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeStateMetricsCoreFeatureConfig.
func (*KubeStateMetricsCoreFeatureConfig) DeepCopyInto ¶
func (in *KubeStateMetricsCoreFeatureConfig) DeepCopyInto(out *KubeStateMetricsCoreFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeletConfig ¶
type KubeletConfig struct { // Host overrides the host used to contact kubelet API (default to status.hostIP). // +optional Host *corev1.EnvVarSource `json:"host,omitempty"` // TLSVerify toggles kubelet TLS verification. // Default: true // +optional TLSVerify *bool `json:"tlsVerify,omitempty"` // HostCAPath is the host path where the kubelet CA certificate is stored. // +optional HostCAPath string `json:"hostCAPath,omitempty"` // AgentCAPath is the container path where the kubelet CA certificate is stored. // Default: '/var/run/host-kubelet-ca.crt' if hostCAPath is set, else '/var/run/secrets/kubernetes.io/serviceaccount/ca.crt' // +optional AgentCAPath string `json:"agentCAPath,omitempty"` }
KubeletConfig contains the kubelet configuration parameters. +k8s:openapi-gen=true
func (*KubeletConfig) DeepCopy ¶
func (in *KubeletConfig) DeepCopy() *KubeletConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfig.
func (*KubeletConfig) DeepCopyInto ¶
func (in *KubeletConfig) DeepCopyInto(out *KubeletConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LocalService ¶
type LocalService struct { // NameOverride defines the name of the internal traffic service to target the agent running on the local node. // +optional NameOverride string `json:"nameOverride,omitempty"` // ForceEnableLocalService forces the creation of the internal traffic policy service to target the agent running on the local node. // This parameter only applies to Kubernetes 1.21, where the feature is in alpha and is disabled by default. // (On Kubernetes 1.22+, the feature entered beta and the internal traffic service is created by default, so this parameter is ignored.) // Default: false // +optional ForceEnableLocalService *bool `json:"forceEnableLocalService,omitempty"` }
LocalService provides the internal traffic policy service configuration. +k8s:openapi-gen=true
func (*LocalService) DeepCopy ¶
func (in *LocalService) DeepCopy() *LocalService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalService.
func (*LocalService) DeepCopyInto ¶
func (in *LocalService) DeepCopyInto(out *LocalService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogCollectionFeatureConfig ¶
type LogCollectionFeatureConfig struct { // Enabled enables Log collection. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // ContainerCollectAll enables Log collection from all containers. // Default: false // +optional ContainerCollectAll *bool `json:"containerCollectAll,omitempty"` // ContainerCollectUsingFiles enables log collection from files in `/var/log/pods instead` of using the container runtime API. // Collecting logs from files is usually the most efficient way of collecting logs. // See also: https://docs.datadoghq.com/agent/basic_agent_usage/kubernetes/#log-collection-setup // Default: true // +optional ContainerCollectUsingFiles *bool `json:"containerCollectUsingFiles,omitempty"` // ContainerLogsPath allows log collection from the container log path. // Set to a different path if you are not using the Docker runtime. // See also: https://docs.datadoghq.com/agent/kubernetes/daemonset_setup/?tab=k8sfile#create-manifest // Default: `/var/lib/docker/containers` // +optional ContainerLogsPath *string `json:"containerLogsPath,omitempty"` // PodLogsPath allows log collection from a pod log path. // Default: `/var/log/pods` // +optional PodLogsPath *string `json:"podLogsPath,omitempty"` // ContainerSymlinksPath allows log collection to use symbolic links in this directory to validate container ID -> pod. // Default: `/var/log/containers` // +optional ContainerSymlinksPath *string `json:"containerSymlinksPath,omitempty"` // TempStoragePath (always mounted from the host) is used by the Agent to store information about processed log files. // If the Agent is restarted, it starts tailing the log files immediately. // Default: `/var/lib/datadog-agent/logs` // +optional TempStoragePath *string `json:"tempStoragePath,omitempty"` // OpenFilesLimit sets the maximum number of log files that the Datadog Agent tails. // Increasing this limit can increase resource consumption of the Agent. // See also: https://docs.datadoghq.com/agent/basic_agent_usage/kubernetes/#log-collection-setup // Default: 100 // +optional OpenFilesLimit *int32 `json:"openFilesLimit,omitempty"` }
LogCollectionFeatureConfig contains Logs configuration. Logs collection is run in the Agent.
func (*LogCollectionFeatureConfig) DeepCopy ¶
func (in *LogCollectionFeatureConfig) DeepCopy() *LogCollectionFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogCollectionFeatureConfig.
func (*LogCollectionFeatureConfig) DeepCopyInto ¶
func (in *LogCollectionFeatureConfig) DeepCopyInto(out *LogCollectionFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NPMFeatureConfig ¶
type NPMFeatureConfig struct { // Enabled enables Network Performance Monitoring. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
NPMFeatureConfig contains NPM (Network Performance Monitoring) feature configuration. Network Performance Monitoring runs in the System Probe and Process Agent.
func (*NPMFeatureConfig) DeepCopy ¶
func (in *NPMFeatureConfig) DeepCopy() *NPMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NPMFeatureConfig.
func (*NPMFeatureConfig) DeepCopyInto ¶
func (in *NPMFeatureConfig) DeepCopyInto(out *NPMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkPolicyConfig ¶
type NetworkPolicyConfig struct { // Create defines whether to create a NetworkPolicy for the current deployment. // +optional Create *bool `json:"create,omitempty"` // Flavor defines Which network policy to use. // +optional Flavor NetworkPolicyFlavor `json:"flavor,omitempty"` // DNSSelectorEndpoints defines the cilium selector of the DNS server entity. // +optional // +listType=atomic DNSSelectorEndpoints []metav1.LabelSelector `json:"dnsSelectorEndpoints,omitempty"` }
NetworkPolicyConfig provides Network Policy configuration for the agents. +k8s:openapi-gen=true
func (*NetworkPolicyConfig) DeepCopy ¶
func (in *NetworkPolicyConfig) DeepCopy() *NetworkPolicyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPolicyConfig.
func (*NetworkPolicyConfig) DeepCopyInto ¶
func (in *NetworkPolicyConfig) DeepCopyInto(out *NetworkPolicyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkPolicyFlavor ¶
type NetworkPolicyFlavor string
NetworkPolicyFlavor specifies which flavor of Network Policy to use.
const ( // NetworkPolicyFlavorKubernetes refers to `networking.k8s.io/v1/NetworkPolicy` NetworkPolicyFlavorKubernetes NetworkPolicyFlavor = "kubernetes" // NetworkPolicyFlavorCilium refers to `cilium.io/v2/CiliumNetworkPolicy` NetworkPolicyFlavorCilium NetworkPolicyFlavor = "cilium" )
type OrchestratorExplorerFeatureConfig ¶
type OrchestratorExplorerFeatureConfig struct { // Enabled enables the Orchestrator Explorer. // Default: true // +optional Enabled *bool `json:"enabled,omitempty"` // Conf overrides the configuration for the default Orchestrator Explorer check. // This must point to a ConfigMap containing a valid cluster check configuration. // +optional Conf *CustomConfig `json:"conf,omitempty"` // ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ). // Default: true // +optional ScrubContainers *bool `json:"scrubContainers,omitempty"` // Additional tags to associate with the collected data in the form of `a b c`. // This is a Cluster Agent option distinct from DD_TAGS that is used in the Orchestrator Explorer. // +optional // +listType=set ExtraTags []string `json:"extraTags,omitempty"` // Override the API endpoint for the Orchestrator Explorer. // URL Default: "https://orchestrator.datadoghq.com". // +optional Endpoint *Endpoint `json:"endpoint,omitempty"` }
OrchestratorExplorerFeatureConfig contains the Orchestrator Explorer check feature configuration. The Orchestrator Explorer check runs in the Process and Cluster Agents (or Cluster Check Runners). See also: https://docs.datadoghq.com/infrastructure/livecontainers/#kubernetes-resources +k8s:openapi-gen=true
func (*OrchestratorExplorerFeatureConfig) DeepCopy ¶
func (in *OrchestratorExplorerFeatureConfig) DeepCopy() *OrchestratorExplorerFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratorExplorerFeatureConfig.
func (*OrchestratorExplorerFeatureConfig) DeepCopyInto ¶
func (in *OrchestratorExplorerFeatureConfig) DeepCopyInto(out *OrchestratorExplorerFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProcessCollectionFeatureConfig ¶
type ProcessCollectionFeatureConfig struct { // Enabled enables Process monitoring. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
ProcessCollectionFeatureConfig contains Process Collection configuration. Process Collection is run in the Process Agent.
func (*ProcessCollectionFeatureConfig) DeepCopy ¶
func (in *ProcessCollectionFeatureConfig) DeepCopy() *ProcessCollectionFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessCollectionFeatureConfig.
func (*ProcessCollectionFeatureConfig) DeepCopyInto ¶
func (in *ProcessCollectionFeatureConfig) DeepCopyInto(out *ProcessCollectionFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrometheusScrapeFeatureConfig ¶
type PrometheusScrapeFeatureConfig struct { // Enable autodiscovery of pods and services exposing Prometheus metrics. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` // EnableServiceEndpoints enables generating dedicated checks for service endpoints. // Default: false // +optional EnableServiceEndpoints *bool `json:"enableServiceEndpoints,omitempty"` // AdditionalConfigs allows adding advanced Prometheus check configurations with custom discovery rules. // +optional AdditionalConfigs *string `json:"additionalConfigs,omitempty"` }
PrometheusScrapeFeatureConfig allows configuration of the Prometheus Autodiscovery feature. +k8s:openapi-gen=true
func (*PrometheusScrapeFeatureConfig) DeepCopy ¶
func (in *PrometheusScrapeFeatureConfig) DeepCopy() *PrometheusScrapeFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusScrapeFeatureConfig.
func (*PrometheusScrapeFeatureConfig) DeepCopyInto ¶
func (in *PrometheusScrapeFeatureConfig) DeepCopyInto(out *PrometheusScrapeFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceName ¶
type ResourceName string
ResourceName is the name of a Deployment Component
const ( // NodeAgentResourceName is the name of the Datadog Node Agent NodeAgentResourceName ResourceName = "nodeAgent" // ClusterAgentResourceName is the name of the Cluster Agent ClusterAgentResourceName ResourceName = "clusterAgent" // ClusterChecksRunnerResourceName is the name of the Cluster Check Runner ClusterChecksRunnerResourceName ResourceName = "clusterChecksRunner" )
type Secret ¶
type Secret struct { // SecretName is the name of the secret. SecretName string `json:"secretName"` // KeyName is the key of the secret. // +optional KeyName string `json:"keyName,omitempty"` }
Secret contains a secret name and an included key. +k8s:openapi-gen=true
func (*Secret) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Secret.
func (*Secret) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type USMFeatureConfig ¶
type USMFeatureConfig struct { // Enabled enables Universal Service Monitoring. // Default: false // +optional Enabled *bool `json:"enabled,omitempty"` }
USMFeatureConfig contains USM (Universal Service Monitoring) feature configuration. Universal Service Monitoring runs in the System Probe.
func (*USMFeatureConfig) DeepCopy ¶
func (in *USMFeatureConfig) DeepCopy() *USMFeatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new USMFeatureConfig.
func (*USMFeatureConfig) DeepCopyInto ¶
func (in *USMFeatureConfig) DeepCopyInto(out *USMFeatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UnixDomainSocketConfig ¶
type UnixDomainSocketConfig struct { // Enabled enables Unix Domain Socket. // +optional Enabled *bool `json:"enabled,omitempty"` // Path defines the socket path used when enabled. // +optional Path *string `json:"path,omitempty"` }
UnixDomainSocketConfig contains the Unix Domain Socket configuration. +k8s:openapi-gen=true
func (*UnixDomainSocketConfig) DeepCopy ¶
func (in *UnixDomainSocketConfig) DeepCopy() *UnixDomainSocketConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UnixDomainSocketConfig.
func (*UnixDomainSocketConfig) DeepCopyInto ¶
func (in *UnixDomainSocketConfig) DeepCopyInto(out *UnixDomainSocketConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.