Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ description = "Debugging a deployed Model in Image domain."

Here are some suggestions for debugging problems with Model in Image after your Domain YAML file is deployed.

#### Contents
### Contents

- [Check the Domain status](#check-the-domain-status)
- [Check the Domain events](#check-the-domain-events)
Expand All @@ -18,20 +18,20 @@ Here are some suggestions for debugging problems with Model in Image after your
- [Check the FAQ](#check-the-faq)


#### Check the Domain status
### Check the Domain status

To check the Domain status: `kubectl -n MY_NAMESPACE describe domain MY_DOMAINUID`.

If you are performing an online update to a running domain's WebLogic configuration,
then see [Online update status and labels]({{<relref "/userguide/managing-domains/model-in-image/runtime-updates#online-update-status-and-labels">}}).

#### Check the Domain events
### Check the Domain events

To check events for the Domain: `kubectl -n MY_NAMESPACE get events --sort-by='.lastTimestamp'`.

For more information, see [Domain events]({{< relref "/userguide/managing-domains/domain-events.md" >}}).

#### Check the introspector job
### Check the introspector job

If your introspector job failed, then examine the `kubectl describe` of the job and its pod, and also examine its log, if one exists.

Expand Down Expand Up @@ -92,7 +92,7 @@ when `spec.logHome` is configured and `spec.logHomeEnabled` is true.
If a model file error references a model file in your `spec.configuration.model.configMap`, then you can correct the error by redeploying the ConfigMap with a corrected model file and then initiating a domain restart or roll. Similarly, if a model file error references a model file in your model image, then you can correct the error by deploying a corrected image, modifying your Domain YAML file to reference the new image, and then initiating a domain restart or roll.
{{% /notice %}}

#### Check the WebLogic Server pods
### Check the WebLogic Server pods

If your introspector job succeeded, then there will be no introspector job or pod, the operator will create a `MY_DOMAIN_UID-weblogic-domain-introspect-cm` ConfigMap for your domain, and the operator will then run the domain's WebLogic Server pods.

Expand All @@ -101,7 +101,7 @@ If `kubectl -n MY_NAMESPACE get pods` reveals that your WebLogic Server pods hav
If you are performing an online update to a running domain's WebLogic configuration,
then see [Online update status and labels]({{<relref "/userguide/managing-domains/model-in-image/runtime-updates#online-update-status-and-labels">}}).

#### Check the operator log
### Check the operator log

Look for `SEVERE` and `ERROR` level messages in your operator logs. For example:

Expand Down Expand Up @@ -133,7 +133,7 @@ Look for `SEVERE` and `ERROR` level messages in your operator logs. For example:
| grep "domainUID...sample-domain1"
```

#### Check the FAQ
### Check the FAQ

Common issues that have corresponding FAQ entries include:
- When a Domain YAML file is deployed and no introspector or WebLogic Server pods start, plus the operator log contains no mention of the domain, then check to make sure that the Domain's namespace has been set up to be monitored by an operator. See the [Managing domain namespaces FAQ]({{<relref "/faq/namespace-management">}}).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ pre = "<b> </b>"
description = "Model file requirements, macros, and loading order."
+++

#### Contents
### Contents

- [Introduction](#introduction)
- [Sample model file](#sample-model-file)
Expand All @@ -17,14 +17,14 @@ description = "Model file requirements, macros, and loading order."
- [Using environment variables in model files](#using-environment-variables-in-model-files)
- [Combining secrets and environment variables in model files](#combining-secrets-and-environment-variables-in-model-files)

#### Introduction
### Introduction

This document describes basic Model in Image model file syntax, naming, and macros. For additional information, see the [WebLogic Deploy Tool](https://oracle.github.io/weblogic-deploy-tooling/) documentation.

{{% notice tip %}} The WDT [Discover Domain Tool](https://oracle.github.io/weblogic-deploy-tooling/userguide/tools/discover/) is particularly useful for generating model files from an existing domain home.
{{% /notice %}}

#### Sample model file
### Sample model file

Here's an example of a model YAML file that defines a WebLogic Server Administration Server and dynamic cluster.

Expand Down Expand Up @@ -60,7 +60,7 @@ This sample model file:

For a description of model file macro references to secrets and environment variables, see [Model file macros](#model-file-macros).

#### Important notes about Model in Image model files
### Important notes about Model in Image model files

- Using model file macros

Expand All @@ -86,7 +86,7 @@ For a description of model file macro references to secrets and environment vari

- You can control the order that WDT uses to load your model files, see [Model file naming and loading order](#model-file-naming-and-loading-order).

#### Model file naming and loading order
### Model file naming and loading order

Refer to this section if you need to control the order in which your model files are loaded. The order is important when two or more model files refer to the same configuration, because the last model that's loaded has the highest precedence.

Expand Down Expand Up @@ -127,9 +127,9 @@ y.yaml,main-model.10.yaml,my-model.10.yaml,jdbc.20.yaml,z.yaml,jdbc-dev-urlprops

Property files (ending in `.properties`) use the same sorting algorithm, but they are appended together into a single file prior to passing them to the WebLogic Deploy Tool.

#### Model file macros
### Model file macros

##### Using secrets in model files
#### Using secrets in model files

You can use WDT model `@@SECRET` macros to reference the WebLogic administrator `username` and `password` keys that are stored in a Kubernetes Secret and to optionally reference additional secrets. Here is the macro pattern for accessing these secrets:

Expand All @@ -155,13 +155,13 @@ Here's a sample snippet from a Domain YAML file that sets a `webLogicCredentials
...
```

##### Using environment variables in model files
#### Using environment variables in model files

You can reference operator environment variables in model files. This includes any that you define yourself in your Domain YAML file using `domain.spec.serverPod.env` or `domain.spec.adminServer.serverPod.env`, or the built-in `DOMAIN_UID` environment variable.

For example, the `@@ENV:DOMAIN_UID@@` macro resolves to the current domain's domain UID.

##### Combining secrets and environment variables in model files
#### Combining secrets and environment variables in model files

You can embed an environment variable macro in a secret macro. This is useful for referencing secrets that you've named based on your domain's `domainUID`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ pre = "<b> </b>"
description = "Introduction to Model in Image, description of its runtime behavior, and references."
+++

#### Contents
### Contents

- [Introduction](#introduction)
- [WebLogic Deploy Tool models](#weblogic-deploy-tool-models)
Expand All @@ -15,7 +15,7 @@ description = "Introduction to Model in Image, description of its runtime behavi
- [Continuous integration and delivery (CI/CD)](#continuous-integration-and-delivery-cicd)
- [References](#references)

#### Introduction
### Introduction

Model in Image is an alternative to the operator's Domain in Image and Domain in PV domain types. See [Choose a domain home source type]({{< relref "/userguide/managing-domains/choosing-a-model/_index.md" >}}) for a comparison of operator domain types.

Expand All @@ -37,7 +37,7 @@ This feature is supported for standard WLS domains, Restricted JRF domains, and

For JRF domains, Model in Image provides additional support for initializing the infrastructure database for a domain when a domain is started for the first time, supplying an database password, and obtaining an database wallet for re-use in subsequent restarts of the same domain. See [Requirements for JRF domain types]({{< relref "/userguide/managing-domains/model-in-image/usage/_index.md#requirements-for-jrf-domain-types" >}}).

#### WebLogic Deploy Tool models
### WebLogic Deploy Tool models

WDT models are a convenient and simple alternative to WebLogic Scripting Tool (WLST)
configuration scripts and templates.
Expand All @@ -49,7 +49,7 @@ and [Model files]({{< relref "/userguide/managing-domains/model-in-image/model-f
The WDT model format is fully described in the open source,
[WebLogic Deploy Tool](https://oracle.github.io/weblogic-deploy-tooling/) GitHub project.

#### Runtime behavior
### Runtime behavior

When you deploy a Model in Image domain resource YAML file:

Expand All @@ -64,7 +64,7 @@ When you deploy a Model in Image domain resource YAML file:
- The operator subsequently boots your domain's WebLogic Server pods.
- The pods will obtain their domain home from the ConfigMap.

#### Runtime updates
### Runtime updates

Model updates can be applied at runtime by changing an image, secrets, a domain resource, or a WDT model ConfigMap after initial deployment.

Expand All @@ -75,11 +75,11 @@ _It is the administrator's responsibility to make the necessary changes to a dom

See [Runtime updates]({{< relref "/userguide/managing-domains/model-in-image/runtime-updates.md" >}}).

#### Continuous integration and delivery (CI/CD)
### Continuous integration and delivery (CI/CD)

To understand how Model in Image works with CI/CD, see [CI/CD considerations]({{< relref "/userguide/cicd/_index.md" >}}).

#### References
### References

- [Model in Image sample]({{< relref "/samples/simple/domains/model-in-image/_index.md" >}})
- [WebLogic Deploy Tool (WDT)](https://oracle.github.io/weblogic-deploy-tooling/)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ pre = "<b> </b>"
description = "Updating a running Model in Image domain's images and model files."
+++

#### Contents
### Contents

- [Overview](#overview)
- [Supported updates](#supported-updates)
Expand All @@ -26,7 +26,7 @@ description = "Updating a running Model in Image domain's images and model files
- [Using the WDT Discover and Compare Model Tools](#using-the-wdt-discover-domain-and-compare-model-tools) below.
- [Changing a Domain `restartVersion` or `introspectVersion`](#changing-a-domain-restartversion-or-introspectversion)

#### Overview
### Overview

If you want to make a WebLogic domain home configuration update to a running Model in Image domain,
and you want the update to survive WebLogic Server pod restarts,
Expand Down Expand Up @@ -75,7 +75,7 @@ Unlike configuration overrides, the syntax for a model file update exactly match
the syntax for specifying your model file originally.
{{% /notice %}}

#### Supported updates
### Supported updates

The following updates are *supported* for offline or online updates,
except when they reference an area that is specifically
Expand Down Expand Up @@ -133,7 +133,7 @@ documented as [unsupported](#unsupported-updates) below:
[Declaring Named MBeans to Delete](https://oracle.github.io/weblogic-deploy-tooling/concepts/model/#declaring-named-mbeans-to-delete)
in the WebLogic Deploying Tooling documentation.

#### Unsupported updates
### Unsupported updates

{{% notice warning %}}
It is important to avoid applying unsupported model updates to a running domain. An attempt to use an unsupported update may not always result in a clear error message, and the expected behavior may be undefined. If you need to make an unsupported update and no workaround is documented, then shut down your domain entirely before making the change. See [Full domain restarts]({{< relref "/userguide/managing-domains/domain-lifecycle/startup/_index.md#full-domain-restarts">}}).
Expand Down Expand Up @@ -233,7 +233,7 @@ and a description of workarounds and alternatives when applicable:
`domainInfo.RCUDbinfo.*`, `topology.Security.*`, and `topology.SecurityConfiguration.*`.
Any online update changes in these sections will result in a failure.

#### Updating an existing model
### Updating an existing model

If you have verified your proposed model updates to a running
Model in Image domain are supported by consulting
Expand Down Expand Up @@ -296,9 +296,9 @@ After your model updates are prepared, you can instruct the operator to propagat
to a running domain by following the steps in [Offline updates](#offline-updates)
or [Online updates](#online-updates).

#### Offline updates
### Offline updates

##### Offline update steps
#### Offline update steps

Use the following steps to initiate an offline configuration update to your model:

Expand Down Expand Up @@ -343,15 +343,15 @@ If the job reports a failure, see
[Debugging]({{< relref "/userguide/managing-domains/model-in-image/debugging.md" >}})
for advice.

##### Offline update sample
#### Offline update sample

For an offline update sample which adds a data source, see the
[Update 1 use case]({{< relref "/samples/simple/domains/model-in-image/update1.md" >}})
in the Model in Image sample.

#### Online updates
### Online updates

##### Online update steps
#### Online update steps

Use the following steps to initiate an online configuration update to your model:

Expand Down Expand Up @@ -440,7 +440,7 @@ spec:
- sample-domain1-another-secret
```

##### Online update handling of non-dynamic WebLogic configuration changes
#### Online update handling of non-dynamic WebLogic configuration changes

The domain resource YAML `domain.spec.configuration.model.onlineUpdate.onNonDynamicChanges` attribute
controls behavior when
Expand Down Expand Up @@ -469,7 +469,7 @@ then the new servers will start with the new non-dynamic changes
and the domain will then be running in an inconsistent state until its older servers are restarted.
{{% /notice %}}

##### Online update handling of deletes
#### Online update handling of deletes

The primary use case for online updates is to make small additions,
deletions of single resources or MBeans that have no dependencies,
Expand Down Expand Up @@ -614,7 +614,7 @@ resources:
MaxThreadsConstraint:
```

##### Online update status and labels
#### Online update status and labels

During an online update, the operator will rerun the introspector job, which
in turn attempts online WebLogic configuration changes to the running domain.
Expand Down Expand Up @@ -734,7 +734,7 @@ _Here are some of the expected WebLogic pod labels after an online update succes
* Non-dynamic WebLogic configuration changes were included in a
successful online model update.

##### Online update scenarios
#### Online update scenarios

1. _Successful online update that includes only dynamic WebLogic MBean changes._
* Example dynamic WebLogic MBean changes:
Expand Down Expand Up @@ -807,15 +807,15 @@ _Here are some of the expected WebLogic pod labels after an online update succes
* Make corrections to the domain resource and/or model.
* If retries have halted, then alter the `spec.introspectVersion`.

##### Online update sample
#### Online update sample

For an online update sample which alters a data source and Work Manager, see the
[Update 4 use case]({{< relref "/samples/simple/domains/model-in-image/update4.md" >}})
in the Model in Image sample.

#### Appendices
### Appendices

##### Using the WDT Discover Domain and Compare Model Tools
#### Using the WDT Discover Domain and Compare Model Tools

Optionally, you can use the WDT Discover Domain and Compare Domain Tools to help generate your model file updates.
The WebLogic Deploy Tooling
Expand Down Expand Up @@ -880,7 +880,7 @@ For example, assuming you've installed WDT in `/u01/wdt/weblogic-deploy` and ass

> **Note**: If your domain type isn't `WLS`, remember to change the domain type to `JRF` or `RestrictedJRF` in the above `discoverDomain.sh` commands.

##### Changing a Domain `restartVersion` or `introspectVersion`
#### Changing a Domain `restartVersion` or `introspectVersion`

As was mentioned in the [offline updates](#offline-updates) section, one way to tell the operator to
apply offline configuration changes to a running domain is by altering the Domain
Expand Down