58
12 Things about Oracle WebLogic Server 12.2.1 Dr. Frank Munz munz & more with Dave Cabelus Oracle WebLogic Server Product Management October/November 2015 Oracle Confidential – Internal/Restricted/Highly Restricted Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |

wls12-151028144028-lva1-app6892

  • Upload
    itshezz

  • View
    219

  • Download
    0

Embed Size (px)

DESCRIPTION

Weblogic

Citation preview

Page 1: wls12-151028144028-lva1-app6892

12ThingsaboutOracleWebLogicServer12.2.1

Dr.FrankMunzmunz &more

withDaveCabelusOracleWebLogicServerProductManagement

October/November2015

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

Page 2: wls12-151028144028-lva1-app6892

Copyright©2015, Oracleand/oritsaffiliates.Allrightsreserved.|

SafeHarborStatementThefollowingisintendedtooutlineourgeneralproductdirection.Itisintendedforinformationpurposesonly,andmaynotbeincorporatedintoanycontract.Itisnotacommitmenttodeliveranymaterial,code,orfunctionality,andshouldnotberelieduponinmakingpurchasingdecisions.Thedevelopment,release,andtimingofanyfeaturesorfunctionalitydescribedforOracle’sproductsremainsatthesolediscretionofOracle.

OracleConfidential – Internal/Restricted/HighlyRestricted

Page 3: wls12-151028144028-lva1-app6892

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 Twitter3

Page 4: wls12-151028144028-lva1-app6892

Copyright©2015, Oracleand/oritsaffiliates.Allrightsreserved.|

Who’sThatOtherGuy?DaveCabelus• WebLogicServerProductManagersince2005

• ExpertiseinmanyareasofWebLogicServer

• 8th consecutiveyearatOpenWorld• FollowDaveonTwitterat@dave_cabelus,videosatwww.youtube.com/user/OracleWebLogic

4

Page 5: wls12-151028144028-lva1-app6892

12 new things, no agenda J

Page 6: wls12-151028144028-lva1-app6892

#0... download today!

Page 7: wls12-151028144028-lva1-app6892

#1

JDK 8

Page 8: wls12-151028144028-lva1-app6892

JDK 8

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

(permspace is removed in JDK 8) • Coherence 12.2.1uses JDK 8

language features in a distributed, lazy way• JDK 8u40 introduced resource management

used by WebLogic multitenancy with G1 GC

java -XX:+UnlockCommercialFeatures-XX:+ResourceManagement

munz & more #8

Page 9: wls12-151028144028-lva1-app6892

#2

Java EE 7

Page 10: wls12-151028144028-lva1-app6892

Java EE 7

Every developer wants to use it! Improved or new standards in Java EE 7:• 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.0munz & more #10

Tip: Learn about Java EE 7http://de.slideshare.net/glassfish/fifty-feature-of

Page 11: wls12-151028144028-lva1-app6892

Recommendation

munz & more #11

Page 12: wls12-151028144028-lva1-app6892

#3

IDE Integration

Page 13: wls12-151028144028-lva1-app6892

IDE Support

munz & more #13

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 14: wls12-151028144028-lva1-app6892

#4

Console changes J

Page 15: wls12-151028144028-lva1-app6892

Production Mode

You can revert production mode from console

munz & more #15

Page 16: wls12-151028144028-lva1-app6892

#5

Deployment

Page 17: wls12-151028144028-lva1-app6892

Parallel Deployment

WebLogic 12.2.1 provides parallel deployment

• Multiple applications -> OFM

• 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 18: wls12-151028144028-lva1-app6892

#6

Elastic Cluster

Page 19: wls12-151028144028-lva1-app6892

Elastic Cluster

WebLogic 12.1.2: Dynamic Cluster configWebLogic 12.2.1: Elastic Cluster runtime

+ pre / post scalingcallout to scripts

munz & more #19

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

Page 20: wls12-151028144028-lva1-app6892

#7

JMS

Page 21: wls12-151028144028-lva1-app6892

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 #21

Page 22: wls12-151028144028-lva1-app6892

#8

WLST

Page 23: wls12-151028144028-lva1-app6892

New Command for Scaling

WLST command to scale dynamic cluster:

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

) munz & more #23

How many servers to add or remove

Page 24: wls12-151028144028-lva1-app6892

#9

WLDF

Page 25: wls12-151028144028-lva1-app6892

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 (policies) with configurable parameters

munz & more #25

Page 26: wls12-151028144028-lva1-app6892

munz & more #26

Smart rules:

Predefined policieswith open parameters

Page 27: wls12-151028144028-lva1-app6892

#10

RESTful Management

Page 28: wls12-151028144028-lva1-app6892

Why REST?

• Simplicity

• Language agnostic

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

• Easy to tunnel through firewalls: HTTP

• Current tech trend (eg. mobile dev)

munz & more #28

Page 29: wls12-151028144028-lva1-app6892

RESTful Management

• New generic REST 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 <-> Jolokia)

• Used throughout WebLogic documentation

munz & more #29

Page 30: wls12-151028144028-lva1-app6892

Tech Details 1

What you can access:

• domain|serverConfig, domain|serverRuntime, edit

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

munz & more #30

Page 31: wls12-151028144028-lva1-app6892

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 #31

Page 32: wls12-151028144028-lva1-app6892

CRUDQ

Page 33: wls12-151028144028-lva1-app6892

ReadGet 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 #33

Page 34: wls12-151028144028-lva1-app6892

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 #34

Page 35: wls12-151028144028-lva1-app6892

Create Form

Request create form(note, WebLogic 12.1.3 used HTTP OPTION)

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

munz & more #35

Page 36: wls12-151028144028-lva1-app6892

Update

Update server surf7, with curl

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

munz & more #36

Page 37: wls12-151028144028-lva1-app6892

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 #37

Page 38: wls12-151028144028-lva1-app6892

Query

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

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

munz & more #38

Page 39: wls12-151028144028-lva1-app6892

Take Aways

• HTTP OPTION (WLS 12.1.2) is currently not used -> …RequestForm

• Modifying a read-only value is silently ignored (per design)

• CREATE requires X-Requested-By header, to prevent CSRF (cross-site request forgery)

• Most other headers are not mandatory

munz & more #39

Page 40: wls12-151028144028-lva1-app6892

#11

Docker

Page 41: wls12-151028144028-lva1-app6892

WebLogicin a DockerContainer

Page 42: wls12-151028144028-lva1-app6892

“Docker wasn’tonanyone’sagendafor2014.It’soneveryones roadmapfor2015.”

AdrianCockroftNetflix

Page 43: wls12-151028144028-lva1-app6892

Why Docker

• Because the whole world is talking about it J

• Light-weight isolation technique

• Solves "Worked for me" issue:Dev to prod, and on-premise to cloud

• Supported by Oracle for WebLogic 12.2.1

munz & more #43

Page 44: wls12-151028144028-lva1-app6892

Virtualization vs. Isolation

munz & more #44

Linux+Docker

Hardware

a.war

Docker container inLinuxwithownFS,networkstack/IPaddress,processspaceandresourcelimits

Hardware

OVM/VmWareESX/Xen

Appl 1Solaris

Appl 1Linux

Appl 1Win

ServerVirtualizationtype1hypervisor=onbaremetal

Hardware

VirtualBoxMacOS/Win

AppLinux

DesktopVirtualization:type2hypervisor=withhostOS

AppWin

AppWin

ejb.jar

y.jarx.py

JDK

WebLogic

tools

Jython

Page 45: wls12-151028144028-lva1-app6892

munz & more #45

Docker bookbyJ.Turnbull(Docker 1.8)

OracleWhitepaperWebLogiconDocker Containers

Page 46: wls12-151028144028-lva1-app6892

#12

Multi Tenancy

Page 47: wls12-151028144028-lva1-app6892

Copyright©2015, Oracleand/oritsaffiliates.Allrightsreserved.|

WebLogicMultitenant:SolvingCriticalBusinessChallenges

MicrocontainerPortabilityforDevops

WebLogicMT

JavaCloudService

3XConsolidationRatio

WebLogic WebLogic WebLogic

JavaCloudService

Secure/IsolatedMultitenantJava

WebLogicMT

OracleConfidential – Internal 47

Page 48: wls12-151028144028-lva1-app6892

Copyright©2015, Oracleand/oritsaffiliates.Allrightsreserved.|

KeyTechnicalConcepts

TrafficDirector

WebLogicServer(JVM)

Partition1

VirtualTarget

App App JMS

DataSource

JNDI

Coherence

Service1 Service2 … ServiceN

Partition1

Database

Partition2

VirtualTarget

App App JMS

DataSource

JNDIPartition2

OracleConfidential – Internal 48

Page 49: wls12-151028144028-lva1-app6892

Isolation: 4 Areas

• Security: Security realm per partition

• Life Cycle: Start / stop, debug flags

• Data / Traffic: separate JNDI tree, data sources, (pluggable) DBs

• Runtime: Ressource consumption manager

munz & more #49

Page 50: wls12-151028144028-lva1-app6892

Resource Consumption

Resources:

munz & more #50

Recourses:You can definemultiple policies

Page 51: wls12-151028144028-lva1-app6892

ImageSource:Fowler

Use Cases

• Pack friendly domains together

• Don't pack dev, test, and int together<-> one debug port per JVM etc.

• How about: blue / green deployments usingpartitions and elasticity together?

munz & more #51

Page 52: wls12-151028144028-lva1-app6892

Some more Take Aways

• MT best used with FMW Control(separate domain template)– Can you see the trend away from admin console?

– FMW Control works with 'restricted JRF' -> No database needed (unlike OSB, SOA Suite etc.)

• MT requires separate license,WebLogic Suite and EE allow 1 partition

• No thread dumps per partition

munz & more #52

Page 53: wls12-151028144028-lva1-app6892

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

munz & more #53

Page 54: wls12-151028144028-lva1-app6892

Other WebLogic Server Session

Oracle Weblogic Server 12.2.1 Multitenancy: Efficiency, Agility, and Lower Cost [CON8630]

Multitenancy in Java: Innovation in the JDK and Oracle WebLogic Server 12.2.1 [CON8633]

Oracle WebLogic Server: Automated and Simplified Management in a World of Clouds [CON8634]

Oracle WebLogic Server and Docker Containers [CON8629]munz & more #54

Get your OOW2015 slides!

Page 55: wls12-151028144028-lva1-app6892

Tweet and grab the famous sticker!

munz & more #55

Page 56: wls12-151028144028-lva1-app6892

Copyright©2014, Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle’sWebLogicbloghttps://blogs.oracle.com/weblogicserver

Facebookhttps://www.facebook.com/oracleweblogic

Twitterhttps://twitter.com/oracleweblogic

YouTubehttp://www.youtube.com/oracleweblogic

DeveloperWebcastSerieshttp://www.oracle.com/goto/weblogicdevcast

iLearning InteractiveWebLogicServer12.1.3newfeatures:http://goo.gl/ESkvHj

www.munzandmore.com/blog

facebook.com/cloudcomputingbookfacebook.com/weblogicbook

@frankmunz

youtube.com/weblogicbook

-> more than 50 WLS web casts

Page 57: wls12-151028144028-lva1-app6892

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

Page 58: wls12-151028144028-lva1-app6892

OracleConfidential – Internal/Restricted/HighlyRestricted 58