Zarządzanie w SOA Standardy dla WS-* (WSDM, MUWS, MOWS, WS-Management) SOA-Governance. Trendy rozwoju zarządzania dla SOA np. autonomic computing, systemy multiagentowe. Produkty IBM Tivoli, Oracle, Apache Rafał Broniszewski, inf55434
Definicja SOA governance – wiele definicji SOA – Jak definiować SOA governance? Zastosowanie istniejących w firmie standardów (IT_G, EA_G) do SOA by uzyskać zamierzone korzyści. governance/uploads/40/19263/SOA_Governance_Architecture_v2.4.pdf
EA & IT Governance - działania strategiczne, nie tylko odpowiadanie na istniejące potrzeby Enterprise Architecture Governance ensure that an organization’s IT investments are closely aligned with business goals and processes, so that limited IT resources are allocated to areas of highest impact on organizational performance. IT Governance ( ISO/IEC 38500) to achieve the enterprise’s goals by adding value while balancing risk versus return over IT and its processes. Scope, Framework and Guidance... establish responsibilities, plan to best support the organization, acquire validly, ensure performance when required, ensure comformance with rules, ensure respect for human factors
SOA gov. Scope Zmiany tylko w obszarze technologicznym nie wystarczą - trójkąt: org.struct: Roles and responsibilities Processes – governing/governed Tools and infrastructure
asdf SGVM Dopasowanie SGRM do: - wielkości - istnejących standardów -zaaw. SOA Proces nie projekt Wynik: SOA gov regimen (model) Wdrażanie SOA gov model – (implement) - proces inkrementacyjny – ewolucja nie rewolucja (nie tylko tech.) – dokładny opis migracji
Governed / Governing Governed processes are the actual processes being controlled, monitored and measured (e.g. testing, design, deployment) Governing processes: compliance (rules), dispensation(exceptions), and communication(across organization, educate)
Governed processes plan/prio solutions (proc.biz) (using new or existing services) plan/prio new services development, deployment and management
Governed realtionships
Service Lifecycle
Brak SOA Governance Projekt pilotażowy SOA odniósł sukces Pełne wdrożenie nie Ponowne wykorzystanie tylko w jednym dziale Pierwszy etap – zapewnić sukces usługi Drugi etap – poradzić sobie z sukcesem
Wyrazisty cytat “Without SOA governance, you end up in a Web services version of DLL hell" Roman Stanek - chief software architect and founder of SOA registry provider Systinet.
Co wspólnego ma SOA z dll Nadmiarowość Przed SOA: (w kazdym dziale firmy wiele podobnych aplikacji napisanych od podstaw, rozniacych sie jedynie detalami, z własną bd., export danych) Przed dll: kazda aplikacja trzyma niemal identyczne biblioteki w katalogu lokalnym Nadmiarowość zawsze kosztuje Nie zawsze przynosi korzyści
Usuwanie nadmiarowości usługa przeliczania walut zysk z soa jeżeli tylko 1 oddział w firmie używa usługi (brak zainteresowania usługą, w jaki sposob wyodrebniać usługi?, nie zawsze warto) co stanie się jeżeli usługa odniesie sukces? wtedy zaczyna się problem skali. należy ustalić politykę do której dostosują się uczestnicy czy dany dział zgodzi się na większy wysiłek by inni mogli korzystać za darmo jego usług czy za dostarczaniem usług idą fundusze jak monitorować i ograniczać uzycie usługi. (rozliczenia znane np. z cloud computing czas.proc, transfer.sieć, disk.quota)
Uzależnienie od usługi Czy inne działy powierzą działanie swoich aplikacji usługom poza swoją kontrolą niezawodność (wykres keep-alive) wydajność (wykres resp.time/throughput) utrzymywanie zgodności (dll hell) życzenia rozszerzenia funkcjonalności prywatność Sprzeczne dążenia stron (wiele skarg i życzeń, brak czasu i funduszy) vs (ważne aplikacje nie działające z powodu awarii web-service'u) SLA service level agreement - czego może oczekiwać konsument, co zobowiazany jest dostarczyć producent
SOA Governance SOA Governance - wymaga odpowiedzi na powyzsze pytania (jakie uslugi, SLA) oraz dopilnowania przestrzegania ustalonych zasad środki techniczne do - rozliczania konsumentów - monitorowania producentów Standardy biznesowe Sarbanes-Oxley (SOX), Payment Card Industry (PCI), Basel II
Design time Runtime Zbieranie statystyk Namierzanie klientów
design/deploy time dla usług nie dla klient deploy time testy podejście iteracyjne ewolucja, nie rewolucja wykorzystanie istniejących standardów korp. oprogr.
Monitorowanie, rozliczanie monitorowanie i ograniczanie każdej usługi z osobna nie zawsze wystarcza (tak przekonują producenci np. ITCAM, ) monitorowanie aplikacji rozproszonej (end-to-end management) - namierzyć wywołania od jednego klienta, na róznych serwerach, różnych producentów - obciażenie ESB / MQ (nie zawsze jest) - dostarczenie kontekstu w jakim nastąpiło wywołanie, (zejście na poziom wymiany wiadomości)
End-to-end transaction visibility
ITCAM – IBM Tivoli Composite Application Manager (product suite) Agenci (data collectors) instalowani na serwerach aplikacyjnych: ITCAM for WebSphere (monitor WebSphere app server, trace transactions to method level, connect inter-server transactions) ITCAM for J2EE (monitor nonWebSphere app server – BEA WebLogic, Apache Tomcat, Jboss) Stacja zarządzająca (the managing server)
Server
Method profile (L2)
JVM Heap size
Memory Leaks
Heap comparison
Co to jest WSDM WSDM MUWS – management using ws. Jak zarządzać urządzeniem przy pomocy usługi WSDM MOWS – management of ws. Jak zarządzać usługą przy pomocy usługi
WSDM MUWS
WSDM MOWS
Jakie zyski z WSDM -> powiadamianie o awarii serwera lustrzanego-> jakie usługi procesowe są zagrożone awarią danej usługi podstawowej (nie trzeba oddzielnie dla kazdego z serwerów aplikacji, uwzględnienie w polityce firmy) -> wykorzystanie istniejacych opr. zarządzającego od różnych producentów
Polecane odnośniki Introduction to SOA governance A little wisom about WSDM ws-wisdom/ ITCAM df SOA Governance Architecture v2.4 (20.V.2009)
Oracle Enterprise Manager 11g mangement pack for WebLogic server Modify runtime configuration of Oracle Coherence nodes, services, and caches
Autonomic computing Monitorowanie I automatyczna naprawa w przypadku awarii/przeciążenia Automatyczna analiza logów WSDM WEF