Skip to content

Commit ef2ffa6

Browse files
Updated SOA docs regarding Early access (#1429)
* SOA doc updates regarding early access * incorporated review comments * Updated the content to pull FMW infra image * Added content about patch 27117282 * Updated links and Domain URLs Co-authored-by: Mark Nelson <[email protected]>
1 parent f614670 commit ef2ffa6

File tree

2 files changed

+149
-35
lines changed
  • docs-source/content/userguide/managing-fmw-domains/soa-suite
  • kubernetes/samples/scripts/create-soa-domain

2 files changed

+149
-35
lines changed

docs-source/content/userguide/managing-fmw-domains/soa-suite/_index.md

Lines changed: 147 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,15 @@ it is supported for production use.
1515
#### Contents
1616

1717
* [Introduction](#introduction)
18+
* [Prerequisites for SOA Suite domains](#prerequisites-for-soa-suite-domains)
1819
* [Limitations](#limitations)
1920
* [Obtaining the SOA Suite Docker image](#obtaining-the-soa-suite-docker-image)
2021
* [Creating a SOA Suite Docker image](#creating-a-soa-suite-docker-image)
2122
* [Configuring access to your database](#configuring-access-to-your-database)
2223
* [Running the Repository Creation Utility to set up your database schemas](#running-the-repository-creation-utility-to-set-up-your-database-schemas)
2324
* [Create a Kubernetes secret with the RCU credentials](#create-a-kubernetes-secret-with-the-rcu-credentials)
2425
* [Creating a SOA domain](#creating-a-soa-domain)
26+
* [Configuring a Load balancer for SOA Suite domains](#configuring-a-load-balancer-for-soa-suite-domains)
2527
* [Monitoring a SOA domain](#monitoring-a-soa-domain)
2628

2729

@@ -41,6 +43,17 @@ Other than those considerations listed here, SOA Suite domains work in the same
4143
In this release, SOA Suite domains are supported using the “domain on a persistent volume”
4244
[model]({{< relref "/userguide/managing-domains/choosing-a-model/_index.md" >}}) only, where the domain home is located in a persistent volume (PV).
4345

46+
#### Prerequisites for SOA Suite domains
47+
48+
* Kubernetes 1.13.5+, 1.14.3+ and 1.15.2+ (check with `kubectl version`).
49+
* Flannel networking v0.11.0-amd64 (check with `docker images | grep flannel`).
50+
* Docker 18.9.1 (check with `docker version`)
51+
* Helm 2.14.0+ (check with `helm version`).
52+
* Oracle Fusion Middleware Infrastructure 12.2.1.3.0 image with patch 29135930.
53+
* The existing Fusion Middleware Infrastructure Docker image, `container-registry.oracle.com/middleware/fmw-infrastructure:12.2.1.3`, has all the necessary patches applied.
54+
* Check the Fusion Middleware Infrastructure patches with `docker run container-registry.oracle.com/middleware/fmw-infrastructure:12.2.1.3 sh -c '$ORACLE_HOME/OPatch/opatch lspatches'`.
55+
* You must have the `cluster-admin` role to install the operator.
56+
* We do not currently support running SOA in non-Linux containers.
4457

4558
#### Limitations
4659

@@ -51,7 +64,7 @@ following limitations currently exist for SOA Suite domains:
5164
* Only configured clusters are supported. Dynamic clusters are not supported for
5265
SOA Suite domains. Note that you can still use all of the scaling features,
5366
you just need to define the maximum size of your cluster at domain creation time.
54-
* Deploying and running SOA Suite domains is supported only in operator versions 2.2.1 and later.
67+
* Deploying and running SOA Suite domains is supported only in operator versions 2.4.0 and later.
5568
* The [WebLogic Logging Exporter](https://github.com/oracle/weblogic-logging-exporter)
5669
currently supports WebLogic Server logs only. Other logs will not be sent to
5770
Elasticsearch. Note, however, that you can use a sidecar with a log handling tool
@@ -60,14 +73,16 @@ following limitations currently exist for SOA Suite domains:
6073
currently supports the WebLogic MBean trees only. Support for JRF MBeans has not
6174
been added yet.
6275

76+
{{% notice note %}}
77+
For early access customers, with bundle patch access, we recommend that you build and use the Oracle SOA Suite Docker image with the latest bundle patch for Oracle SOA. The Oracle SOA Suite Docker image in `container-registry.oracle.com` does not have the bundle patch installed. However, if you do not have access to the bundle patch, you can obtain the Oracle SOA Suite Docker image without the bundle patch from `container-registry.oracle.com`, as described below.
78+
{{% /notice %}}
6379

6480
#### Obtaining the SOA Suite Docker Image
6581

66-
The Oracle WebLogic Server Kubernetes Operator requires a SOA Suite 12.2.1.3.0 image with patch 29135930 applied.
67-
The standard pre-built SOA Suite image, `container-registry.oracle.com/middleware/soasuite:12.2.1.3`, already has this patch applied. For detailed instructions on how to log in to the Oracle Container Registry and accept the license agreement, see this [document]({{< relref "/userguide/managing-domains/domain-in-image/base-images/_index.md#obtaining-standard-images-from-the-oracle-container-registry" >}}).
82+
The pre-built Oracle SOA Suite image is available at, `container-registry.oracle.com/middleware/soasuite:12.2.1.3`.
6883

6984
To pull an image from the Oracle Container Registry, in a web browser, navigate to https://container-registry.oracle.com and log in
70-
using the Oracle Single Sign-On authentication service. If you do not already have SSO credentials, at the top of the page, click the Sign In link to create them.
85+
using the Oracle Single Sign-On authentication service. If you do not already have SSO credentials, at the top of the page, click the Sign In link to create them.
7186

7287
Use the web interface to accept the Oracle Standard Terms and Restrictions for the Oracle software images that you intend to deploy.
7388
Your acceptance of these terms are stored in a database that links the software images to your Oracle Single Sign-On login credentials.
@@ -84,62 +99,65 @@ Then, you can pull the image with this command:
8499
$ docker pull container-registry.oracle.com/middleware/soasuite:12.2.1.3
85100
```
86101

87-
Additional information about using this image is available in the
88-
[Oracle Container Registry](https://container-registry.oracle.com).
89-
90102
#### Creating a SOA Suite Docker image
91103

92-
If you prefer, you can also create a Docker image containing the SOA Suite binaries yourself.
93-
A [sample](https://github.com/oracle/docker-images/tree/master/OracleSOASuite)
94-
is provided in the Oracle GitHub account that demonstrates how to create a Docker image
95-
to run SOA Suite.
104+
You can also create a Docker image containing the Oracle SOA Suite binaries. This is the recommended approach if you have access to the Oracle SOA bundle patch.
105+
106+
Please consult the [README](https://github.com/oracle/docker-images/blob/master/OracleSOASuite/dockerfiles/README.md) file for important prerequisite steps,
107+
such as building or pulling the Server JRE Docker image, Oracle FMW Infrastructure Docker image, and downloading the Oracle SOA Suite installer and bundle patch binaries.
108+
109+
For the Fusion Middleware Infrastructure image, you must install the [required patch]({{< relref "/userguide/introduction/introduction/_index.md#prerequisites" >}}) to use this image with the Oracle WebLogic Kubernetes operator. A pre-built (and already patched) Fusion Middleware Infrastructure image, `container-registry.oracle.com/middleware/fmw-infrastructure:12.2.1.3-200109`, is available at `container-registry.oracle.com`. We recommend to pull and rename this image to build the Oracle SOA Suite image.
110+
111+
112+
```bash
113+
$ docker pull container-registry.oracle.com/middleware/fmw-infrastructure:12.2.1.3-200109
114+
$ docker tag container-registry.oracle.com/middleware/fmw-infrastructure:12.2.1.3-200109 oracle/fmw-infrastructure:12.2.1.3
115+
```
96116

97-
Please consult the [README](https://github.com/oracle/docker-images/blob/master/OracleSOASuite/dockerfiles/README.md) file associated with this sample for important prerequisite steps,
98-
such as building or pulling the Server JRE Docker image, Oracle FMW Infrastructure Docker image, and downloading the SOA Suite installer binary.
117+
{{% notice warning %}}
118+
If you are pulling the Fusion Middleware Infrastructure image from `container-registry.oracle.com` you must use the image with the tag `12.2.1.3-200109`, no other tagged image will work for the Oracle SOA Suite image build.
119+
{{% /notice %}}
99120

100-
You must also install the [required patch]({{< relref "/userguide/introduction/introduction/_index.md#prerequisites" >}})
101-
to use this image with the operator. A [sample](https://github.com/oracle/docker-images/tree/master/OracleFMWInfrastructure/samples/12213-patch-fmw-for-k8s)
102-
is provided that demonstrates how to create a Docker image with the necessary patch installed. Use this patched image for building the SOA Suite image.
121+
You can also build the Fusion Middleware
122+
Infrastructure image with the required patch (29135930) applied. A [sample](https://github.com/oracle/docker-images/tree/master/OracleFMWInfrastructure/samples/12213-patch-fmw-for-k8s) is provided that demonstrates how to create a Docker image with the necessary patch installed. Use this patched Fusion Middleware Infrastructure image for building the Oracle SOA Suite image.
103123

104-
Follow these steps to build the necessary images - a patched Fusion Middleware
105-
Infrastructure image, and then the SOA Suite image as a layer on top of that:
124+
Follow these steps to build the necessary images - a patched Fusion Middleware Infrastructure image, and then the SOA Suite image as a layer on top of that:
106125

107-
* Make a local clone of the sample repsitory.
126+
* Make a local clone of the sample repository.
108127

109128
```bash
110129
$ git clone https://github.com/oracle/docker-images
111130
```
131+
* Build `oracle/fmw-infrastructure:12.2.1.3` image as shown below:
112132

133+
```bash
134+
$ cd docker-images/OracleFMWInfrastructure/dockerfiles
135+
$ sh buildDockerImage.sh -v 12.2.1.3 -s
136+
```
113137
* Download the required patch (29135930) from My Oracle Support.
114-
* Create a Docker image containing the Fusion Middleware Infrastructure binaries with
115-
the patch applied by running the provided script:
138+
* Create a Docker image containing the Fusion Middleware Infrastructure binaries with the patch applied by running the provided script:
116139

117140
```bash
118141
$ cd docker-images/OracleFMWInfrastructure/samples/12213-patch-fmw-for-k8s
119142
$ ./build.sh
120143
```
121-
122-
This will produce an image named `oracle/fmw-infrastructure:12213-update-k8s`.
123-
The samples and instructions in this document assume you are using the
124-
pre-built (and already patched) image, `container-registry.oracle.com/middleware/fmw_infrastructure:12.2.1.3`.
125-
When building your own image, you will need to rename your image, for example from `oracle/fmw-infrastructure:12213-update-k8s`
126-
to `oracle/fmw-infrastructure:12.2.1.3`, or update the samples to refer to the
127-
image you created.
144+
This will produce an image named `oracle/fmw-infrastructure:12213-update-k8s`. You will need to rename this image , for example from `oracle/fmw-infrastructure:12213-update-k8s`
145+
to `oracle/fmw-infrastructure:12.2.1.3`, or update the samples to refer to the image you created.
128146

129147
```
130148
$ docker tag oracle/fmw-infrastructure:12213-update-k8s oracle/fmw-infrastructure:12.2.1.3
131149
```
132-
* Download the Oracle SOA Suite installer from Oracle Technology Network
133-
or e-delivery.
150+
* Download the Oracle SOA Suite installer, latest Oracle SOA bundle patch (`30638100` or later) and the patch `27117282` from Oracle Technology Network or e-delivery.
151+
>NOTE: Copy the installer binaries to the same location as the Dockerfile and the patch ZIP files under the `docker-images/OracleSOASuite/dockerfiles/12.2.1.3/patches` folder.
134152

135-
* Create the SOA Suite image by running the provided script:
153+
* Create the Oracle SOA Suite image by running the provided script:
136154

137155
```bash
138156
$ cd docker-images/OracleSOASuite/dockerfiles
139157
$ ./buildDockerImage.sh -v 12.2.1.3 -s
140158
```
141159

142-
The image produced will be named `oracle/soa:12.2.1.3`. The samples and
160+
The image produced will be named `oracle/soa:12.2.1.3`. The samples and
143161
instructions assume the Oracle SOA Suite image is named
144162
`container-registry.oracle.com/middleware/soasuite:12.2.1.3`.
145163
You will need to rename your image to match this name,
@@ -329,3 +347,100 @@ type: Opaque
329347

330348
Now that you have your Docker images and you have created your RCU schemas, you are ready
331349
to create your domain. To continue, follow the instructions in the [SOA Domain sample]({{< relref "/samples/simple/domains/soa-domain/_index.md" >}}).
350+
351+
#### Configuring a Load balancer for SOA Suite domains
352+
353+
An Ingress based load balancer can be configured to access the Oracle SOA and Oracle Service Bus domain application URLs.
354+
Refer the [setup Ingress](https://oracle.github.io/weblogic-kubernetes-operator/userguide/managing-domains/ingress/) document for details.
355+
356+
As part of the `ingress-per-domain` setup for Oracle SOA and Oracle Service Bus domains the `values.yaml` (under `ingress-per-domain` directory) need to be updated with the appropriate values from your environment. A sample `values.yaml` (for Traefik load balancer) is below:
357+
358+
```bash
359+
# Default values for ingress-per-domain.
360+
# This is a YAML-formatted file.
361+
# Declare variables to be passed into your templates.
362+
363+
# Load balancer type. Supported values are: TRAEFIK, VOYAGER
364+
type: TRAEFIK
365+
366+
# WLS domain as backend to the load balancer
367+
wlsDomain:
368+
domainUID: soainfra
369+
soaClusterName: soa_cluster
370+
osbClusterName: osb_cluster
371+
soaManagedServerPort: 8001
372+
osbManagedServerPort: 9001
373+
adminServerName: adminserver
374+
adminServerPort: 7001
375+
376+
# Traefik specific values
377+
traefik:
378+
# hostname used by host-routing
379+
hostname: testhost.domain.com
380+
381+
# Voyager specific values
382+
voyager:
383+
# web port
384+
webPort: 30305
385+
# stats port
386+
statsPort: 30315
387+
```
388+
389+
Below are the path based Ingress routing rules (`spec.rules` section) that needs to be defined for Oracle SOA and Oracle Service Bus domains. You need to update the appropriate Ingress template yaml file based on the load balancer being used. For instance the template yaml for Traefik load balancer is located at `kubernetes/samples/charts/ingress-per-domain/templates/traefik-ingress.yaml`.
390+
391+
```bash
392+
rules:
393+
- host: '{{ .Values.traefik.hostname }}'
394+
http:
395+
paths:
396+
- path: /console
397+
backend:
398+
serviceName: '{{ .Values.wlsDomain.domainUID }}-{{ .Values.wlsDomain.adminServerName | lower | replace "_" "-" }}'
399+
servicePort: {{ .Values.wlsDomain.adminServerPort }}
400+
- path: /em
401+
backend:
402+
serviceName: '{{ .Values.wlsDomain.domainUID }}-{{ .Values.wlsDomain.adminServerName | lower | replace "_" "-" }}'
403+
servicePort: {{ .Values.wlsDomain.adminServerPort }}
404+
- path: /servicebus
405+
backend:
406+
serviceName: '{{ .Values.wlsDomain.domainUID }}-{{ .Values.wlsDomain.adminServerName | lower | replace "_" "-" }}'
407+
servicePort: {{ .Values.wlsDomain.adminServerPort }}
408+
- path: /lwpfconsole
409+
backend:
410+
serviceName: '{{ .Values.wlsDomain.domainUID }}-{{ .Values.wlsDomain.adminServerName | lower | replace "_" "-" }}'
411+
servicePort: {{ .Values.wlsDomain.adminServerPort }}
412+
- path:
413+
backend:
414+
serviceName: '{{ .Values.wlsDomain.domainUID }}-cluster-{{ .Values.wlsDomain.soaClusterName | lower | replace "_" "-" }}'
415+
servicePort: {{ .Values.wlsDomain.soaManagedServerPort }}
416+
```
417+
418+
Now you can access the Oracle SOA Suite domain URLs as below, based on the domain type selected.
419+
420+
* Oracle SOA:
421+
422+
http://\<hostname\>:\<port\>/weblogic/ready
423+
http://\<hostname\>:\<port\>/console
424+
http://\<hostname\>:\<port\>/em
425+
http://\<hostname\>:\<port\>/soa-infra
426+
http://\<hostname\>:\<port\>/soa/composer
427+
http://\<hostname\>:\<port\>/integration/worklistapp
428+
429+
* Oracle Enterprise Scheduler Service (ESS):
430+
431+
http://\<hostname\>:\<port\>/ess
432+
http://\<hostname\>:\<port\>/EssHealthCheck
433+
434+
* Oracle Service Bus (OSB):
435+
436+
http://\<hostname\>:\<port\>/servicebus
437+
http://\<hostname\>:\<port\>/lwpfconsole
438+
439+
#### Monitoring a SOA domain
440+
441+
After the SOA domain is set up, you can:
442+
443+
* Monitor the SOA instance using Prometheus and Grafana. See [Monitoring a domain](https://github.com/oracle/weblogic-monitoring-exporter).
444+
* Publish operator and WebLogic Server logs into Elasticsearch and interact with them in Kibana.
445+
See [Publish logs to Elasticsearch](https://github.com/oracle/weblogic-logging-exporter).
446+

kubernetes/samples/scripts/create-soa-domain/README.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,8 @@ environment. You can:
2121

2222
### Limitations
2323

24-
Refer to the [User guide](https://oracle.github.io/weblogic-kubernetes-operator/userguide/managing-fmw-domains/soa-suite/) for limitations in this release.
24+
Refer to the [User guide](https://oracle.github.io/weblogic-kubernetes-operator/userguide/managing-fmw-domains/soa-suite/#limitations) for limitations in this release.
2525

2626
### Getting started
2727

28-
The fastest way to experience the operator is to follow the [User guide](https://oracle.github.io/weblogic-kubernetes-operator/userguide/managing-fmw-domains/soa-suite/)
29-
or try out the deployment [scripts](https://oracle.github.io/weblogic-kubernetes-operator/samples/simple/domains/soa-domain/).
28+
The fastest way to experience the operator is to follow the [User guide](https://oracle.github.io/weblogic-kubernetes-operator/userguide/managing-fmw-domains/soa-suite/).

0 commit comments

Comments
 (0)