Академический Документы
Профессиональный Документы
Культура Документы
IBM WebSphere
Software On
Sun Solaris --
Deep Dive
• IBM publication
• In final editing phase
• About 470 pages documenting
the best practices for
> WebSphere deployment
> Performance management
> Optimization on Sun Solaris
systems
http://redbooks.ibm.com/redpieces/abstracts/sg247584.html
Source: IBM 8
03/12/08 Sun Customer and Partner Use Only
IBM WebSphere Products on Sun Solaris
• IBM licenses and use the Java technology from Sun
> Java SE and Java EE are the foundation for WebSphere
software
• IBM broadens support of WebSphere and other software,
such as DB2, Informix, ECM, etc. products to Solaris 10 x64
• IBM and Sun collaborate efforts to help resolve customer
escalations (e.g. via IBM's PMR process)
> WebSphere support in Sun virtualization technologies
> WebSphere Portal Server v5.x installation resolution
> WebSphere Application Server v6.1 with 64-bit JVM
> WebSphere Customer Center v6.5 with WAS v6.0.2 on
Solaris 10
http://www.sun.com/servers/coolthreads
Sun Fire
x64 Servers Sun Fire Sun Fire Sun Fire Sun Fire Sun Fire Sun Fire Sun Blade 8000 Sun Grid Rack
X2100 X4100 X4200 X4500 V40z X4600 Systems
Sun Fire
CoolThreadsTM Sun SPARC
Servers Enterprise
Servers M4000 M5000
Sun Fire T2000 Sun Fire T5220 M8000 M9000
Sun Fire
UltraSPARC
IV+ Servers
Sun Fire V490 Sun Fire V890 Sun Fire E2900 Sun Fire E4900 Sun Fire E6900 Sun Fire E20K/E25K
Sun Fire
UltraSPARC
IIIi Servers
Sun Fire V125/V215 Sun Fire V245 Sun Fire V445
Guaranteed Binary
Compatibility
for 7 Years....
Solaris 2.6 to Solaris 10
03/12/08 Sun Customer and Partner Use Only 24
ISV Community Adopts Solaris 10
Domain 2
Domain 1
Domain 2
M8000 SF20K
M9000 SF25K
• Reduce Hardware
> Two smaller systems can be combined into a larger, flexibly-
sized domain, reducing hardware, OS, and mgmt costs
> A system with a first-shift load can be combined with a
second-shift system to reduce total resources needed,
including floor space and reduce hardware support costs
• Maintain Service Levels
> Service levels will increase through improved hardware
redundancy
• Maintain Architectural Flexibility
> Flexibility will increase by using the dynamic features of DSD
OS
Control
Domain
Ultra Server
lightweight
Hypervisor in
the firmware
03/12/08 Sun Customer and Partner Use Only 31
Logical Domains (LDoms)
• Server Virtualization: Supported on UltraSPARC T1, T2
based systems and future CMT systems
> Sun Fire T5220, T5210, T1000, T2000, etc.
• Up to 64 LDoms per server
> CPU thread individually assignable to different Ldoms
> Partitioning of a physical system into multiple virtual
machines
• Each virtual machine should appear as an entirely
independent machine
> own OS instance, patches, tuning parameters
> own user accounts, administrators
> own disks, network interfaces, MAC & IP addresses
03/12/08 Sun Customer and Partner Use Only 32
Logical Domains (LDoms)
• Control/Service Domain and Guest Domains
> Control Domain hardening
• Each guest domain can be configured, started and
stopped independently
> Without requiring a power-cycle of machine
• Ability to dynamically add and remove vCPUs while
OS is running
• Many benefits
> Greatly increased utilization
> More flexibility in services deployment in data center
Legend
-- Global Zone (the system)
-- Zone 1
-- Zone 2
-- Zone 3
03/12/08 Sun Customer and Partner Use Only 36
Zones
http://www.ibm.com/support/docview.wss?uid=swg21242532
03/12/08 Sun Customer and Partner Use Only 45
Selecting the right Virtualization for your
business needs
Keeping Competitive edge
• Improve efficiency
• Better Manageability
• Reduce operating costs
• Increase ROI
• Faster time to market
• Enable aggressive growth
Built-in common
feature
in Solaris 10
Consolidation
• Increased utilization
• Reduced servers
• Improved footprints
• Less power/cooling
• More agile
environment
• Agility
• Agility
# zonecfg -z app-zone1
app-zone1: No such zone configured
Use 'create' to begin configuring a new zone.
zonecfg:app-zone1> create
zonecfg:app-zone1> set zonepath=/export/app-zone1
zonecfg:app-zone1> set autoboot=true
zonecfg:app-zone1> set pool=pool_app_zone1
zonecfg:app-zone1> add net
zonecfg:app-zone1:net> set physical=e1000g1
zonecfg:app-zone1:net> set address=129.110.14.21
zonecfg:app-zone1:net> end
......
zonecfg:app-zone1> verify
zonecfg:app-zone1> commit
zonecfg:app-zone1> exit
zonecfg:app-zone1>add dedicated-cpu
zonecfg:app-zone1:dedicated-cpu>set ncpus=2
zonecfg:app-zone1:dedicated-cpu>set importance=2
zonecfg:app-zone1:dedicated-cpu>end
http://www.spec.org/jAppServer2004/results/res2006q3
03/12/08 Sun Customer and Partner Use Only 72
IBM Software Licensing
Sub-capacity licensing
• Supported Processor
Technologies
• Supported Virtualization
Technologies
http://www-306.ibm.com/software/lotus/passportadvantage/subcaplicensing.html
WebSphere Product Update and New Licensing
03/12/08 Sun Customer and Partner Use Only 75
IBM WebSphere Licensing for Sun Servers
# of # of WAS
# of Cores/ JOPS/ JOPS/ PVU/ PVU/ Expected PVU
Description CPU Info WAS JOPS Servers License
Servers Server Server Node Core Server JOPS Required
Nodes Required Cost
Sun T5220 WAS 1x Sun US-T1
6.1 32-bit 1.2GHz 8 Cores
1 2 8 1232 1232 616 50 400 2000 2 800 $120,000
IBM xSeries
Intel Xeon 2x
Blade Center
3.6GHz 1 Core
20 20 2 4386 219 219 50 100 2000 10 1000 $150,000
WAS 6.1 64-bit
IBM p570 WAS IBM 2x p6
6.1 32-bit 4.7GHz 2 cores
1 2 4 1197 1197 599 100 400 2000 2 800 $120,000
IBM p595
BladeCenter IBM 2x p6
JS22 WAS 6.1 4.7GHz 2 cores
26 26 4 14004 539 539 100 400 2000 4 1600 $240,000
64-bit
http://redbooks.ibm.com/redpieces/abstracts/sg247584.html
Source: IBM
Sun Customer and Partner Use Only 81
Background
Blackbox View
Source: IBM
Sun Customer and Partner Use Only 82
Background
Sub-system View
Source: IBM
Sun Customer and Partner Use Only 83
The Redbook
Very comprehensive material as result of joint
Sun/IBM Team work
> Detailed deployment topologies
> Tools/Techniques described with samples
> Performance Management explained in detail
> 407 pages
> Available at:
http://redbooks.ibm.com/redpieces/abstracts/sg247584.html
Source: IBM
Sun Customer and Partner Use Only 99
Deployment Considerations
• Standard vs Virtualized Configurations
> Sun Virtualization Technologies
• Resource Control
• Solaris Schedulers (e.g. FSS, FX)
• Understanding of the underlying H/W architecture
> CPU (SPARC, Intel/AMD, CMT)
> Network devices
http://java.sun.com/j2se/reference/whitepapers/memorymanagement_whitepaper.pdf
Sun Customer and Partner Use Only 115
Performance Tuning – JVM
Choosing a Collector for Young and Old (Tenured) Generations
• Use the Serial Copying Collector (Default) for co-locating
multiple instances of WAS (JVM's) on multi-CPU servers
• Use the Parallel or Throughput Collector for better
performance on multi-CPU servers (e.g. T2000)
> -XX:+UseParallelGC
> Set proper number of threads (-XX:ParallelGCThreads=16)
• Use the Concurrent Low Pause Collector for constant
response time on multi-CPU servers
> -XX:+UseConcMarkSweepGC
• Use the Incremental Low Pause Collector for constant
response time on servers that have few processors
> -XX:+UseTrainGC (* will be obsoleted in Java SE 6)
Sun Customer and Partner Use Only 116
http://java.sun.com/docs/hotspot/VMOptions.html
• Other Tools
> http://java.sun.com/tools
> Wily Introscope
> Quest PerformaSure
> tuneWAS.jacl (ibm.com)
Sun Customer and Partner Use Only 121
Performance Tuning – Tools
[DTrace]
• Solaris Tuning
> http://developers.sun.com/solaris/articles/tuning_solaris.html
Albert.Leigh@Sun.COM
Dileep.Kumar@Sun.COM
Performance Tuning – Tools
[vmstat]
• Reports virtual memory statistics regarding kernel
thread, virtual memory, disk, interrupts, and CPU
activity (e.g. vmstat 5 10)
• On multi-processor (MP) systems, vmstat averages
the number of CPUs into the output
• This command can used to get a the monitoring data
about:
> Kernel Threads
> Memory
> Paging
> CPU Utilization
Performance Tuning – Tools
[vmstat]
kthr memory page disk faults cpu
r b w swap free re mf pi po fr de sr s0 s2 s4 -- in sy cs us sy id
46 0 0 23158808 8700152 0 5 0 10 10 0 0 0 5 0 0 9750 66324 22325 62 19 18
46 0 0 23154296 8682592 0 6 0 12 12 0 0 0 4 0 0 8855 66115 21963 63 19 18
28 0 0 23146520 8653920 0 13 0 3 3 0 0 0 2 0 0 8519 64506 20813 63 19 18
53 0 0 23143616 8636272 0 7 0 3 3 0 0 0 3 0 0 8987 65462 21436 62 19 19
47 0 0 23139520 8616152 0 12 0 3 3 0 0 0 3 0 0 7747 66572 20841 65 19 16
38 0 0 23123136 8583000 0 5 0 9 9 0 0 0 4 0 0 7436 65995 21025 64 19 17
40 0 0 23119856 8564560 0 9 0 3 3 0 0 0 3 0 0 8624 66608 22553 64 19 17
Performance Tuning – Tools
[mpstat]
• Reports processor the activity statistics of processors
where each row represents a processor (e.g. mpstat 5 10)
• The first table summarizes all activity since boot and
each subsequent table summarizes activity for the
preceding interval
• All values are rates listed as events per second unless
otherwise noted
Performance Tuning – Tools
CPU minf mjf xcal intr ithr csw icsw migr smtx srw syscl usr sys wt idl
[mpstat]
0
1
1 0 944 458 180 1472 54 323 683
1 0 82 216 0 1389 55 304 784
0 5062 69 17 0 14
0 5172 67 17 0 16
2 1 0 78 223 0 1460 60 302 722 0 4864 68 15 0 17
3 0 0 65 182 0 1394 50 283 641 0 5089 68 14 0 18
8 1 0 60 239 2 1549 64 317 717 0 5319 69 16 0 16
9 1 0 68 183 2 1767 53 293 656 0 5256 69 14 0 17
10 1 0 54 200 0 1558 55 297 691 0 5345 69 15 0 17
11 1 0 74 172 0 1390 53 270 657 0 5314 67 14 0 18
16 1 0 57 232 1 1507 63 303 723 0 5549 69 15 0 16
17 1 0 67 181 0 1565 53 279 683 0 5109 68 15 0 17
18 1 0 85 190 0 1507 51 286 643 0 4847 69 14 0 17
19 1 0 57 171 0 1346 53 267 643 0 4799 67 14 0 19
24 1 0 89 189 0 1445 51 295 565 0 4934 71 12 0 17
25 4 0 58 164 0 1379 48 281 588 0 5066 70 12 0 18
26 1 0 71 145 0 1159 48 254 457 0 4372 70 14 0 16
27 0 0 1576 4874 4840 335 91 34 2260 0 385 7 93 0 0
Performance Tuning – Tools
[intrstat]
• Reports the interrupt distribution over the CPU cores
• The output is a table of device names and CPU IDs, where
each row of the table denotes a device, and each column
of the table denotes a CPU
• Each cell in the table contains both the raw number of
interrupts for the given device on the given CPU, and the
percentage of absolute time spent in that device's
interrupt handler on that CPU.
Performance Tuning – Tools
[iostat]
Performance Tuning – Tools
[netstat]
Performance Tuning – Tools
[corestat]
Performance Tuning – Tools
[plockstat]
Performance Tuning – Tools
device | cpu16 %tim cpu17 %tim cpu18 %tim
-------------+------------------------------------------------------------
cpu19 %tim
[intrstat]
e1000g#0 | 0 0.0 0 0.0 0 0.0 0 0.0
e1000g#1 | 0 0.0 0 0.0 0 0.0 0 0.0
e1000g#2 | 0 0.0 0 0.0 0 0.0 0 0.0
mpt#0 | 0 0.0 0 0.0 0 0.0 0 0.0
device | cpu24 %tim cpu25 %tim cpu26 %tim cpu27 %tim
-------------+------------------------------------------------------------
e1000g#0 | 0 0.0 0 0.0 0 0.0 1726 88.7
e1000g#1 | 0 0.0 0 0.0 0 0.0 0 0.0
e1000g#2 | 0 0.0 0 0.0 0 0.0 0 0.0
mpt#0 | 0 0.0 0 0.0 0 0.0 0 0.0
device | cpu0 %tim cpu1 %tim cpu2 %tim cpu3 %tim
-------------+------------------------------------------------------------
e1000g#0 | 0 0.0 0 0.0 0 0.0 0 0.0
e1000g#1 | 0 0.0 0 0.0 0 0.0 0 0.0
e1000g#2 | 0 0.0 0 0.0 0 0.0 0 0.0
mpt#0 | 1 0.0 0 0.0 0 0.0 0 0.0
Performance Tuning – Tools
[DTrace]