Skip to content
This repository was archived by the owner on Mar 22, 2024. It is now read-only.

Commit d1dd8eb

Browse files
authored
Enable beats stack monitoring configuration (elastic#5878)
* Add stack monitoring for Beats * Public Documentation for Beats stack monitoring
1 parent 4569ef2 commit d1dd8eb

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+1987
-419
lines changed

cmd/manager/main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -825,6 +825,7 @@ func registerControllers(mgr manager.Manager, params operator.Parameters, access
825825
{name: "EMS-ES", registerFunc: associationctl.AddMapsES},
826826
{name: "ES-MONITORING", registerFunc: associationctl.AddEsMonitoring},
827827
{name: "KB-MONITORING", registerFunc: associationctl.AddKbMonitoring},
828+
{name: "BEAT-MONITORING", registerFunc: associationctl.AddBeatMonitoring},
828829
}
829830

830831
for _, c := range assocControllers {

config/crds/v1/all-crds.yaml

Lines changed: 114 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2390,6 +2390,107 @@ spec:
23902390
is used.
23912391
type: string
23922392
type: object
2393+
monitoring:
2394+
description: Monitoring enables you to collect and ship logs and metrics
2395+
for this Beat. Metricbeat and/or Filebeat sidecars are configured
2396+
and send monitoring data to an Elasticsearch monitoring cluster
2397+
running in the same Kubernetes cluster.
2398+
properties:
2399+
logs:
2400+
description: Logs holds references to Elasticsearch clusters which
2401+
receive log data from an associated resource.
2402+
properties:
2403+
elasticsearchRefs:
2404+
description: ElasticsearchRefs is a reference to a list of
2405+
monitoring Elasticsearch clusters running in the same Kubernetes
2406+
cluster. Due to existing limitations, only a single Elasticsearch
2407+
cluster is currently supported.
2408+
items:
2409+
description: ObjectSelector defines a reference to a Kubernetes
2410+
object which can be an Elastic resource managed by the
2411+
operator or a Secret describing an external Elastic resource
2412+
not managed by the operator.
2413+
properties:
2414+
name:
2415+
description: Name of an existing Kubernetes object corresponding
2416+
to an Elastic resource managed by ECK.
2417+
type: string
2418+
namespace:
2419+
description: Namespace of the Kubernetes object. If
2420+
empty, defaults to the current namespace.
2421+
type: string
2422+
secretName:
2423+
description: 'SecretName is the name of an existing
2424+
Kubernetes secret that contains connection information
2425+
for associating an Elastic resource not managed by
2426+
the operator. The referenced secret must contain the
2427+
following: - `url`: the URL to reach the Elastic resource
2428+
- `username`: the username of the user to be authenticated
2429+
to the Elastic resource - `password`: the password
2430+
of the user to be authenticated to the Elastic resource
2431+
- `ca.crt`: the CA certificate in PEM format (optional).
2432+
This field cannot be used in combination with the
2433+
other fields name, namespace or serviceName.'
2434+
type: string
2435+
serviceName:
2436+
description: ServiceName is the name of an existing
2437+
Kubernetes service which is used to make requests
2438+
to the referenced object. It has to be in the same
2439+
namespace as the referenced resource. If left empty,
2440+
the default HTTP service of the referenced resource
2441+
is used.
2442+
type: string
2443+
type: object
2444+
type: array
2445+
type: object
2446+
metrics:
2447+
description: Metrics holds references to Elasticsearch clusters
2448+
which receive monitoring data from this resource.
2449+
properties:
2450+
elasticsearchRefs:
2451+
description: ElasticsearchRefs is a reference to a list of
2452+
monitoring Elasticsearch clusters running in the same Kubernetes
2453+
cluster. Due to existing limitations, only a single Elasticsearch
2454+
cluster is currently supported.
2455+
items:
2456+
description: ObjectSelector defines a reference to a Kubernetes
2457+
object which can be an Elastic resource managed by the
2458+
operator or a Secret describing an external Elastic resource
2459+
not managed by the operator.
2460+
properties:
2461+
name:
2462+
description: Name of an existing Kubernetes object corresponding
2463+
to an Elastic resource managed by ECK.
2464+
type: string
2465+
namespace:
2466+
description: Namespace of the Kubernetes object. If
2467+
empty, defaults to the current namespace.
2468+
type: string
2469+
secretName:
2470+
description: 'SecretName is the name of an existing
2471+
Kubernetes secret that contains connection information
2472+
for associating an Elastic resource not managed by
2473+
the operator. The referenced secret must contain the
2474+
following: - `url`: the URL to reach the Elastic resource
2475+
- `username`: the username of the user to be authenticated
2476+
to the Elastic resource - `password`: the password
2477+
of the user to be authenticated to the Elastic resource
2478+
- `ca.crt`: the CA certificate in PEM format (optional).
2479+
This field cannot be used in combination with the
2480+
other fields name, namespace or serviceName.'
2481+
type: string
2482+
serviceName:
2483+
description: ServiceName is the name of an existing
2484+
Kubernetes service which is used to make requests
2485+
to the referenced object. It has to be in the same
2486+
namespace as the referenced resource. If left empty,
2487+
the default HTTP service of the referenced resource
2488+
is used.
2489+
type: string
2490+
type: object
2491+
type: array
2492+
type: object
2493+
type: object
23932494
revisionHistoryLimit:
23942495
description: RevisionHistoryLimit is the number of revisions to retain
23952496
to allow rollback in the underlying DaemonSet or Deployment.
@@ -2471,6 +2572,15 @@ spec:
24712572
kibanaAssociationStatus:
24722573
description: AssociationStatus is the status of an association resource.
24732574
type: string
2575+
monitoringAssociationStatus:
2576+
additionalProperties:
2577+
description: AssociationStatus is the status of an association resource.
2578+
type: string
2579+
description: AssociationStatusMap is the map of association's namespaced
2580+
name string to its AssociationStatus. For resources that have a
2581+
single Association of a given type (for ex. single ES reference),
2582+
this map contains a single entry.
2583+
type: object
24742584
observedGeneration:
24752585
description: ObservedGeneration represents the .metadata.generation
24762586
that the status is based upon. It corresponds to the metadata generation,
@@ -3968,7 +4078,7 @@ spec:
39684078
properties:
39694079
logs:
39704080
description: Logs holds references to Elasticsearch clusters which
3971-
receive log data from this Elasticsearch cluster.
4081+
receive log data from an associated resource.
39724082
properties:
39734083
elasticsearchRefs:
39744084
description: ElasticsearchRefs is a reference to a list of
@@ -4015,7 +4125,7 @@ spec:
40154125
type: object
40164126
metrics:
40174127
description: Metrics holds references to Elasticsearch clusters
4018-
which receive monitoring data from this Elasticsearch cluster.
4128+
which receive monitoring data from this resource.
40194129
properties:
40204130
elasticsearchRefs:
40214131
description: ElasticsearchRefs is a reference to a list of
@@ -8031,7 +8141,7 @@ spec:
80318141
properties:
80328142
logs:
80338143
description: Logs holds references to Elasticsearch clusters which
8034-
will receive log data from this Kibana.
8144+
receive log data from an associated resource.
80358145
properties:
80368146
elasticsearchRefs:
80378147
description: ElasticsearchRefs is a reference to a list of
@@ -8078,7 +8188,7 @@ spec:
80788188
type: object
80798189
metrics:
80808190
description: Metrics holds references to Elasticsearch clusters
8081-
which will receive monitoring data from this Kibana.
8191+
which receive monitoring data from this resource.
80828192
properties:
80838193
elasticsearchRefs:
80848194
description: ElasticsearchRefs is a reference to a list of

config/crds/v1/bases/beat.k8s.elastic.co_beats.yaml

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15411,6 +15411,107 @@ spec:
1541115411
is used.
1541215412
type: string
1541315413
type: object
15414+
monitoring:
15415+
description: Monitoring enables you to collect and ship logs and metrics
15416+
for this Beat. Metricbeat and/or Filebeat sidecars are configured
15417+
and send monitoring data to an Elasticsearch monitoring cluster
15418+
running in the same Kubernetes cluster.
15419+
properties:
15420+
logs:
15421+
description: Logs holds references to Elasticsearch clusters which
15422+
receive log data from an associated resource.
15423+
properties:
15424+
elasticsearchRefs:
15425+
description: ElasticsearchRefs is a reference to a list of
15426+
monitoring Elasticsearch clusters running in the same Kubernetes
15427+
cluster. Due to existing limitations, only a single Elasticsearch
15428+
cluster is currently supported.
15429+
items:
15430+
description: ObjectSelector defines a reference to a Kubernetes
15431+
object which can be an Elastic resource managed by the
15432+
operator or a Secret describing an external Elastic resource
15433+
not managed by the operator.
15434+
properties:
15435+
name:
15436+
description: Name of an existing Kubernetes object corresponding
15437+
to an Elastic resource managed by ECK.
15438+
type: string
15439+
namespace:
15440+
description: Namespace of the Kubernetes object. If
15441+
empty, defaults to the current namespace.
15442+
type: string
15443+
secretName:
15444+
description: 'SecretName is the name of an existing
15445+
Kubernetes secret that contains connection information
15446+
for associating an Elastic resource not managed by
15447+
the operator. The referenced secret must contain the
15448+
following: - `url`: the URL to reach the Elastic resource
15449+
- `username`: the username of the user to be authenticated
15450+
to the Elastic resource - `password`: the password
15451+
of the user to be authenticated to the Elastic resource
15452+
- `ca.crt`: the CA certificate in PEM format (optional).
15453+
This field cannot be used in combination with the
15454+
other fields name, namespace or serviceName.'
15455+
type: string
15456+
serviceName:
15457+
description: ServiceName is the name of an existing
15458+
Kubernetes service which is used to make requests
15459+
to the referenced object. It has to be in the same
15460+
namespace as the referenced resource. If left empty,
15461+
the default HTTP service of the referenced resource
15462+
is used.
15463+
type: string
15464+
type: object
15465+
type: array
15466+
type: object
15467+
metrics:
15468+
description: Metrics holds references to Elasticsearch clusters
15469+
which receive monitoring data from this resource.
15470+
properties:
15471+
elasticsearchRefs:
15472+
description: ElasticsearchRefs is a reference to a list of
15473+
monitoring Elasticsearch clusters running in the same Kubernetes
15474+
cluster. Due to existing limitations, only a single Elasticsearch
15475+
cluster is currently supported.
15476+
items:
15477+
description: ObjectSelector defines a reference to a Kubernetes
15478+
object which can be an Elastic resource managed by the
15479+
operator or a Secret describing an external Elastic resource
15480+
not managed by the operator.
15481+
properties:
15482+
name:
15483+
description: Name of an existing Kubernetes object corresponding
15484+
to an Elastic resource managed by ECK.
15485+
type: string
15486+
namespace:
15487+
description: Namespace of the Kubernetes object. If
15488+
empty, defaults to the current namespace.
15489+
type: string
15490+
secretName:
15491+
description: 'SecretName is the name of an existing
15492+
Kubernetes secret that contains connection information
15493+
for associating an Elastic resource not managed by
15494+
the operator. The referenced secret must contain the
15495+
following: - `url`: the URL to reach the Elastic resource
15496+
- `username`: the username of the user to be authenticated
15497+
to the Elastic resource - `password`: the password
15498+
of the user to be authenticated to the Elastic resource
15499+
- `ca.crt`: the CA certificate in PEM format (optional).
15500+
This field cannot be used in combination with the
15501+
other fields name, namespace or serviceName.'
15502+
type: string
15503+
serviceName:
15504+
description: ServiceName is the name of an existing
15505+
Kubernetes service which is used to make requests
15506+
to the referenced object. It has to be in the same
15507+
namespace as the referenced resource. If left empty,
15508+
the default HTTP service of the referenced resource
15509+
is used.
15510+
type: string
15511+
type: object
15512+
type: array
15513+
type: object
15514+
type: object
1541415515
revisionHistoryLimit:
1541515516
description: RevisionHistoryLimit is the number of revisions to retain
1541615517
to allow rollback in the underlying DaemonSet or Deployment.
@@ -15492,6 +15593,15 @@ spec:
1549215593
kibanaAssociationStatus:
1549315594
description: AssociationStatus is the status of an association resource.
1549415595
type: string
15596+
monitoringAssociationStatus:
15597+
additionalProperties:
15598+
description: AssociationStatus is the status of an association resource.
15599+
type: string
15600+
description: AssociationStatusMap is the map of association's namespaced
15601+
name string to its AssociationStatus. For resources that have a
15602+
single Association of a given type (for ex. single ES reference),
15603+
this map contains a single entry.
15604+
type: object
1549515605
observedGeneration:
1549615606
description: ObservedGeneration represents the .metadata.generation
1549715607
that the status is based upon. It corresponds to the metadata generation,

config/crds/v1/bases/elasticsearch.k8s.elastic.co_elasticsearches.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -521,7 +521,7 @@ spec:
521521
properties:
522522
logs:
523523
description: Logs holds references to Elasticsearch clusters which
524-
receive log data from this Elasticsearch cluster.
524+
receive log data from an associated resource.
525525
properties:
526526
elasticsearchRefs:
527527
description: ElasticsearchRefs is a reference to a list of
@@ -568,7 +568,7 @@ spec:
568568
type: object
569569
metrics:
570570
description: Metrics holds references to Elasticsearch clusters
571-
which receive monitoring data from this Elasticsearch cluster.
571+
which receive monitoring data from this resource.
572572
properties:
573573
elasticsearchRefs:
574574
description: ElasticsearchRefs is a reference to a list of

config/crds/v1/bases/kibana.k8s.elastic.co_kibanas.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -562,7 +562,7 @@ spec:
562562
properties:
563563
logs:
564564
description: Logs holds references to Elasticsearch clusters which
565-
will receive log data from this Kibana.
565+
receive log data from an associated resource.
566566
properties:
567567
elasticsearchRefs:
568568
description: ElasticsearchRefs is a reference to a list of
@@ -609,7 +609,7 @@ spec:
609609
type: object
610610
metrics:
611611
description: Metrics holds references to Elasticsearch clusters
612-
which will receive monitoring data from this Kibana.
612+
which receive monitoring data from this resource.
613613
properties:
614614
elasticsearchRefs:
615615
description: ElasticsearchRefs is a reference to a list of

0 commit comments

Comments
 (0)