Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen...

42
Microsoft Architects Forum Softwareentwurf Softwareentwurf unter unter Berücksichtigung Berücksichtigung betrieblicher betrieblicher Aspekte Aspekte Jürgen Pfeifer < Jürgen Pfeifer <[email protected] > Architekturberater Architekturberater Developer Platform & Strategy Group Developer Platform & Strategy Group Microsoft Deutschland GmbH Microsoft Deutschland GmbH

Transcript of Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen...

Page 1: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum

Softwareentwurf unterSoftwareentwurf unterBerücksichtigung Berücksichtigung

betrieblicher Aspektebetrieblicher Aspekte

Jürgen Pfeifer <Jürgen Pfeifer <[email protected]>>ArchitekturberaterArchitekturberaterDeveloper Platform & Strategy GroupDeveloper Platform & Strategy GroupMicrosoft Deutschland GmbHMicrosoft Deutschland GmbH

Page 2: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum2

AgendaAgenda

Worüber reden wir?Worüber reden wir? Roadmap zum „Model-Based Roadmap zum „Model-Based

Management“Management“ Was kann man heute schon tun?Was kann man heute schon tun? FazitFazit

Page 3: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum3

Planung &Planung &EntwurfEntwurf

Planung &Planung &EntwurfEntwurf

EntwicklungEntwicklungEntwicklungEntwicklung TestTestTestTest DeploymentDeploymentDeploymentDeployment BetriebBetriebBetriebBetrieb

BetriebBetriebEntwicklungEntwicklung

Der Betrieb kennt die Der Betrieb kennt die Anforderungen der Anforderungen der Anwen-dung nicht Anwen-dung nicht hinreichendhinreichend

Der Betrieb kennt die Der Betrieb kennt die Anforderungen der Anforderungen der Anwen-dung nicht Anwen-dung nicht hinreichendhinreichend

Entwickler Entwickler verstehen die verstehen die Regeln des Betriebs Regeln des Betriebs nicht hinreichendnicht hinreichend

Entwickler Entwickler verstehen die verstehen die Regeln des Betriebs Regeln des Betriebs nicht hinreichendnicht hinreichend

Andauernde Herausforderungen im IT Andauernde Herausforderungen im IT LebenszyklusLebenszyklus

Andauernde Herausforderungen im IT Andauernde Herausforderungen im IT LebenszyklusLebenszyklus

Zunehmende Zunehmende Kommunikation und Kommunikation und

AufmerksamkeitAufmerksamkeit(Heute)(Heute)

Page 4: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum4

System System DefinitionDefinition

ModelModel(Future)(Future)

EntwicklungEntwicklung BetriebBetrieb

Andauernde Herausforderungen im IT Andauernde Herausforderungen im IT LebenszyklusLebenszyklus

Andauernde Herausforderungen im IT Andauernde Herausforderungen im IT LebenszyklusLebenszyklus

Entwickler Entwickler verstehen die verstehen die Regeln des Betriebs Regeln des Betriebs nicht hinreichendnicht hinreichend

Entwickler Entwickler verstehen die verstehen die Regeln des Betriebs Regeln des Betriebs nicht hinreichendnicht hinreichend

Der Betrieb kennt die Der Betrieb kennt die Anforderungen der Anforderungen der Anwen-dung nicht Anwen-dung nicht hinreichendhinreichend

Der Betrieb kennt die Der Betrieb kennt die Anforderungen der Anforderungen der Anwen-dung nicht Anwen-dung nicht hinreichendhinreichendVerteilte Systeme

Planung &Planung &EntwurfEntwurf

Planung &Planung &EntwurfEntwurf

EntwicklungEntwicklungEntwicklungEntwicklung TestTestTestTest DeploymentDeploymentDeploymentDeployment BetriebBetriebBetriebBetrieb

Page 5: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum5

Einbeziehen des Betriebs vom Einbeziehen des Betriebs vom Start an & Fortdauernd!!Start an & Fortdauernd!!

EntwicklungEntwicklung BetriebBetrieb

PlanungPlanungPlanungPlanung

Planung &Planung &EntwurfEntwurf

Planung &Planung &EntwurfEntwurf

EntwicklungEntwicklungEntwicklungEntwicklung TestTestTestTest DeploymentDeploymentDeploymentDeployment BetriebBetriebBetriebBetrieb

Page 6: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum6

ErkenntnisseErkenntnisse

Betriebsaspekte gehören von Anfang Betriebsaspekte gehören von Anfang an in das Design und die Entwicklungan in das Design und die Entwicklung

Wichtigste ThemenWichtigste Themen HealthmodellHealthmodell Taskmodell für den BetriebTaskmodell für den Betrieb KonfigurationsmodellKonfigurationsmodell DeploymentDeployment

Page 7: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum7

AgendaAgenda

Worüber reden wir?Worüber reden wir? Roadmap zum „Model-Based Roadmap zum „Model-Based

Management“Management“ Was kann man heute schon tun?Was kann man heute schon tun? FazitFazit

Page 8: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum8

Welche Richtung nimmt Welche Richtung nimmt Microsoft?Microsoft?

Windows Server System Infrastructure Windows Server System Infrastructure EnvironmentEnvironment

Operational Excellence mit MOFOperational Excellence mit MOF Patterns and Practices für die Patterns and Practices für die

AnwendungsentwicklungAnwendungsentwicklung

Dynamic Systems Initiative (DSI)Dynamic Systems Initiative (DSI) Formalisierung wesentlicher Übergänge zwischen Formalisierung wesentlicher Übergänge zwischen

Entwicklung und Betrieb durch das “System Entwicklung und Betrieb durch das “System Definition Model” (SDM)Definition Model” (SDM)

Page 9: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum9

System Definition ModelSystem Definition Model SSystem ystem DDefinition efinition MModelodel (SDM) ist eine (SDM) ist eine

Modellierungssprache (DSL) zur Beschreibung des Modelles Modellierungssprache (DSL) zur Beschreibung des Modelles eines Systems welches alle für das Deployment und den eines Systems welches alle für das Deployment und den fortlaufenden Betrieb erforder-lichen Informationen enthält.fortlaufenden Betrieb erforder-lichen Informationen enthält.

Ein SDM-Modell eines Systems ist seine Ein SDM-Modell eines Systems ist seine lebende lebende BlaupauseBlaupause. Es umfasst. Es umfasst Struktur des Systems (Komponenten)Struktur des Systems (Komponenten) Beziehungen zwischen den Komponenten des SystemsBeziehungen zwischen den Komponenten des Systems Formulierung von Beschränkungen (Prinzipien, Policies)Formulierung von Beschränkungen (Prinzipien, Policies) Betriebliche Tasks die auf dem System ausgeführt werden Betriebliche Tasks die auf dem System ausgeführt werden

könnenkönnen SDM-basierte Deployment- und Betriebswerkzeuge SDM-basierte Deployment- und Betriebswerkzeuge

manipulieren das Modell und manipulieren das Modell und nichtnicht das reale System das reale System

ModellModell Reales SystemReales System

Page 10: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum10

Model-Based ManagementModel-Based Management

Reales System

3. Model Updated

SystemAdministrator

1. Model Update Request

2. Validate Update Request

4. Adapter aktualisieren das reale System

SDM Service

SDM ModelSDM Model

Page 11: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum11

AgendaAgenda

Worüber reden wir?Worüber reden wir? Roadmap zum „Model-Based Roadmap zum „Model-Based

Management“Management“ Was kann man heute schon tun?Was kann man heute schon tun? FazitFazit

Page 12: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum12

Tolle Roadmap! Was tue ich Tolle Roadmap! Was tue ich heute?heute? DSI und SDM sind Bestandteil einer DSI und SDM sind Bestandteil einer

langfristig angelegten Roadmaplangfristig angelegten Roadmap Gehen über die „Longhorn“ Planungen Gehen über die „Longhorn“ Planungen

hinaus (d.h. wir reden hier über das Ende hinaus (d.h. wir reden hier über das Ende dieses Jahrzehnts)dieses Jahrzehnts)

Frage: was kann man heute sinnvoll tun Frage: was kann man heute sinnvoll tun um Betriebsaspekte so in der Entwicklung um Betriebsaspekte so in der Entwicklung zu berücksichtigen dass man sich leichter zu berücksichtigen dass man sich leichter in die Roadmap integrieren kann.in die Roadmap integrieren kann.

Antwort:Antwort: Microsoft implementiert SDM Microsoft implementiert SDM

schrittweiseschrittweise HandlungsempfehlungenHandlungsempfehlungen

Page 13: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum13

Problemlösung: Kommunikation und Problemlösung: Kommunikation und StrukturenStrukturen

EntwicklungEntwicklung BetriebBetrieb

KommunikationKommunikation

StrukturStruktur(Komponenten und Beziehungen)(Komponenten und Beziehungen)

EinschränkungenEinschränkungen(Basierend auf Prinzipien, Policies und Service Level)(Basierend auf Prinzipien, Policies und Service Level)

HealthmodellHealthmodell

TaskmodellTaskmodell

KonfigurationsmodellKonfigurationsmodell

SDMSDM

Page 14: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum14

Struktur: Komponenten und Struktur: Komponenten und BeziehungenBeziehungen

Monitoring Server

Router/Firewall

100 Mbps Switch

Web Server 4

Web Server 3

Web Server 2

Web Server 1

Order Processing Server (with message queue,

payment component, and SMTP)

Admin Server (with Domain

Controller & DNS)

Database Server 1

Disk Array

Database Server 2

Active Directory Domain Controller

(with DNS) Wie sieht die momentane Topologie des Wie sieht die momentane Topologie des

Netzwerkes und der Server aus?Netzwerkes und der Server aus? Gibt es Anforderungen zur funktionalen Gibt es Anforderungen zur funktionalen

Trennung?Trennung? Z.B.: Datenbanken müssen physikalisch vom Z.B.: Datenbanken müssen physikalisch vom

Webserver getrennt seinWebserver getrennt sein Wenn ja, welche Auswirkungen auf Wenn ja, welche Auswirkungen auf

Authentifizierung und Sicherheits-Kontexte der Authentifizierung und Sicherheits-Kontexte der Anwendung hat das?Anwendung hat das?

Welche Einschränkungen gibt es zwischen Welche Einschränkungen gibt es zwischen den Servern die die Anwendung benutzt?den Servern die die Anwendung benutzt? Ports, Verschlüsselung, Authentifizierung, etc.Ports, Verschlüsselung, Authentifizierung, etc.

StrukturStruktur(Komponenten und Beziehungen)(Komponenten und Beziehungen)

EinschränkungenEinschränkungen(Basierend auf Prinzipien, Policies und Service Level)(Basierend auf Prinzipien, Policies und Service Level)

HealthmodellHealthmodell

TaskmodellTaskmodell

KonfigurationsmodellKonfigurationsmodell

Page 15: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum15

StrukturStruktur(Komponenten und Beziehungen)(Komponenten und Beziehungen)

EinschränkungenEinschränkungen(Basierend auf Prinzipien, Policies und Service Level)(Basierend auf Prinzipien, Policies und Service Level)

HealthmodellHealthmodell

TaskmodellTaskmodell

KonfigurationsmodellKonfigurationsmodell

Einschränkungen: Prinzipien,Einschränkungen: Prinzipien,Policies und SLAsPolicies und SLAs

Welche Sicherheitsprinzipien existieren?Welche Sicherheitsprinzipien existieren? Beispiele:Beispiele:

Prinzip des Zugriff mit möglichstPrinzip des Zugriff mit möglichstniedrigen Berechtigungenniedrigen Berechtigungen

Prinzip des Zugriffs über unprivilegierte PortsPrinzip des Zugriffs über unprivilegierte Ports Bedrohungsmodelle und RisikoabschätzungenBedrohungsmodelle und Risikoabschätzungen Verschlüsselte Übertragung von Verschlüsselte Übertragung von

Benutzername/PasswortBenutzername/Passwort Welche Betriebsprinzipien existieren?Welche Betriebsprinzipien existieren?

Welche Werkzeuge/Technologien werden für das Welche Werkzeuge/Technologien werden für das Monitoring/Management der Anwendungen eingesetzt?Monitoring/Management der Anwendungen eingesetzt? Welche spezifischen Anforderungen muss eine Welche spezifischen Anforderungen muss eine

Anwendung erfüllen damit sie überwacht/verwaltet Anwendung erfüllen damit sie überwacht/verwaltet werden kann?werden kann?

Organisatorische StandardsOrganisatorische Standards Beispiele:Beispiele:

Nur TCP/IP wird benutztNur TCP/IP wird benutzt Nur Anwendungen in Managed Code sind erlaubtNur Anwendungen in Managed Code sind erlaubt

Page 16: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum16

Service Level Agreements (SLAs)Service Level Agreements (SLAs) Kontinuität der DiensteKontinuität der Dienste

Wartungszeiten einplanenWartungszeiten einplanen VerfügbarkeitVerfügbarkeit

Was darf es kosten?Was darf es kosten? ClusteringClustering

PerformancePerformance Was sind die relevanten Metriken?Was sind die relevanten Metriken? Was wird wie gemessen?Was wird wie gemessen? Begrenzungen der Infrastruktur Begrenzungen der Infrastruktur

berücksichtigenberücksichtigen• Bandbreiten, LatenzzeitenBandbreiten, Latenzzeiten

Einschränkungen: Prinzipien,Einschränkungen: Prinzipien,Policies und SLAs (Forts.)Policies und SLAs (Forts.)Einschränkungen: Prinzipien,Einschränkungen: Prinzipien,Policies und SLAs (Forts.)Policies und SLAs (Forts.)

StrukturStruktur(Komponenten und Beziehungen)(Komponenten und Beziehungen)

EinschränkungenEinschränkungen(Basierend auf Prinzipien, Policies und Service Level)(Basierend auf Prinzipien, Policies und Service Level)

HealthmodellHealthmodell

TaskmodellTaskmodell

KonfigurationsmodellKonfigurationsmodell

Page 17: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum17

Entwurf eines HealthmodellesEntwurf eines Healthmodelles

Definition potentieller FehlerDefinition potentieller Fehler Wie werden diese entdeckt, Wie werden diese entdeckt,

diagnostiziert und behoben?diagnostiziert und behoben? Szenarien zusammen mit dem Betrieb Szenarien zusammen mit dem Betrieb

durchspielen und das Modell darauf durchspielen und das Modell darauf anwenden.anwenden.

Strukturiertes Modell für Events und EventlogStrukturiertes Modell für Events und Eventlog Definition und Bereitstellung relevanter Definition und Bereitstellung relevanter

PerformancezählerPerformancezähler Erstellung eines WMI Provider für die AnwendungErstellung eines WMI Provider für die Anwendung Verwenden Sie das Enterprise Instrumentation Verwenden Sie das Enterprise Instrumentation

Framework (EIF)Framework (EIF) Erstellung eines Microsoft Operations Manager Erstellung eines Microsoft Operations Manager

(MOM) Management Pack (wenn MOM verwendet (MOM) Management Pack (wenn MOM verwendet wird)wird)

Definition aller Komponenten und deren Definition aller Komponenten und deren BeziehungenBeziehungen

Verwendung der Patterns & Practices “Application Verwendung der Patterns & Practices “Application Blocks”Blocks”

Feedback des Betriebs für kontinuierliche Feedback des Betriebs für kontinuierliche VerfeinerungVerfeinerung

StrukturStruktur(Komponenten und Beziehungen(Komponenten und Beziehungen))

EinschränkungenEinschränkungen(Basierend auf Prinzipien, Policies und Service Level)(Basierend auf Prinzipien, Policies und Service Level)

HealthmodellHealthmodell

TaskmodellTaskmodell

KonfigurationsmodellKonfigurationsmodell

Page 18: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum18

Was ist WMI?Was ist WMI?

WWindows indows MManagement anagement IInstrumentation ist nstrumentation ist Microsofts Implementierung von zwei Microsofts Implementierung von zwei Industrie- StandardsIndustrie- Standards CIM (Common Information Model)CIM (Common Information Model) WBEM (Web Based Enterprise Management)WBEM (Web Based Enterprise Management)

Fast alle Microsoft Produkte nutzen WMI Fast alle Microsoft Produkte nutzen WMI (W2K, W2K3, XP, Driver, Server (W2K, W2K3, XP, Driver, Server Products, .NET Runtime etc.)Products, .NET Runtime etc.)

WMI ist eine Kerntechnologie unserer WMI ist eine Kerntechnologie unserer Management Tools (MOM, SMS, Application-Management Tools (MOM, SMS, Application-Center)Center)

Page 19: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum19

WMI - ArchitekturWMI - Architektur

Instrumentation Instrumentation (providers)(providers)

Instrumented Instrumented ApplicationsApplications

DevicesDevicesOS (Win32)OS (Win32)

Consumers Consumers (clients)(clients)

Admin tools/scripts

Other appsManagementapps

Management ServicesManagement Services

Management SchemaManagement Schema

Catalo

gC

atalog

InfrastructureInfrastructure

Page 20: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum20

CoreCoreSchemaSchema

SystemSystem

DBDB

NetworkNetwork

DeviceDevice

OtherOther

AppsApps

MaxNumberControlled:UINT32MaxNumberControlled:UINT32ProtocolSupported:UINT16ProtocolSupported:UINT16TimeOfLastReset:DATETIMETimeOfLastReset:DATETIME

CIM_Controller

Manufacturer:STRINGManufacturer:STRING

Win32_InfraredDeviceWin32_InfraredDevice

ControllerTimeouts:UINT32ControllerTimeouts:UINT32MaxDataWidth:UINT32MaxDataWidth:UINT32MaxTransferRate:UINT64MaxTransferRate:UINT64ProtectionManagement:UINT16ProtectionManagement:UINT16

CIM_SCSIController

DeviceMap:STRINGDeviceMap:STRINGDriverName:STRINGDriverName:STRINGHardwareVersion:STRINGHardwareVersion:STRINGIndex:UINT32Index:UINT32Manufacturer:STRINGManufacturer:STRING

Win32_SCSIControllerWin32_SCSIController

CIM_InfraredController

CIM DatenmodellCIM Datenmodell

CIMV2 namespaceCIMV2 namespace ~600 Klassen~600 Klassen ~3000 Eigenschaften~3000 Eigenschaften

Page 21: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum21

WMI.NET EntwurfszieleWMI.NET Entwurfsziele Native .NET InstrumentierungNative .NET Instrumentierung

Reduzieren der Lernkurve für das CIM Reduzieren der Lernkurve für das CIM ObjektmodellObjektmodell

Dramatische Vereinfachung der Dramatische Vereinfachung der Instrumentierung von .NET Instrumentierung von .NET AnwendungenAnwendungen .NET-zentrisches .NET-zentrisches

InstrumentierungsmodellInstrumentierungsmodell Einfaches Interface für die Einfaches Interface für die

Veröffentlichung von EventsVeröffentlichung von Events .NET Client-Zugriff auf WMI Provider .NET Client-Zugriff auf WMI Provider

(managed und unmanaged)(managed und unmanaged)

Page 22: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum22

Demo

Instrumentierung von Anwendungen unter .NET (System.Management Namespace)

Page 23: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum23

Enterprise Instrumentation Enterprise Instrumentation FrameworkFramework Vereinheitlichtes API für InstrumentatierungVereinheitlichtes API für Instrumentatierung

““Einzeiler” für das Feuern von Events für Tracing, Eventing Einzeiler” für das Feuern von Events für Tracing, Eventing und Loggingund Logging

Nutzt WMI Infrastruktur Nutzt WMI Infrastruktur (System.Management.Instrumentation)(System.Management.Instrumentation)

Strukturiertes WMI EventschemaStrukturiertes WMI Eventschema Gemeinsame Manageability Basis zwischen Entwicklung, Gemeinsame Manageability Basis zwischen Entwicklung,

QA und BetriebQA und Betrieb Konfigurierbares Event FilteringKonfigurierbares Event Filtering

Feuern via WMI, Event Log, Windows Event TraceFeuern via WMI, Event Log, Windows Event Trace Minimaler Overhead für die Anwendung von Minimaler Overhead für die Anwendung von

Instrumentierung in einer ProduktionsumgebungInstrumentierung in einer Produktionsumgebung Highspeed Diagnostic TracingHighspeed Diagnostic Tracing

Ermöglicht Fehlersuche im ProduktionsbetriebErmöglicht Fehlersuche im Produktionsbetrieb Ermöglicht das Tracing von Benutzeraktionen über Ermöglicht das Tracing von Benutzeraktionen über

verschiedene Schichten in einer verteilten Anwendung verschiedene Schichten in einer verteilten Anwendung hinweg.hinweg.

Page 24: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum24

Distributed .NET Application

Application Server Application Server

Event Source

Event Source

Event Routing

WMIEventTrace

EventLog

TraceLogs

EventLog

WMISubscribers

TraceReader

Event Source

Event Source

Event Routing

WMIEventTrace

EventLog

TraceLogs

EventLog

WMISubscribers

TraceReader

Management Server

EIF Logische ArchitekturEIF Logische Architektur

Management Suite

Mgmt EventRepository

SQLTrace EventRepository

Page 25: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum25

Entwurf eines TaskmodellesEntwurf eines Taskmodelles

Tasks sind Aktionen dieTasks sind Aktionen dieAdministratoren ausführenAdministratoren ausführen

Heute werden TasksHeute werden Tasks mittels GUI oder Kommandozeile (CLI) ausgeführtmittels GUI oder Kommandozeile (CLI) ausgeführt

oft inkonsistente Nutzung zwischen GUI und CLIoft inkonsistente Nutzung zwischen GUI und CLI verwendet mit geringem Automatisierungsgradverwendet mit geringem Automatisierungsgrad

Manche Tools funktionieren nur lokal, andere Manche Tools funktionieren nur lokal, andere auch remote.auch remote.

StrukturStruktur(Komponenten und Beziehungen)(Komponenten und Beziehungen)

EinschränkungenEinschränkungen(Basierend auf Prinzipien, Policies und Service Level)(Basierend auf Prinzipien, Policies und Service Level)

HealthmodellHealthmodell

TaskmodellTaskmodell

KonfigurationsmodellKonfigurationsmodell

Page 26: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum26

TaskmodelleTaskmodelle

Zielsetzung Microsoft:Zielsetzung Microsoft:Betriebsystem und Serverprodukte Betriebsystem und Serverprodukte sollen zu 100% Task-based, d.h. über sollen zu 100% Task-based, d.h. über Skript verwaltbar seinSkript verwaltbar sein Mit Windows Server 2003 und den Mit Windows Server 2003 und den

aktuellen Serverprodukten schon sehr aktuellen Serverprodukten schon sehr weitgehend erreichtweitgehend erreicht

Neue Shell ist in Entwicklung Neue Shell ist in Entwicklung (Microsoft Shell MSH, Codename (Microsoft Shell MSH, Codename „Monad“)„Monad“) Übernimmt Konzepte von UNIX und VMSÜbernimmt Konzepte von UNIX und VMS Erweitert diese Konzepte mit OO Erweitert diese Konzepte mit OO

KonzeptenKonzepten Vollständig .NET 2.0 basiertVollständig .NET 2.0 basiert

Page 27: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum27

Demo

Ein kurzer Blick auf die zukünftige „Microsoft Shell“

(Codename: „Monad“)

Page 28: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum28

Entwurf einesEntwurf einesKonfigurationsmodellesKonfigurationsmodelles Konfigurationen sindKonfigurationen sind

Anwendungs-, Benutzer- oder Anwendungs-, Benutzer- oder ComputerspezifischComputerspezifisch

an unterschiedlichen Stellenan unterschiedlichen Stellenauf dem Rechner gespeichertauf dem Rechner gespeichert Registry, Dateien, Active Directory, SQL, etc.Registry, Dateien, Active Directory, SQL, etc.

oftmals etwas geheimnisvolloftmals etwas geheimnisvoll was sind die gültigen Werte?was sind die gültigen Werte? was ist der Standardwert?was ist der Standardwert? wann wurde der Wert zuletzt geändert?wann wurde der Wert zuletzt geändert? was war der vorherige Wert?was war der vorherige Wert? wer hat den Wert geändert?wer hat den Wert geändert?

StrukturStruktur(Komponenten und Beziehungen)(Komponenten und Beziehungen)

EinschränkungenEinschränkungen(Basierend auf Prinzipien, Policies und Service Level)(Basierend auf Prinzipien, Policies und Service Level)

HealthmodellHealthmodell

TaskmodellTaskmodell

KonfigurationsmodellKonfigurationsmodell

Page 29: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum29

KonfigurationsmodellKonfigurationsmodell

Unterstützung durch Patterns&PracticesUnterstützung durch Patterns&Practices Configuration Management Application Configuration Management Application

BlockBlock Vereinheitlichter Ansatz zur Verwaltung Vereinheitlichter Ansatz zur Verwaltung

von Konfigurationsdatenvon Konfigurationsdaten Konfigurierbare Speicherorte für Konfigurierbare Speicherorte für

KonfigurationenKonfigurationen Sichere Speicherung sensibler Sichere Speicherung sensibler

KonfigurationsdatenKonfigurationsdaten ZukunftZukunft

Windows stellt Managementfunktionen für Windows stellt Managementfunktionen für Konfigurationsdaten bereitKonfigurationsdaten bereit

Anwendungen stellen deklarativ Anwendungen stellen deklarativ Konfigurationsschema bereitKonfigurationsschema bereit

Page 30: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum30

DeploymentDeployment

Führen Sie einen “Release Readiness” Führen Sie einen “Release Readiness” Review durchReview durch

Erstellen Sie einen Deployment-Plan Erstellen Sie einen Deployment-Plan der von Entwicklung und Betrieb der von Entwicklung und Betrieb getragen wirdgetragen wird

DeploymentprozessDeploymentprozess Welche Tools werden benutzt?Welche Tools werden benutzt?

Brauchen die Tools spezielle Ports?Brauchen die Tools spezielle Ports? Welche Zugriffsrechte werden Welche Zugriffsrechte werden

benötigt?benötigt?

Page 31: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum31

DeploymentDeployment - Was- Was

Was ist Gegenstand des DeploymentWas ist Gegenstand des Deployment ASPX or ASMX files (and the associated compiled ASPX or ASMX files (and the associated compiled

project DLL) project DLL) A database (or databases) A database (or databases) Private assemblies Private assemblies Shared assemblies that reside in the global assembly Shared assemblies that reside in the global assembly

cache cache Legacy COM components Legacy COM components Serviced components (COM+) Serviced components (COM+) Specific Internet Information Services (IIS) settings Specific Internet Information Services (IIS) settings MessageQueue components MessageQueue components EventLog components EventLog components PerformanceCounter components PerformanceCounter components Other resources that need to be installed on the target Other resources that need to be installed on the target

computercomputer

Page 32: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum32

Deployment StrategiesDeployment Strategies

XCopyXCopy Einfach zu nutzen für einfache Einfach zu nutzen für einfache

Anwendungen oder Web-ServicesAnwendungen oder Web-Services No-touchNo-touch

Nur für ClientNur für Client Windows Installer Windows Installer

Komplexe LösungenKomplexe Lösungen GUI InstallationsprogrammGUI Installationsprogramm Integration mit SystemsteuerungIntegration mit Systemsteuerung Unterstützt auch “stille Installationen”Unterstützt auch “stille Installationen” Rollback möglichRollback möglich

Page 33: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum33

Deployment – VS2005Deployment – VS2005

Designer-Unterstützung für das Designer-Unterstützung für das Deployment Deployment

System Definition ModelSystem Definition Model Validierung des Designs gegen Validierung des Designs gegen

System-anforderungenSystem-anforderungen Statische Pre-Compilierung von Statische Pre-Compilierung von

ASP.NETASP.NET ClickOnce Deployment für ClientsClickOnce Deployment für Clients

Page 34: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum34

Dynamic Systems InitiativeDynamic Systems Initiative

Distributed Service Designer

Logical Systems Architecture Designer

Page 35: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum35

Demo

SDM Designer für verteilte Systeme („Whitehorse“) in Visual Studio 2005

Page 36: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum36

AgendaAgenda

Worüber reden wir?Worüber reden wir? Roadmap zum „Model-Based Roadmap zum „Model-Based

Management“Management“ Was kann man heute schon tun?Was kann man heute schon tun? FazitFazit

Page 37: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum37

HandlungsempfehlungenHandlungsempfehlungen Verstärkung der Kommunikation zwischen Verstärkung der Kommunikation zwischen

Entwicklung und BetriebEntwicklung und Betrieb Binden Sie den Betrieb frühzeitig in die Binden Sie den Betrieb frühzeitig in die

Planung und das Design einPlanung und das Design ein Beginnen Sie mit der Erstellung von Health-, Beginnen Sie mit der Erstellung von Health-,

Task- und Konfigurationsmodellen… nutzen Sie Task- und Konfigurationsmodellen… nutzen Sie dafür das “Design for Operations” Whitepaper. dafür das “Design for Operations” Whitepaper. http://www.microsoft.com/dsihttp://www.microsoft.com/dsi

Erstellen Sie MOM Management Pakete Erstellen Sie MOM Management Pakete http://www.microsoft.com/management/mma/chttp://www.microsoft.com/management/mma/createmp.mspxreatemp.mspx

Nutzen Sie das Microsoft Operations Nutzen Sie das Microsoft Operations Framework Framework http://www.microsoft.com/mofhttp://www.microsoft.com/mof

Nutzen Sie die “Windows Server System Nutzen Sie die “Windows Server System Reference Architecture” Reference Architecture” http://www.microsoft.com/wssrahttp://www.microsoft.com/wssra

Nutzen Sie “Patterns and Practices” Nutzen Sie “Patterns and Practices” http://www.microsoft.com/practiceshttp://www.microsoft.com/practices

Page 38: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum38

© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Page 39: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum39

Page 40: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum40

Host ToolBoxHost ToolBox

ConfigurationConfigurationSettingsSettingsEditorEditor

ZoneZone

Zone End PointZone End PointIIS Web SiteIIS Web Site

IIS Web ServerIIS Web Server

Http Client End pointHttp Client End point Zone End PointZone End Point

Page 41: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum41

Constraint Constraint EditorEditor

Page 42: Microsoft Architects Forum Softwareentwurf unter Berücksichtigung betrieblicher Aspekte Jürgen Pfeifer Jürgen Pfeifer juergenp@microsoft.com Architekturberater.

Microsoft Architects Forum42

Validation ErrorsValidation ErrorsIntegrated in task listIntegrated in task list

<