Вы находитесь на странице: 1из 56

1

Oracle WebLogic Server


Oracle WebLogic Server Oracle JRockit Virtual Edition,
Oracle Virtual Assembly Builder
(dmitry.volodin@oracle.com)
, Oracle


Oracle Application Grid
Oracle WebLogic Server Oracle
JRockit Virtual Edition
, JRockit
Virtual Edition, Tips and Tricks
Oracle Virtual Assembly Builder


Oracle Application Grid


Custom
App

Packaged
SOA Svc
App

App Svr
JVM
OS

App Svr
JVM
OS

App Svr
JVM
OS

C/C++/
COBOL

Legacy

TPM

TPM

OS

OS


?

Custom
App
App Svr
JVM
OS

Packaged
SOA Svc
App
App Svr
JVM
OS

App Svr
JVM
OS

C/C++/
COBOL

Legacy

TPM

TPM

OS

OS

:
Application Grid

Custom
App

SOA
Packaged
Services
App

C/C++/
COBOL

Legacy

Application Grid

Application Grid


Application

Application

Application Grid, ?
Oracle Grid
Oracle 10g & 11g RAC

Grid-

Pooling, sharing, and adjusting resources

Grid-

, BEA
JavaEE #1

- Oracle
- Oracle Grid-

Oracle Application Grid


Provisioni
ng

Config
Mgt

Enterprise
Manager
WebLogic
Operations
Control

Tuxedo

WebLogic Server
Coherence

JRockit
Mission
Control
Tuxedo System
Application
Monitor

JRockit Real Time

Policy-based
Hot-pluggable
Pre-emptive

10

Oracle WebLogic Server


Oracle JRockit
Virtual Edition

11

Java-
WebLogic Server JRockit Virtual Edition

Dept App
Java

Java

Dept App
Java

Java

Java

Java

Dept App
Virtualized
Java

Virtualized
Java

Virtualized Virtualized
Java
Java

12

JRockit Virtual Edition....

JRVE

Java

Optimized Java
Execution Stack
(JRockit Virtual Edition)

Application

JRockit JVM
( Linux-)
JRVE

JRockit Virtual Edition

Oracle VM

Bare Metal Hardware

,
JVM

13

JRockit Virtual Edition


?

*nix-
Java

Linux (
)

JRockit JVM Linux
, ,
,

Java Application
JRockit JVM
BareMetal
JRVE
Kernel
Hypervisor
Oracle VM

Local Storage

Physical Machine
Networking



JVM

Remote Storage

14

JRockit Virtual Edition



JRockit VE OS Layer
TCP/IP

File System

Scheduler

H/W

WebLogic Server on
JRockit Virtual Edition
WebLogic Server

JRockit VE

Oracle VM

Bare Metal Hardware

TCP/IP:
Scheduler: ,
File System: ()

HW: :
, ..

15

WebLogic Server JRockit Virtual Edition


Java EE
JRockit Virtual Edition

WebLogic Server
JRockit VE


Java EE

JRockit VE

WebLogic Cluster
Virtualized
Managed
Server

Virtualized
Managed
Server

Virtualized
Managed
Server

JRockit VE

JRockit VE

JRockit VE

Hypervisor
Virtualized Resource Pool

Java EE


16

JRockit Virtual Edition WebLogic



WebLogic
Server

WebLogic Server

10.3.2 GA

10.3.2 GA

10.3.2 GA

2.8 GHz

2.8 GHz

2.8 GHz

Memory

24GB

4GB

6GB

Memory Speed (MHz)

1066

1066

1066

OEL5.4

OVM/JRVE

OVM/OEL5.4 PV

R27.6.2-20

R27.6.3-40

R27.6.2-20

3.6

3.3

3.6

348

300

225

Clock Speed

Operating System
JRockit
Heap (GB)

/.

WebLogic
WebLogic Server
Server
JRockit Virtual
Edition

17

WebLogic Server JRockit


Virtual Edition
JRockit VE
( )

WebLogic
JRockit VE

Linux

1000

3000

10

50,000

100

500

(.)

50

1000

()

18

,
,
JRockit Virtual
Edition,, Tips and Tricks
Edition

19

JRockit Virtual Edition


Java-

Java-

VM
off-line
(, ) VM
SSH ( WebLogic Server)
WebLogic Server on JRockit Virtual Edition Image Tool
mount -o loop=/dev/loop0 ./system.img /media/wlsve_img/

Environment Variables (
WebLogic Server)

20

Image Tool
config.xml

Application
&

imagetool

Data

Virtual
Appliance

jrockitve.bin

Enables appliance assembly and configuration


Enables writing/injecting files to the virtual disk
Supports reverse operations disassemble to physical disk

21

WebLogic Server on JRockit Virtual Edition


Image Tool
java -jar wlsveimagetool.jar -v wlsve\vm.cfg
WebLogic Server on JRockit Virtual Edition Image Tool 1.1.0.0 based on:
Oracle JRockit Virtual Edition Image Tool version: null
Oracle JRockit Virtual Edition configuration version: 5.1
wlsve\vm.cfg:
jrockitve.name=Oracle JRockit Virtual Edition
jrockitve.version=11.1.1.3.1-46-138806
jrockitve.kernel.name=JRockitVE Kernel
jrockitve.kernel.version=6.2.0.0-56-138787
jrockitve.utils.name=JRockitVE Utils
jrockitve.utils.version=3.1-20-137795
jrockitve.jvm.name=Oracle JRockit(R)
jrockitve.jvm.version=R28.1.0-123-138454-1.6.0_20-20101014-1350-linuxia32
Patch history:
Image has never been patched.

22

VM
/
wlsveimagetool
$java -jar wlsveimagetool.jar -r vm.cfg get config wlsve.xml
(ip, dns, netmask, gateway, mac)
VM, , ,
, java-
$java -jar wlsveimagetool.jar -r vm.cfg set config wlsve.xml

wlsveimagetool

java -jar wlsveimagetool.jar -r vm.cfg get java-arguments
java -jar wlsveimagetool.jar -r vm.cfg set locale en_US
America/Denver Cp1252
java -jar wlsveimagetool.jar -r vm.cfg set memory 512M

23

VM
WebLogic VM
//
wlsve.xml
<working-dir>/application/user_projects/domains/domain_name</working-dir>

Java-:

-Dweblogic.Name=adminServerName
-Dweblogic.Domain=domainName
-Dweblogic.management.username=username
-Dweblogic.management.password=password
-Dweblogic.management.GenerateDefaultConfig=true

<working-dir>
<working-dir> wlsve.xml
/
( WebLogic/config.xml)
log- (
WebLogic/config.xml)
(/
config.xml) ( WebLogic/WLST)

24

WebLogic
(P2V Domain Migration)
()
Linux, Windows (?)
WLS 10.3.4 /application
config.sh
( WebLogic, online/offline WLST)
() pack/unpack

//
wlsve.xml :

$java -jar wlsveimagetool.jar -r vm.cfg get config wlsve.xml


<vm-name>,<working-dir>,<virtual-appliance>,
<java-arguments>: classpath, weblogic.Name weblogic.Domain, Java
(tip) setDomainEnv.sh; echo $CLASSPATH; echo $JAVA_OPTIONS
$java -jar wlsveimagetool.jar -r vm.cfg set config wlsve.xml

25

WebLogic
:
,

//
wlsve.xml
$java -jar wlsveimagetool.jar -r vm.cfg set java-arguments
Set CLASSPATH (-cp)
-Dweblogic.management.username=username
-Dweblogic.management.password=password -Dweblogic.Domain=domainName
-Dweblogic.Name=managedServerName
-Dweblogic.management.server=admin.server.ip.address:7001
SERVER_CLASS (= weblogic.Server)
$java -jar wlsveimagetool.jar -r vm.cfg set vm-name
<domainName>_<managedServerName>

26

boot.properties
boot.properties

,
Java- :
-Dweblogic.management.GenerateDefaultConfig=true
-Dweblogic.management.username=<adminuser>
-Dweblogic.management.password=<password>

, boot.properties
VM (

)
username={AES}dsqaWt8TfsrgrxzZ/CJAozAMYUBMMarygYvZQGNhJAI=
password={AES}y5U9CX9c1bWS+cw/9sq1t3y9r27ZpWow/eUdl6kGNCQ=
27

/ SSH
startup- sshd- JRockitVE
WebLogic
wlsve_domain, -
, :
OVM Manager xm shutdown <vm_id>

sshd- wlsveimagetool:
java -jar wlsveimagetool.jar -r vm.cfg enable service sshd
FYI: java -jar wlsveimagetool.jar -r vm.cfg get enabled-services
FYI: java -jar wlsveimagetool.jar -r vm.cfg disable service sshd

:
OVM Manager xm create -c vm.cfg
xm console <vm_id> : INFO: Booting SSH Service on port 22

28

Startup- SSH
Startup- sshd- JRockit VE
WebLogic
com.oracle.weblogic.wlsve.sshstartup_1.0.0.0.jar

, classpath
-, :
/application/wlserver_10.3/server/lib/ext
29

Startup- SSH
Startup-
config.xml :
WebLogic
config.xml:
<startup-class>
<name>ssh-startup</name>
<target>WlsveAdmin</target>
<class-name>weblogic.wlsve.sshserver.SSHStartup</class-name>
<failure-is-fatal>true</failure-is-fatal>
<load-before-app-deployments>true</load-before-app-deployments>
</startup-class>

classpath: /application/wlserver_10.3/server/lib/ext
SSH VM

30

SSH
WebLogic
Startup-
/ WebLogic
WebLogic: Security -> Policies -> SSH
: admin
SSH

31

VMM Node Manager


WebLogic Server
Machines VMM Node
Manager
Virtual Machine OS

Type

VMM (Insecure) VMM (Secure)

Listen Address

VMM Node Manager ( IP)

Listen Port

VMM Node Manager (SSL -SSL)

Adapter Name

OracleVM

Adapter Version

Version 2.2

User

VMM Node Manager

Password

VMM Node Manager

32

WebLogic SmartUpdate
WLS e
wlsveimagetool
java -jar wlsveimagetool.jar -e vm.cfg wls
wlserver_10.3, utils, modules, patch_wls1034
- /application

JAVA_HOME SmartUpdate (bsu.sh)


(/application)
WLS
,
classpath, weblogic_patch.jar,

WebLogic ()

java -jar wlsveimagetool.jar -i vm.cfg wls

2010 Oracle Corporation


Proprietary and Confidential

33

(deploy) WebLogic
Server VM
WebLogic
SSH
WebLogic
NFS
webLogic.Deployer -upload


VM
Java -jar wlsveimagetool.jar f vm.cfg mkdir
/application/user_projects/domains/wlsve_domain/servers/WlsveAdmin/upload

( Admin Server)
weblogic.Deployer upload stage

2010 Oracle Corporation


Proprietary and Confidential

34

Environment Variables
WebLogic Server
Java startup-
com.oracle.weblogic.wlsve.SetEnvironmentStartupClass
package com.oracle.weblogic.wlsve;
import java.lang.reflect.Field;
import java.util.*;
public class SetEnvironmentStartupClass {
...
Class[] classes = Collections.class.getDeclaredClasses();
Map<String, String> env = System.getenv();
for(Class cl : classes) {
if("java.util.Collections$UnmodifiableMap".equals(cl.getName())) {
Field field = cl.getDeclaredField("m");
field.setAccessible(true);
Object obj = field.get(env);
Map<String, String> map = (Map<String, String>) obj;
map.clear();
map.putAll(newenv);
...
}

2010 Oracle Corporation


Proprietary and Confidential

35

Oracle Virtual Assembly Builder

36

True Innovation in Virtualizing Java


Infrastructure
Application Aware Virtualization

Optimized Java Appliance

Oracle Virtual
Assembly Builder

Oracle WebLogic Suite Virtualization Option


=
Oracle WebLogic Server with Oracle JRockit
Virtual Edition

Automated template-based
provisioning

Standardized Java EE
virtualization

Virtual appliances and


assemblies

High performance, high


density Java virtualization

37

Challenges in Configuring and Deploying New


Application into Virtualized Environment

1 to 3 weeks

1-5 days

1-2 days

1-5 days

.5 day

1-2 days

.5 day

38

Application Aware Virtualization


Transform Multi-Tier Application Components
into Collection of Configurable Building Blocks
Reference System
Web

Virtualized
Software
Appliances

Web

Web Tier

Web
Appliance
SOA
Svc

WLS

Assembly

Application
Server
Appliance

WLS

Application
Tier
Metadata

RAC

RAC

Database
Tier

Database
Appliance

39

Oracle Virtual Assembly Builder:


Oracle Virtual Assembly Builder
:



Virtual
Assembly
Builder

40

Oracle Virtual Assembly Builder:


Appliance ()
(
)
Assembly () (appliances),

Late binding ( )

Introspection (a.k.a. dehydration) ()


OVAB
Packaging ()
Template Creation ( )

Registration ()

Deployment () (a.k.a. rehydration)
VM (Appliances)
41



Oracle
SOA
Suite

Oracle
BPM
Suite

Oracle
WebCenter

Oracle
Identity
Mgt

Oracle WebLogic Suite-based Application Grid

Assembly A

Assembly B

Oracle Database

Enterprise Manager
Grid Control

Capture, Assemble
&
Package

Virtualized
Software
Appliances

Oracle VM

Deploy

Oracle VM
Manager

Virtual
Assembly
Builder

42

42

: (Appliances)
Reference
Installation

Appliances
Web
Inputs
Srvr

Outputs

Web Server

INTROSPECTION

Component-Specific
Late Binding Properties
Rehydration Config. Script
Application Deployments,
Libraries, Other Files, etc.

App
App
Component
Srvr
Srvr
Configuration
WSM
AS

App
Srvr
SOA

Component Binaries
App
Srvr
Operating System
BAM

Application Server
Domain

43

: (Assemblies)

Web
Srvr

App
Srvr
AS

App
Srvr
WSM

App
Srvr
SOA

DB
Deployment Plan

App
Srvr
BAM


(Appliances)



(DB, LDAP-,
mail-, web ..)
()


Deployment Plan

44

: Deployment Plans

(Appliances)

Min, Max, Initial
VM
CPU,

JDBC, JMS ..

IP-, ,
..

,


deployment plan


(CLI)

45

3 VMs

2 VMs

2 VMs

Web
Srvr

App
Srvr

Web
Srvr

1 VM
App
Srvr
AS

WSM

App
Srvr
WSM

Oracle VM Server Pool

App
Srvr
SOA

App
Srvr
SOA

App
Srvr
SOA

2 VMs 2 VMs
App
Srvr
BAM

App
Srvr
BAM

VM
Stage

DB

DB

Prepare

Start


VM

Deployment Plan



,

-

46

Oracle Virtual Assembly Builder Studio


Assemblies,
Appliances
Catalog

Properties
Inspector

Deployment
Resource
Pools

Assembly
Editor

47

Virtual Assembly Builder 11.1.1.4.0


Coherence*Web (11gR1 PS3)


WebLogic Server (11gR1 PS1, PS2, PS3)
Oracle HTTP Server (11gR1 PS1, PS2, PS3)
Oracle Web Cache (11gR1 PS1, PS2, PS3)
Oracle Database (10gR2, 11gR1, 11gR2)

(
SSH)




Virtual Assembly Builder Oracle VM
Manager
Oracle Universal Installer
( )

48

49

Oracle: Cloud
Complete

Oracle

IBM

HP

Cisco

MSFT

VMWare

SalesForce
Force.com

3rd Party

3rd Party

(Spring)

3rd Party,
x86

3rd Party,
x86

Virtualization
only, 3rd Party

Oracle

IBM
Microsoft
HP
Cisco
VMWare


Cloud
,
Exadata Exalogic
Cloud Mainframe
Cloud IBM (DB2, WebSphere ..)
Cloud Microsoft / Azure
, Tomcat / Java-

/ VMWare

50


Oracle

IBM

WLS

WebSphere ,

VMware

PaaS
Virtual Assembly Builder
, Oracle VM

VMware

Microsoft Azure


Spring Java-

Virtual Assembly Builder


Oracle VM

Microsoft

Tomcat
Salesforce.com /
VMforce.com

Java-

SaaS PaaS

Spring Java- VMWare

51

Oracle PaaS Hosted by Savvis

Savvis Management Portal


Customer Applications

Savvis Managed Solutions


SavvisStation Portal

SavvisStation

PaaS customer interface


Oracle Virtual Assembly Builder

Assembly Builder
Oracle Middleware
Oracle Database

PaaS solution options


WebLogic Server Enterprise
Edition & Standard Edition
Oracle Database Enterprise
Edition & Standard Edition

Oracle Linux
Oracle VM

IaaS solution options


Oracle Linux
Oracle VM

52

53


JRockit
Virtual Edition

Oracle
WebLogic Server

Oracle
Coherence

( JRockit VE
OVAB)

Virtual
Assembly Builder
(Oracle VM
)

Oracle
HTTP Server

Oracle
Web Cache

Oracle WebCenter
Suite

Oracle
WebLogic Server

Oracle
Coherence*Web

Oracle Identity
Management

Single Instance
Non-RAC Database

Oracle
SOA Suite

Oracle
Coherence


(2011)

54

Virtual Assembly Builder:


Oracle VM 3.0
Exalogic

EM Grid Control
, ,


RAC database, Coherence, SOA,

PaaS Cloud

OVM SPARC (LDOM)


SDK

55

56