What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2016

73
WebLogic Server 12c: What You Should Know 12 Things about Oracle WebLogic Server 12.2.1 OTN APAC / LatAm Tour Dr. Frank Munz munz & more Dave Cabelus Oracle WebLogic Server Product Management 2016 Oracle Confidential – Internal/Restricted/Highly Restricted Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

Transcript of What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2016

Page 1: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

WebLogicServer12c:WhatYouShouldKnow12ThingsaboutOracleWebLogicServer12.2.1

OTNAPAC/LatAm Tour

Dr.FrankMunzmunz &more

DaveCabelusOracleWebLogicServerProductManagement

2016

OracleConfidential– Internal/Restricted/HighlyRestrictedCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|

Page 2: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Who’s that guy?

• Dr. Frank Munz

• Founded munz & more in 2007

• 15 years Oracle WebLogic and Middleware

• Consulting and High-End Training

• Three Oracle / Cloud books

• @frankmunz on Twitter2

Page 3: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

13 new things, still no agenda J

Page 4: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#0... download today!

Page 5: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#1

JDK 8

Page 6: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

JDK 8

• WebLogic 12.2.1 supports JDK 8 only as runtime• Startup scripts work out of the box

(permspace is removed in JDK 8)

• JDK 8u40 introduces resource managementused by WebLogic multitenancy with G1 GC

java -XX:+UnlockCommercialFeatures-XX:+ResourceManagement

munz & more #6

Page 7: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#2

Java EE 7

Page 8: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Java EE 7

Every developer wants to use it! improved standards / already in 12.1.3 / major new• EJB 3.2• Servlet 3.1• JDBC 4.0• WebSockets, JAX-RS 2.0, JSON-P 1.0 • Batch 1.0• JMS 2.0• Concurrency Utilities 1.0

Tip: Learn about Java EE 7

http://de.slideshare.net/glassfish/fifty-feature-of

Page 9: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Java EE Recommendation

munz & more #9

Page 10: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#3

Download &IDE Integration

Page 11: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Download

Dev Download with small 209 MB footprint:

Page 12: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

IDE Support

munz & more #12

NetBeans 8.1 RC /Dev Build works with WebLogic 12.2.1

Eclipse net (and package) installer-> easy OEPE download & install

JDeveloper12.2.1 available for OFM 12.2.1

NEW! wlserver/server/bin/eclipse.sh

Page 13: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#4

Console changes J

Page 14: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Production Mode

You can revert production mode from console

munz & more #14

Page 15: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#5

Deployment

Page 16: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Parallel Deployment

WebLogic 12.2.1 provides parallel deployment

• Multiple applications

• Single application with multiple modules

• Applications across multiple partitions

munz & more

AcrossModulesinApplications

AcrossApplications

ParallelPrepare

Available inWebLogic11g

NewinWebLogic 12.2.1

ParallelActivate

NewinWebLogic 12.2.1

NewinWebLogic 12.2.1

Page 17: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#6

Elastic Cluster

Page 18: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Elastic Cluster

WebLogic 12.1.2: Dynamic Cluster configWebLogic 12.2.1: Elastic Cluster runtime

+ pre / post scalingcallout to scripts

munz & more #18

How to scale?• Console• WLST• REST• Policy/Action• Calendar based

Page 19: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#7

JMS

Page 20: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

JMS

• JMS 2.0 support

• Elastic JMS scales with elastic cluster

• Simplified HA Configuration:WebLogic 12.2.1 JMS restrictions are removed

• Default CX-factory required per Java EE 7:java:comp/DefaultJMSConnectionFactoryresolves to weblogic.jms.XAConnectionFactory

munz & more #20

Page 21: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#8

WLST

Page 22: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

New Command for Scaling

WLST command to scale dynamic cluster:

scaleUp/Down (clusterName, numServers, [updateConfiguration], [block], [timeoutSeconds],

) munz & more #22

How many servers to add or remove

Page 23: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#9

WLDF

Page 24: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

WLDF

• Watches and notifications are replaced by policies and actions

• Additional 4 WLDF actions– scale up / down

– REST

– Script

• Diagnostic image files are .txt or .xml

• Prepackaged smart rules with configurable parameters

munz & more #24

Page 25: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

munz & more #25

Smart rules:

Predefined policieswith open parameters

Page 26: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#10

RESTful Management

Page 27: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Why REST?

• Simplicity

• Language agnostic

• No JVM on client side, no WebLogic <->JMX

• Easy to tunnel through firewalls: HTTP

• Current tech trend (eg. mobile dev)

munz & more #27

Page 28: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

RESTful Management

• New generic WebLogic implementation:Full support for all resources (also JMS etc.)

• RESTful management is turned on per default

• Available on admin and managed Servers

• Modelled after WLST structure(real MBean names not required)

• Used throughout WebLogic documentation

munz & more #28

Page 29: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Tech Details 1

• domain|serverConfig, domain|serverRuntime, edit

• [exclude]fields=field1, field2• [exclude]links=none, links=rel• interaction=async-polling|sync

munz & more #29

Page 30: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Tech Details 2

• URL format has changed:…/wls/… was WebLogic 12.1.3, now:/management/weblogic/latest/…

• Edit sessions implicit: POST in /editOr create manually with /edit/changeManager/startEdit|cancelEdit|activate

munz & more #30

Page 31: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

CRUDQ

Page 32: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Read

Get server name and state of managed server with name surf1 via admin server

GET (e.g. via web browser)

http://localhost:7001/management/weblogic/latest/domainRuntime/serverLifeCycleRuntimes/surf1?links=none&fields=name,state

Response:{ "name": "surf1", "state": "RUNNING" }munz & more #32

Page 33: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Create

Short way to create server surf7, with UNIX curl

curl –v --user weblogic:welcome1 \-H X-Requested-By:MyClient \-H Accept:application/json \-H Content-Type:application/json \-d "{ name: 'surf7' } "-X POST \http://localhost:7001/management/weblogic/latest/edit/servers

munz & more #33

Page 34: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Create Form

Request create form

(note, WebLogic 12.1.3 used HTTP OPTION)

GET http://localhost:7001/management/weblogic/latest/edit/serverCreateForm

munz & more #34

Page 35: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Update

Update server surf7, with curl

curl ...-d "{ listenPort: '9999' } "-X POST \http://localhost:7001/management/weblogic/latest/edit/surf7

munz & more #35

Page 36: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Delete

Delete server surf7:

curl –v --user weblogic:welcome1 \-H X-Requested-By:MyClient \-H Accept:application/json \-H Content-Type:application/json \–X DELETEhttp://localhost:7001/management/weblogic/latest/edit/servers/surf7munz & more #36

Page 37: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Query

Single bulk request queries to select and return specific subsets of tree.

POSThttp://localhost:7001/management/weblogic/latest/domainRuntime/search

munz & more #37

Page 38: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#11

Docker

Page 39: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

WebLogicin a DockerContainer

Page 40: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Virtualization vs. Isolation

munz & more #40

Linux+Docker

Hardware

a.war

Docker container inLinuxwithownFS,networkstack/IPaddress,processspaceandresourcelimits

Hardware

OVM/VmWare ESX/Xen

Appl 1Solaris

Appl 1Linux

Appl 1Win

ServerVirtualizationtype1hypervisor=onbaremetal

Hardware

VirtualBoxMacOS/Win

AppLinux

DesktopVirtualization:type2hypervisor=withhostOS

AppWin

AppWin

ejb.jar

y.jarx.py

JDKWebLogic

toolsJython

Page 41: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Docker

munz & more #41

Linux+Docker

Hardware

a.warejb.jar

y.jar

x.py

JDK

WebLogic

tools

Jython

Docker is not a lightweight VirtualBox- it's about isolation.

Containers run on Linux kernel of host

-> Containers are visible on host

Page 42: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Docker Container

• Isolated runtime of Docker image

• Starts up in milliseconds

• Sandboxing uses Linux namespaces and cgroups-> isolated part of your Linux

• Open Container Standard / Linux Foundation

docker run -d –p 8080:9999 fmunz/micro

munz & more #42

Page 43: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

solves the “Worked For Me!” issue

munz & more #43

OStools,JDK,patches,database

driver,libs,appserver,domain,deployment,tools,

scripts

Docker

OSutils,JDK,patches,databasedriver,libs,appserver,domain,deployment,tools,scripts

Integration,Performance,Acceptance

Testing

Production

dockerize it!

You can pass environment variables for specific settings e.g. in prodDocker Registry

Page 44: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

what should be your biggest nightmare:

unknown and unofficial images(>14000)

Docker Registry

Page 45: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

What Do You Get?

• NOT WebLogic from Docker registry

• NO automatic build via github

• Github repo with scripts to set up WebLogic on Oracle Linux in Docker

• Dev or generic distribution

• Docker is a supportedenvironment forWebLogic 12.2.1 / 12.1.3

munz & more #45

Page 46: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

OracleProduct inDocker OfficialSupport

GlassFish

MySQL yes

NoSQL

OpenJDK

OracleLinux yes

OracleCoherence yes

OracleDatabase (dev)

OracleHTTPServer yes

OracleJDK yes

OracleTuxedo yes

#46^

Oracle support does not require you to use the provided Docker files

Page 47: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Docker Style

• Independent, standalone WLS domain

• Microservices style architecture

• Just add your favorite Dockercluster manager

munz & more #47

OStools,JDK,databasedriver,libs,appserver,single

domain(adminserveronly),deployment,

tools,scripts

Page 48: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Docker in the Cloud?

Supported by every major cloud provider:

munz & more #48

On premise -> all clouds

DockerRegistry

DockerContainerService

EC2ContainerService

GoogleContainerEngine

AzureContainerService

Bluemix Containers

Page 49: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

munz & more #49

Docker bookbyJ.Turnbull(Docker 1.8)

OracleWhitepaperWebLogiconDocker Containers

Page 50: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Facts to Know

• Oracle supports WebLogic on Docker

• Docker networking is final now

• Docker cluster managers are still evolving:Docker Swarm, Kubernetes, Apache Mesos with Marathon, AWS ECS, CloudFoundry, etc.

munz & more #50

Page 51: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#12

Multi Tenancy

Page 52: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Domain Partitions

• Admin and runtime slice of domain• Partition has its own apps, security, JDBC

config etc.• Partitions can be started and stopped

individually• Partition can be exported / imported• Shared on same JVM, but separated

Page 53: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Copyright©2015, Oracleand/oritsaffiliates.Allrightsreserved.|

KeyTechnicalConcepts

TrafficDirector

WebLogicServer

Partition1

VirtualTarget

App App JMS

DataSource

JNDI

Coherence

Service1 Service2 … ServiceN

Partition1

Database

Partition2

VirtualTarget

App App JMS

DataSource

JNDIPartition2

OracleConfidential– Internal 53

Page 54: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Benefit: Isolation

Tenants within one domain have isolation

• Runtime: JDK, heap, CPU• Security: realm, user• Admin: life cycle, roles• Data / traffic: JNDI, JDBC, Coherence,

requests

munz & more / globalcollect 2016

Page 55: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Separation

• HR and Finance can be separate partitionsin one domain

• Mercedes and BMW are probably not suitable for one domain

Technically partitions are not 100%isolated <-> Docker container, VMs

Page 56: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Actions

Resource Consumption Manager: Boundaries for files, heap, and CPU + Actions

Actions:- Notify- Slow- Kill

Page 57: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Not (yet) Supported

Other OFM products don't supportdomain partitionsalthough they on top of WebLogic 12.2.1

Page 58: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#13

Zero Downtime(ZDT)

Page 59: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Rolling Updates

• Rolling shutdown

• Rollout of new Java

• Rollout of patched ORACLE_HOME

• Rollout of patched apps

Page 60: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

You have to prepare

• JDKs

• Patched ORACLE_HOME

• JSON files for apps update

Rollout is orchestrated by admin server

Page 61: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Rollout Oracle Home

https://community.oracle.com/docs/DOC-996731

Page 62: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Workflow History

Page 63: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

How Does it Work?

JKD Upgrades changes the following files:

bin/setNMJavaHome.shbin/setDomainEnv.shinit-info/startscript.xmlinit-info/domain-info.xml

Page 64: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

#14

WebLogic in JCS

Page 65: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Java Cloud Service

Java Cloud Service = JCS

• Oracle cloud offering for WebLogic • Talk to your partner manager for trial

account• If you never tried it, give it a go now

and evaluate your use case

munz & more #65

Page 66: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

munz & more #66

Page 67: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

munz & more #67

Page 68: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

munz & more #68

Page 69: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

JCS Summary

• Saves you install time• Nicely integrated with DB, ID etc.• Clone environments• ZDT patching• Automated Lifecycle

– For Java and DB cloud

• Continuous Integration / Deliver – Integration with Developer Cloud Service

-> speed up and modernize environments

munz & more #69

Page 70: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Summary

1. JDK 8

2. Java EE 7

3. IDE

4. Console

5. Deployment

6. JMS

7. Cluster

8. WLST

9. WLDF

10. REST

11. Docker

12. Multi Tenancy

13. ZDT

14. Java CloudService

munz & more #70

Page 71: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

Copyright©2015, Oracleand/oritsaffiliates.Allrightsreserved.|

WhyUpgradetoWebLogic12cR2

71

WebLogicServer12cR1

• JavaEE6• Websockets (JavaEE7)• EmulationClient/Server-Sent

Events• JAX-RS2.0(JavaEE7)• JSON(JavaEE7)• LightweightZipInstaller

• DBIntegration• DynamicClusters/ElasticJMS• UnifiedManagement• RESTful ManagementAPIs• HAOptimizations• Coherence/Toplink integration• Mavenintegration

WebLogicServer12cR2

• JavaEE7• Quickinstallerfordev• JavaSE8

• Microcontainers/multitenancy• Multidatacenter/Continuous

availability• Automatedelasticityfor

DynamicClusters• CompleteRESTmanagement• Performanceimprovements

Page 72: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

tweet to win!

#otntour AND @soacommunity

@frankmunz

+picture?

Page 73: What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2016

www.munzandmore.com/blog

facebook.com/cloudcomputingbookfacebook.com/weblogicbook

@frankmunz

youtube.com/weblogicbook-> more than 50 web casts

Don’t be

shy J