Scaling Failure with Elastic Cluster in Oracle WebLogic Server 12.2.1 (12c)?

The Issue

When you manually scale an elastic cluster let’s say from 2 to 3 there is no issue. Then try scaling the cluster from 3 to 4 and WebLogic admin console will report “FAILED”.

 

How it really Works

Actually it is not broken, it just doesn’t do what you expect it to do because of the cool down period for cluster scaling that has a default value of 900 seconds. This setting is useful to prevent oscillating cluster sizes (possibly due to conflicting rules).

elastic_cluster_fail

You can set this value yourself under Cluster / Configuration /

cooloff

 

What should Oracle Do?

Oracle should change the state from FAILED, to COOLDOWN_PERIOD or so.

Deploy with Deployment Plan (WebLogic 12.2.1)

You cannot deploy an application to WebLogic 12.2.1 and specify an arbitrary location for the deployment plan when using the admin console, but you can update a deployed application and specify the location of a deployment plan.

However, you can deploy an open directory with a app directory (containing, well, your app) and plan subdirectory (containing your deployment plan).

mdbplan

Zero Downtime: Restart Admin Server from Admin Console / Rolling Restart of Servers or Cluster (WebLogic 12.2.1)

Before WebLogic 12.2.1 I was often asked if there is any OOTB restart of the admin server, especially from the admin console. Now with WLS 12.2.1 it can be done easily. Also of course you rolling restart a set of servers, a cluster or two, or whole domain!

  • Admin Server has to be assigned to a machine
  • Admin Server has to be started under nodemanager

Goto DOMAIN / ZDT Control / Domain | Cluster | Servers, chose what you would like to rolling restart, then click on Patch.

Select Rolling Restart.

rollingrestart

DevOps tools: Easily tunnel your localhost (WebLogic or some other) server with ngrok to the world

Here is another addition to my DevOps tools series that is worth to know if you work with any kind of servers such as WebLogic, nginx or Apache httpd etc.

ngrok is a fun and very easy tool I use from time to time in demos or when running a training.
It opens a public tunnel (that of course can be protected) to connect to your local server. Really nice if you are in a different network than your audience, or hidden between a DSL router etc.

In the webcast below I show how to access WebLogic 12.2.1 running on localhost:7001

You read it here first 🙂

also check out the webcasts of the DevOps tools series about how to detect high CPU threads, or the usage of lsof.

 

Oracle Service Bus 12c (12.2.1) Native REST: Bug in HTTP GET in Pipeline?

While I was working on an Oracle tech presentation, I discovered the following issue with native REST and Oracle Service Bus 12c.

Version

SOA Quickstart / 12.2.1 OSB, running on RedHat derivative with Oracle JDK 8.

Description

OSB 12.2.1 Native REST pipelines don’t work with GET parameters.

Creating a native REST business services works fine, also adding a REST proxy service.
Once you insert a pipeline HTTP stops working correctly (since the URL parameters aren’t forwarded, a list will be returned by the backend service according to REST semantics), since URL parameters are not forwarded.

Steps to reproduce:

  • Use REST tech adapter to create a REST business service for an existing REST backend.
  • Define GET and POST methods. WADL will be created.
  • Test business service from WADL: both GET and POST will work.
  • Create proxy service from REST business service
  • Test proxy service, again GET and POST methods will work from OSB test client.
  • In JDev, drop a pipeline on the line connecting proxy and business service.
  • In JDev verify the pipeline configuration. it will display correct values.
  • Test the proxy service again, only POST will work. GET does not work anymore (now returns a whole list), since the URL parameters are not forwarded. Even an empty OSB pipeline will swallow the GET URL parameters.

Severity

IMHO this is a bug. I am currently in discussion with Oracle PM about it. Since I am working on another cloud gig, I cannot file a SR myself.

What is next?

I will let you know about updates / fixes or workarounds. Note, you could set the URL parameters as routing options to circumnavigate the issue for a particular use case.

Update 1 (Oct 2016)

I received no feedback from Oracle unfortunately. Anyway, if you experience the same issue let me know. It is important to share the knowledge here – I receive a lot of positive feedback from people with the same issues. Anyhow, also file a SR with MOS if you can. This is the official way to get it possibly fixed.

Update 2 (Jan-12, 2017)

There is a Patch 25184543 now with a backport to 12.2.1.2, see comments below. Gracias a Juan! Kudos for getting this through MOS and for sharing the knowledge.