Skip to content

Commit 499304b

Browse files
authored
Clarify lifecycle of monitoring exporter integration (#2366)
* Clarify lifecycle of monitoring exporter integration
1 parent a1d2c80 commit 499304b

File tree

5 files changed

+39
-24
lines changed

5 files changed

+39
-24
lines changed

documentation/domains/Domain.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@
268268
"type": "object",
269269
"properties": {
270270
"monitoringExporter": {
271-
"description": "Configuration for the use of the WebLogic Monitoring Exporter as part of this domain.",
271+
"description": "Automatic deployment and configuration of the WebLogic Monitoring Exporter. If specified, the operator will deploy a sidecar container alongside each WebLogic Server instance that runs the exporter. WebLogic Server instances that are already running when the `monitoringExporter` field is created or deleted, will not be affected until they are restarted. When any given server is restarted for another reason, such as a change to the `restartVersion`, then the newly created pod will have the exporter sidecar or not, as appropriate. See https://github.com/oracle/weblogic-monitoring-exporter.",
272272
"$ref": "#/definitions/MonitoringExporterSpecification"
273273
},
274274
"configuration": {
@@ -590,11 +590,11 @@
590590
"type": "object",
591591
"properties": {
592592
"image": {
593-
"description": "The WebLogic Monitoring Exporter sidecar image name. Defaults to ghcr.io/oracle/weblogic-monitoring-exporter:2.0.2",
593+
"description": "The WebLogic Monitoring Exporter sidecar container image name. Defaults to ghcr.io/oracle/weblogic-monitoring-exporter:2.0.2",
594594
"type": "string"
595595
},
596596
"imagePullPolicy": {
597-
"description": "The image pull policy for the WebLogic Monitoring Exporter sidecar image. Legal values are Always, Never, and IfNotPresent. Defaults to Always if image ends in :latest; IfNotPresent, otherwise.",
597+
"description": "The image pull policy for the WebLogic Monitoring Exporter sidecar container image. Legal values are Always, Never, and IfNotPresent. Defaults to Always if image ends in :latest; IfNotPresent, otherwise.",
598598
"type": "string",
599599
"enum": [
600600
"Always",
@@ -604,7 +604,7 @@
604604
},
605605
"configuration": {
606606
"x-kubernetes-preserve-unknown-fields": "true",
607-
"description": "The configuration for the WebLogic Monitoring Exporter sidecar. If specified, the operator will deploy a sidecar alongside each server instance. See https://github.com/oracle/weblogic-monitoring-exporter",
607+
"description": "The configuration for the WebLogic Monitoring Exporter. If WebLogic Server instances are already running and have the monitoring exporter sidecar container, then changes to this field will be propagated to the exporter without requiring the restart of the WebLogic Server instances.",
608608
"$ref": "#/definitions/Map"
609609
}
610610
}

documentation/domains/Domain.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ The specification of the operation of the WebLogic domain. Required.
3737
| `managedServers` | array of [Managed Server](#managed-server) | Lifecycle options for individual Managed Servers, including Java options, environment variables, additional Pod content, and the ability to explicitly start, stop, or restart a named server instance. The `serverName` field of each entry must match a Managed Server that already exists in the WebLogic domain configuration or that matches a dynamic cluster member based on the server template. |
3838
| `maxClusterConcurrentShutdown` | number | The default maximum number of WebLogic Server instances that a cluster will shut down in parallel when it is being partially shut down by lowering its replica count. You can override this default on a per cluster basis by setting the cluster's `maxConcurrentShutdown` field. A value of 0 means there is no limit. Defaults to 1. |
3939
| `maxClusterConcurrentStartup` | number | The maximum number of cluster member Managed Server instances that the operator will start in parallel for a given cluster, if `maxConcurrentStartup` is not specified for a specific cluster under the `clusters` field. A value of 0 means there is no configured limit. Defaults to 0. |
40-
| `monitoringExporter` | [Monitoring Exporter Specification](#monitoring-exporter-specification) | Configuration for the use of the WebLogic Monitoring Exporter as part of this domain. |
40+
| `monitoringExporter` | [Monitoring Exporter Specification](#monitoring-exporter-specification) | Automatic deployment and configuration of the WebLogic Monitoring Exporter. If specified, the operator will deploy a sidecar container alongside each WebLogic Server instance that runs the exporter. WebLogic Server instances that are already running when the `monitoringExporter` field is created or deleted, will not be affected until they are restarted. When any given server is restarted for another reason, such as a change to the `restartVersion`, then the newly created pod will have the exporter sidecar or not, as appropriate. See https://github.com/oracle/weblogic-monitoring-exporter. |
4141
| `replicas` | number | The default number of cluster member Managed Server instances to start for each WebLogic cluster in the domain configuration, unless `replicas` is specified for that cluster under the `clusters` field. For each cluster, the operator will sort cluster member Managed Server names from the WebLogic domain configuration by normalizing any numbers in the Managed Server name and then sorting alphabetically. This is done so that server names such as "managed-server10" come after "managed-server9". The operator will then start Managed Servers from the sorted list, up to the `replicas` count, unless specific Managed Servers are specified as starting in their entry under the `managedServers` field. In that case, the specified Managed Servers will be started and then additional cluster members will be started, up to the `replicas` count, by finding further cluster members in the sorted list that are not already started. If cluster members are started because of their entries under `managedServers`, then a cluster may have more cluster members running than its `replicas` count. Defaults to 0. |
4242
| `restartVersion` | string | Changes to this field cause the operator to restart WebLogic Server instances. More info: https://oracle.github.io/weblogic-kubernetes-operator/userguide/managing-domains/domain-lifecycle/startup/#restarting-servers. |
4343
| `serverPod` | [Server Pod](#server-pod) | Customization affecting the generation of Pods for WebLogic Server instances. |
@@ -116,9 +116,9 @@ The current status of the operation of the WebLogic domain. Updated automaticall
116116

117117
| Name | Type | Description |
118118
| --- | --- | --- |
119-
| `configuration` | Map | The configuration for the WebLogic Monitoring Exporter sidecar. If specified, the operator will deploy a sidecar alongside each server instance. See https://github.com/oracle/weblogic-monitoring-exporter |
120-
| `image` | string | The WebLogic Monitoring Exporter sidecar image name. Defaults to ghcr.io/oracle/weblogic-monitoring-exporter:2.0.2 |
121-
| `imagePullPolicy` | string | The image pull policy for the WebLogic Monitoring Exporter sidecar image. Legal values are Always, Never, and IfNotPresent. Defaults to Always if image ends in :latest; IfNotPresent, otherwise. |
119+
| `configuration` | Map | The configuration for the WebLogic Monitoring Exporter. If WebLogic Server instances are already running and have the monitoring exporter sidecar container, then changes to this field will be propagated to the exporter without requiring the restart of the WebLogic Server instances. |
120+
| `image` | string | The WebLogic Monitoring Exporter sidecar container image name. Defaults to ghcr.io/oracle/weblogic-monitoring-exporter:2.0.2 |
121+
| `imagePullPolicy` | string | The image pull policy for the WebLogic Monitoring Exporter sidecar container image. Legal values are Always, Never, and IfNotPresent. Defaults to Always if image ends in :latest; IfNotPresent, otherwise. |
122122

123123
### Server Pod
124124

kubernetes/crd/domain-crd.yaml

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ apiVersion: apiextensions.k8s.io/v1
55
kind: CustomResourceDefinition
66
metadata:
77
annotations:
8-
weblogic.sha256: 8baaf8061fb45bcf1035ef0c7c40ccd056229d662921ad3ba5f6258f2de04720
8+
weblogic.sha256: 2c458de3536da4e8a31d375fc7375c55387080a19f260f687dd687ec4f61d67b
99
name: domains.weblogic.oracle
1010
spec:
1111
group: weblogic.oracle
@@ -27,27 +27,36 @@ spec:
2727
Required.
2828
properties:
2929
monitoringExporter:
30-
description: Configuration for the use of the WebLogic Monitoring
31-
Exporter as part of this domain.
30+
description: Automatic deployment and configuration of the WebLogic
31+
Monitoring Exporter. If specified, the operator will deploy a sidecar
32+
container alongside each WebLogic Server instance that runs the
33+
exporter. WebLogic Server instances that are already running when
34+
the `monitoringExporter` field is created or deleted, will not be
35+
affected until they are restarted. When any given server is restarted
36+
for another reason, such as a change to the `restartVersion`, then
37+
the newly created pod will have the exporter sidecar or not, as
38+
appropriate. See https://github.com/oracle/weblogic-monitoring-exporter.
3239
properties:
3340
image:
34-
description: The WebLogic Monitoring Exporter sidecar image name.
35-
Defaults to ghcr.io/oracle/weblogic-monitoring-exporter:2.0.2
41+
description: The WebLogic Monitoring Exporter sidecar container
42+
image name. Defaults to ghcr.io/oracle/weblogic-monitoring-exporter:2.0.2
3643
type: string
3744
imagePullPolicy:
3845
description: The image pull policy for the WebLogic Monitoring
39-
Exporter sidecar image. Legal values are Always, Never, and
40-
IfNotPresent. Defaults to Always if image ends in :latest; IfNotPresent,
41-
otherwise.
46+
Exporter sidecar container image. Legal values are Always, Never,
47+
and IfNotPresent. Defaults to Always if image ends in :latest;
48+
IfNotPresent, otherwise.
4249
enum:
4350
- Always
4451
- Never
4552
- IfNotPresent
4653
type: string
4754
configuration:
48-
description: The configuration for the WebLogic Monitoring Exporter
49-
sidecar. If specified, the operator will deploy a sidecar alongside
50-
each server instance. See https://github.com/oracle/weblogic-monitoring-exporter
55+
description: The configuration for the WebLogic Monitoring Exporter.
56+
If WebLogic Server instances are already running and have the
57+
monitoring exporter sidecar container, then changes to this
58+
field will be propagated to the exporter without requiring the
59+
restart of the WebLogic Server instances.
5160
type: object
5261
x-kubernetes-preserve-unknown-fields: true
5362
type: object

operator/src/main/java/oracle/kubernetes/weblogic/domain/model/DomainSpec.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,12 @@ public class DomainSpec extends BaseConfiguration {
305305
*
306306
* @since 3.2
307307
*/
308-
@Description("Configuration for the use of the WebLogic Monitoring Exporter as part of this domain.")
308+
@Description("Automatic deployment and configuration of the WebLogic Monitoring Exporter. If specified, the operator "
309+
+ "will deploy a sidecar container alongside each WebLogic Server instance that runs the exporter. "
310+
+ "WebLogic Server instances that are already running when the `monitoringExporter` field is created or deleted, "
311+
+ "will not be affected until they are restarted. When any given server "
312+
+ "is restarted for another reason, such as a change to the `restartVersion`, then the newly created pod will "
313+
+ "have the exporter sidecar or not, as appropriate. See https://github.com/oracle/weblogic-monitoring-exporter.")
309314
private MonitoringExporterSpecification monitoringExporter;
310315

311316
MonitoringExporterConfiguration getMonitoringExporterConfiguration() {

operator/src/main/java/oracle/kubernetes/weblogic/domain/model/MonitoringExporterSpecification.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,21 +28,22 @@
2828
public class MonitoringExporterSpecification {
2929

3030
public static final String EXPORTER_PORT_NAME = "exporter";
31-
@Description("The configuration for the WebLogic Monitoring Exporter sidecar. If specified, the operator will "
32-
+ "deploy a sidecar alongside each server instance. See https://github.com/oracle/weblogic-monitoring-exporter")
31+
@Description("The configuration for the WebLogic Monitoring Exporter. If WebLogic Server instances "
32+
+ "are already running and have the monitoring exporter sidecar container, then changes to this field will "
33+
+ "be propagated to the exporter without requiring the restart of the WebLogic Server instances.")
3334
@PreserveUnknown
3435
private Map<String,Object> configuration;
3536

3637
/**
3738
* The Monitoring Exporter sidecar image.
3839
*/
3940
@Description(
40-
"The WebLogic Monitoring Exporter sidecar image name. Defaults to "
41+
"The WebLogic Monitoring Exporter sidecar container image name. Defaults to "
4142
+ DEFAULT_EXPORTER_IMAGE)
4243
private String image;
4344

4445
@Description(
45-
"The image pull policy for the WebLogic Monitoring Exporter sidecar image. "
46+
"The image pull policy for the WebLogic Monitoring Exporter sidecar container image. "
4647
+ "Legal values are Always, Never, and IfNotPresent. "
4748
+ "Defaults to Always if image ends in :latest; IfNotPresent, otherwise.")
4849
@EnumClass(ImagePullPolicy.class)

0 commit comments

Comments
 (0)