Überblick und aktuelle Entwicklungen · Sun investiert in Open Source Rank Company Person-months 1...

Post on 30-Mar-2020

1 views 0 download

transcript

OpenSolarisÜberblick und aktuelle Entwicklungen

Franz HaberhauerTechnischer Direktor & Chief TechnologistGlobal Systems EngineeringSun Microsystems GmbH

Agenda

• Sun und Open Source• Solaris und OpenSolaris• Technologien in OpenSolaris

> DTrace, Crossbow, xVM, ZFS> OpenSolaris Developer Preview

“Indiana”

gegründet auf Open Source

Sun Microsystems

Software Storage

SystemsServices

Microelectronics

Network.comSPARC 64

Open Systems forOpen Minds

Sun Tagline1984

The Word "Open"http://blogs.sun.com/roller/page/jonathan/20040808#rewriting_history_and_vocabulary

Sun und Open Source

“When you boot GNU/Linux, by the time the cursor has appeared, you've probably executed more code that has been touched by Sun than by anybody else.” Simon Phipps

Chief Open Source OfficerSun Microsystems

Sun investiert in Open SourceRank Company Person-months

1 Sun Microsystems Inc 51.372 312 m

2 IBM Corp 14.865 90 m

3 Red Hat Corp 9.748 59 m

4 Silicon Graphics Corp 7.736 47 m

5 SAP AG 7.493 46 m

6 MySQL AB 5.747 35 m

7 Netscape Communications Corp 5.249 32 m

8 Ximian Inc 4.985 30 m

9 RealNetworks Inc 4.412 27 m

10 AT&T 4.286 26 m

Cost(EUR)

Estimated cumulative substitution cost contribution in Debian, by 2006Study for the European Commission Economic Impact of FLOSS on Innovation and Competitiveness of the EU ICT Sectorhttp://ec.europa.eu/enterprise/ict/policy/doc/2006-11-20-flossimpact.pdf November 2006

1980 1990 2000 2006

NFS

JiniUNIX SVR4 XML

Sun 1 withTCP/IP

Sun treibt Communities

Motivation für OpenSourceAttraktives Entwicklungsmodell

Konzentration auf Kerntechnologien,schnelle Entwicklungsprozesse,

Qualitätssicherung durch breite Nutzerbasis

Software als GemeingutFreie Software

Free as in “Freedom” not as in “Free Beer”

Für Anwenderattraktive Kostenstruktur

Lizenzkostenfreie SoftwareKommerzieller und Community Support

Das Geschäftsmodell von Sun

Driving Demand

We Drive Participation

To Drive RevenueOn the Network

Geschäftsmodelle und Open Source

Awareness Evaluate Develop Production SustainObtain Deploy

Einfacher,kostenfreier

ZugangSubskriptionen,Dienstleistungen

Developers don't buy things, they “join” things

Jonathan Schwartz

Einnahmen ausInvestitionen

Neue Märkte

Effekte durch Open Source SoftwareDrive volume Share

Disrupt locked marketsAddress growth markets

Solaris Meilensteine• SunOS 1.0 (1982)

> BSD 4.1 Port für Motorola 68000-basierte Sun-Systeme> “The Network is the Computer”

• SunOS 4.1 (1990)> Asymetrisches Multiprocessing: Server mit bis zu 4 CPUs

• Solaris 2.0 (1992)> SVR4> Symmetrisches Multiprocessing: 2.4 bis 20 SPARC-CPUs (1994), 2.5.1 bis 64 CPUs (1995)

• Sun erwirbt von Novell eigenständige Lizenzrechte an UNIX (1993)

• Solaris 2.1 x86 (1993)> Solaris für die Intel i386-Architektur

• Solaris 2.5 (1995)> Common Desktop Environment (CDE) – COSE (1993)

• Solaris 7 (1998)> 64-Bit Adressraum für Kernel und Benutzer-Prozesse

• Solaris 10 (2005)> Zahlreiche bahnbrechende Innovationen: JDS/GNOME, Performance, DTrace, SMF, Container, ZFS, ...

• OpenSolaris (2005)

Sun Blade 6000 Modular System

Sun Enterprise 10000 “E10k”

Sun Fire X4150

Solaris 10: Eine Erfolgs-StoryÜber 4 Mio. Lizenzen nach einem Jahr, über 7 Mio nach zwei!

x64 / x86

10+M 10

9

8

7

6

5

4

3

2

1

02005 2006 2007

Millionen

9

Solaris Source Code Common Development & Distribution License

allgemein zugänglich seit 14.06.05www.opensolaris.org

Entwicklung in GoldfischglassDer Weg neuer Features ins Solaris

Source-Code der aktuellenEntwicklungsversion

Entwicklungsversion als Binär-Distribution zum Download

Download oder MediakitSolaris und weitere Software

Produktversion (Solaris 10)

alle 14 Tage

alle 3 Monate

alle 6-9 Monate

Solaris Express, Community Release

stabilisierte Builds” mit Dokumentation (AnswerBook)integrierte Installation von Sun Studio und NetBeans

Solaris Express, Developer Edition

BFU

Elemente eines OSS-Projektes

ermöglicht Beteiligung

fördert Unabhängigkeit und Beiträge

Community Participation

gewährt Rechte Lizenz Infrastruktur

GovernanceOpenSolaris Community Advisory BoardJava Community Process

Tool Chain:Mercurial für DSCM(Subversion für SCM)Sun Studio oder gccopensolaris.org/os/community/tools

CDDL

Source at the Center

Products, Ports, Distributions

Nevada Source Repository

Sun's Supported Solaris Products & Updates

SXDE, SXCE, IndianaZFS ports to BSD, FUSE/Linux, Mac OS.DTrace ports: BSD, Mac OS

BeleniX

marTux Distribution

€0

Solaris

Innovation im BetriebssystemSolaris 10

Predictive Self Healing

Fault Manager

Service Manager

ExtremePerformance

Schneller TCP/IP Stack

Out of the Box Performance

Vielzahl von Optimierungen

SolarisContainer

SoftwarePartitioning

Resource Management+

Zonen

DynamicTracing

Live Monitoringvon produktiven

Systemen

IntegrierteSicherheit

ZonenProzess-Privilegien Crypto-FrameworkZertifiziert nach CC

EAL4+ CAPP, RBACPPTrusted Extensions

fürMandatory Access

Control (LSPP)

und vieles mehr (über 600 Projekte)... Solaris Container for Linux Applications... ZFS - mehr als ein neues innovativesDateisystem

DTrace in Aktionin Produktionsumgebungen

Source: Sun Microsystems, Inc.

+32%Vor dem

Mittagessen

FinancialDatabase

+35%an einem

Nachmittag

Online ParcelTrackingSystem

+80%in einem Tag

FuturesForecastingApplication

+267%in 2 Tagen

+300%in 5 Stunden

MessageHanding

Benchmark

DataRouting

Application

DTrace - Technologie

dtrace(1M)

lockstat(1M)

plockstat(1M)

libdtrace(3LIB)dtrace(7D)

DTrace

Userland

Kernel

DTraceConsumer

sysinfo vminfo mibsdtsyscall fbtlockstat

DTraceProvider ...

a.d b.d

...

D Programs

# dtrace -n 'syscall::write:entry/execname == "iotest"/{@ = quantize(arg2)}' value ------------- Distribution ------------- count 0 | 0 1 |@ 48 2 | 1 4 |@ 26 8 |@ 43 16 |@@@ 115 32 |@@ 82 64 | 13 128 | 7 256 |@@ 73 512 | 5 1024 | 16 2048 | 7 4096 | 0 8192 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1280 16384 | 0

# dtrace -n 'syscall::write:entry{@counts[execname] = count()}'

DTrace Tools• /usr/demo/dtrace• OpenSolaris Community: DTrace (DTrace Scripts, DTrace Toolkit, DExplorer)

> http://opensolaris.org/os/community/dtrace/ • Sammlung nützlicher Skripte und Einzeiler

http://www.BrendanGregg.com/dtrace.html

# dappprof -ceoT banner hello # # ###### # # #### # # # # # # # ###### ##### # # # # # # # # # # # # # # # # # # # # ###### ###### ###### #### CALL COUNT__fsr 1main 1banprt 1banner 1banset 1convert 5banfil 5TOTAL: 15 CALL ELAPSEDbanset 38733banfil 150280convert 152113banner 907212__fsr 1695068banprt 1887674TOTAL: 4831080 CALL CPUbanset 7710convert 9566banfil 11931__fsr 15199banner 52685banprt 776429TOTAL: 873520

dappprof profiles user and library function usage

Plot of iosnoop outputiosnoop traced output from tar -cvf /dev/null /var

Besserer Service dank DTracehttp://joyeur.com/2007/04/24/solaris-dtrace-and-rails

“We use DTrace all the time in identifying performance issues in our customer's and in our own applications”“The result was a ticket filed at dev.rubyonrails.org 16 hours ago, and David committed the changes to Rails itself 5 hours ago. Everyone benefits from something pointed to by DTrace on Solaris.”Jason Hofmann, CTO Joyent

Solaris, DTrace and Rails

- Instrumentierung von Java SE 6 mit DTrace-Provider - Java SE 5 über Bibliotheken)- Instrumentierung von PostgreSQL in Solaris 10 11/06

Project D-Light in Sun Studio Express

http://blogs.sun.com/solarisdev/entry/project_d_light_tutorial

NetBeansOpen Source Java IDE

Sun Java Studio CreatorSchnelle, visuelle Entwicklung

von Web-Applikationen und Portletsunter Nutzung von

JavaServer Faces Komponentenbasiert auf NetBeans

Weiterentwicklung in NetBeans 6.0

Für C/C++/Fortran Entwickler:Sun Studio

Umfassende Entwicklungsumgebungfür Solaris (und Linux)

mit SPARC- and x86/x64-Compilernmit führender Performance

Entwicklungswerkzeuge

SPECFP

SPECINT

0 0,25 0,5 0,75 1 1,25

Sun Studio 11 vs. Sun Studio 12 (x86/x64)

Sun Studio 11Sun Studio 12

SPECFP

SPECINT

0 0,25 0,5 0,75 1 1,25

GCC 4.1 vs. Sun Studio 12 (x86/x64)

GCC 4.1Sun Studio 12

SPECFP

SPECINT

0 0,25 0,5 0,75 1 1,25 1,5 1,75 2

GCC 4.1 vs. Sun Studio 12 (SPARC)

GCC 4.1Sun Studio 12

SPECFP

SPECINT

0 0,25 0,5 0,75 1 1,25

Sun Studio 11 vs. Sun Studio 12 (SPARC)Throughput Measurement

Sun Studio 11Sun Studio 12

27%

21 %

38 %

93 %

16 %

15 %

13 %

18 %

Performance: Sun Studio 12 vs. 11 und GCC

TCP/IP mit TurboladerFeinschliff für den TCP-Stack

• Signifikant reduzierter CPU-Bedarf> 1 GBE voll gesättigt mit 8% einer 2.2GHz Opteron CPU

• Skalierung über Zahl der NICs• Unterstützung von 10GBE, TCP-Offload-Engines

http://www.sun.com/bigadmin/content/networkperf/

High B/W NIC(s)/Trunk(Network Resources)

1Gb/10Gb NIC

1Gb/10GbNIC

1Gb/10Gb NIC .. .

VirtualNetworkContainer

VirtualNetwork

Container

VirtualNetwork

Container

VirtualNetwork

Container

VirtualNetwork

Container . . .

Virtual NIC(Guaranteed B/W)

VirtualNetworkStack

Virtual Squeues

SolarisContainers

CrossbowNetzwerk Virtualisierung und Ressourcenverwaltung

ComputeResources

Virtualisierung mit Solaris

Server

OS

App

PhysikalischeVirtualisierung(System Domains/PhysikalischePartitionen)

LogischeVirtualisierungmit virtuellenMaschinen(Solaris xVM, VMware)

OSVirtualisierung(Solaris Container,Solaris TrustedExtensions,Solaris Container for Linux Applications)

RessourceManagement(Solaris Resource Manager)

HW-Fehler Abgrenzung

Separate OS mitdediziertem Speicher

Isolierte Ausführungsumgebungmit separiertem Speicher

Gemeinsames OS mitgemeinsamem Speicher

Gemeinsame Ausführungsumgebung

Virtualisierung mit Solaris

• Mehrere OS-Instanzen> Administrations-Aufwand unverändert> Lizenzkosten pro Instanz?

• Keine konzeptionelle Änderung in der Administration

Hardware-Partitionierung Virtuelle Maschinen Virtuelle Umgebungen Resource-Management

System Domains Solaris Container(Zonen + SRM)

Solaris ResourceManager (SRM)

VMware, LDomSolaris xVM Server

Mehr Flexibilität

Hardware-Konsolidierung OS-Konsolidierung

• Nur eine OS-Instanz> Weniger zu verwaltende Instanzen

• Beste Effizienz• Neue administrative Konzepte

Stärkere Separierung

Server

OS

App

Der Schnittpunkt zwischenVirtualisierung und Management

Sun xVM

Xen 3.x Architecture

Event Channel Virtual MMUVirtual CPU Control IF

Hardware (SMP, MMU, physical memory, Ethernet, SCSI/IDE)

NativeDeviceDriver

GuestOS(Solaris)

Device Manager & Control s/w

VM0

NativeDeviceDriver

GuestOS(XenLinux)

UnmodifiedUser

Software

VM1

Front-EndDevice Drivers

GuestOS(Solaris)

UnmodifiedUser

Software

VM2

Front-EndDevice Drivers

UnmodifiedGuestOS(WinXP))

UnmodifiedUser

Software

VM3

Safe HW IF

Xen Virtual Machine Monitor

Back-End Back-EndHVM aufIntel VTAMD-V

32/64bit

AGPACPIPCI

SMP

dom0 domU1 domU2 domU3SMF Servicesxctl/storexctl/xendxctl/consolexctl/domains

CLI xm

Die Xen Community• Sun engagiert sich in der

Xen Community• xVM Server enthält Code,

der von der Xen Community abgeleitet ist

• Sun Microsystems ist der Gastgeber des nächsten Xen Community Meeting 14-16.11. 2007 in Santa Clara

Sun xVM Infrastructure

> Die Lösung für Virtualisierung und Management im Rechenzentrum

Sun xVM Infrastructure

Sun xVM Server(Hypervisor Family)

xVM Ops Center(Management)

Sun xVM Server• Windows, Linux und Solaris

als Gastbetriebssysteme• Basiert auf

> Arbeiten der Xen Community

> LDOM• Durch Technologien in Solaris

> hochskalierbar> erlaubt es, Funktionalitäten

in Solaris für nicht-Solaris Gäste zu nutzen– ZFS– FMA

ZFS – mehr als ein DateisystemTraditionelle Architektur• Abstraktion: Virtuelle Platte• Partition/Volume pro Filesystem• Fragmentierte Kapazität und

Bandbreite• Manuelles Erweitern/Schrumpfen

ZFS Pooled Storage• Abstraktion: malloc/free• Keine Partitionen zu verwalten• Flexible Zuteilung der

Gesamtkapazität durch Quoten und Reservierungen

• Integrierte Fehlerbehandlung über Abstraktionsebenen hinweg

• Snapshots, Clones, Kompression

Storage PoolVolume

FS

Volume

FS

Volume

FS ZFS ZFS ZFS

OpenSolaris als Speicherplattform

http://blogs.sun.com/bobp/entry/fish_n_cifshttp://www.opensolaris.org/os/project/cifs-server

X4500“Thumper”

Solaris – Sun und Intel

12. Januar 2007:OEM-Abkommen für Solaris mit Intel im Rahmen einer breit angelegten strategischen Allianz

Zusammenarbeit Sun & Intel• Xeon® Processor available in

Sun systems

• Intel and Sun optimize and tune Solaris for Xeon

• Advancements in power, virtualization, and performance

• A significant opportunity for the IHV community

Areas of DevelopmentIntegrated into Solaris

• Performance Enhancement• CPU Performance Counters• Power Management• Driver Support• I/O Acceleration Technology• Virtualization• Predictive Self-Healing• Compiler Optimization• Java Acceleration

http://opensolaris.org/os/project/intel-platform

Hardware-Plattformen für Solaris auf x86• Über 900 unterstützte Plattformen

> http://www.sun.com/bigadmin/hcl/data/sol/> Solaris auf HP ProLiant

– http://h18004.www1.hp.com/products/servers/software/solaris/index.html> Solaris für IBM x-Server

– 16. August 2007: IBM wird das Solaris Betriebssystem und Solaris Subskriptionen für x86-basierte IBM System x Server und IBM BladeCenter distributieren.

“Solaris is a better Linux than Linux.”

Marc Andreessen

Tim O'Reilly: Anatomie of a Linux System

© 2001 Tim O'Reilly, used with permission.

Charting the Linux Anatomy: O'Reilly Describes the Linux Anatomy in a Unique Posterhttp://linux.oreilly.com/news/linuxanatomy_0101.html

X Window System

Hardware

GNOME

Solaris und GNU/Linux

GNU utilitiesSystem libraries

Linux kernelPOSIX+ extensions

Mozilla Firefox, Mozilla Thunderbird, OpenOffice.org, ...

UNIX utilitiesPOSIX

Solaris kernel

Das Konzept der Linux-Distributionen

Binary Distributions

Multiple● dependencies● certifications● packaging

Integratablecomponents

BinaryApplications

Different, incompatibleplatforms

UbuntuFeisty Faun

7.04

Linux2.6.20

GCC4.1.2

Red HatEnterprise

Linux 5

Linux2.6.18

GCC4.1.1

Suse LinuxEnterprise

10

Linux2.6.16.21

GCC4.1.0

KubuntuFeisty Faun

7.04

Linux2.6.20

GCC4.1.2

KDE3.5.7

Der Monolith und die Wolke

Integrated operating systemwith finite packages

Multiple configurable platforms with expanding ecosystem

DTrace ZFS

Zones SMF

Das Beste aus beiden Welten

Binary compatible core platformwith expanding ecosystem

OpenSolaris Developer PreviewProjekt “Indiana”• Installation von einer einzigen Live CD• Kern-Betriebssystem

> Kernel, Systembibliotheken, Hilfsprogramme• Netzwerk-basierte Paketverwaltung

> Repositories für integrierbare Pakete • Vertraute Desktop-Umgebung

> GNU-Utilities, “Standard”-Pfade• ZFS as Standard-Dateisystem

> zunächst auf x86 / x64, später auch auf SPARC

Easier To AcquireRedistributable CD

6 CDs

Solaris Express Indiana

Single CD

Sun Download Center Fully Redistributable

Mirror SitesSun Download Center

.org

Easier To MaintainImage Packaging System

Easier to manage for the user Easier to package for the developer More frequent fixes Upgrade and rollback with ZFS snapshots

UpgradableFrozenIncorporatedExcluded

Release Model: IndianaQuarterly updates:bug fixes, hardware updatesLong term support cycle

Next version of Solaris, derived from an OpenSolaris release(timing TBD)

6 month releases:18-month support cycle

Duales Release-KonzeptEine Solaris Plattform, zwei Distributions-Mechanismen

• Unternehmen,geschäftskritische Anwendungen

• Unübertroffene Unterstützung> 10 Jahre und mehr

• Lange Release-Zyklen (3-5 Jahre mit viertel-jährlichen Updates)

• Entwickler, Early Adopter

• Neueste Innovationen• Kurze Release-Zyklen

(halbjährlich)

€0Stabilität und Innovation

Veranstaltungen

Sun Tech Days3.-5. Dezember 2007Frankfurt, Congress Center

http://de.sun.com/sunnews/events/2007/20071203

Literatur• opensolaris.org• sun.com/solaris

> Get It– Solaris 10– Solaris Express Developer Edition

• developers.sun.com> For Solaris Developers

• docs.sun.com> Dokumentation

• Asterix auf Solaris> www.solarisvoip.com

OpenSolarisÜberblick und aktuelle EntwicklungenFranz.Haberhauer@Sun.comblogs.sun.com/FranzHaberhauerblogs.sun.com/Solarium