kurt stam jbug washington dc governance capabilities of ...files.meetup.com/2376281/jbug dc oct 16...
TRANSCRIPT
Governance Capabilities of Overlord
Kurt StamJBUG Washington DC
Oct 16 2013
Overlord
jboss.org/overlord
Introduction to Overlord● Overlord is an umbrella project which represents
JBoss Governance. Overlord is part of the SOA Group.● Projects: DTGov, RTGov & S-RAMP on http://www.
jboss.org/overlord● Source: https://github.com/Governance● Committers: Gary Brown, Kurt Stam, Eric Wittmann, Jeff
Yu and you?
SRAMP presented by Eric
jboss.org/overlord
SOA Repository Artifact Model and Protocol
OASIS specification known as S-RAMP defines ● a common data model for Artifact
Repositories (SOA focus) (type & model)● an interaction ATOM protocol to facilitate
the use of common tooling and sharing data
S-RAMP Components
● Core Models storing standard metadata and the file content itself
● Derived Models are read only and data is derived from the content
● Extensible● XPath2 based QL
S-RAMP ATOM BIND API
Derived Models(Read Only)
Core Model Documents
XML, XSD, WSDL, SOAP,Policy, ..., Extended Doc
XSD, WSDL, SOAP, Policy, ..., Extended Model
S-RAMP Implementation
● RESTEasy for the ATOM BIND API
● Content Extractors (jar)● Artifact Relationships● Content Derivers● Modeshape and Infinispan
as JCR impl for perform- ance and scalability
● JAAS, SAML for SSO
ATOM BINDING (RESTEasy)
Derived Models(Read Only)
Core Model Documents
JCR Storage (Modeshape on top of Infinispan)
S-RAMP Capabilities?● Store Content and MetaData
○ Core & Custom Properties○ Classification (OWL Ontology)○ Relationships between artifacts
● Rich Query Support XPath2 Style● ATOM API for easy communication
What S-RAMP is not
● SCM - use GIT instead (S-RAMP tracks 'deployable' and 'interface' type artifacts)
● Not meant for intermediate artifacts, but rather 'released' and 'versioned'.
How to interact with S-RAMP?Through the ATOM BIND REST API using ● An ATOM client● Java, using the S-RAMP client library● Command Line Interface● S-RAMP-UI Browser (Web Based)● Maven (S-RAMP Wagon up/down)
S-RAMP ClientSrampAtomApiClient client =
new SrampAtomApiClient(endpoint, username, password, true);
//Upload an artifactBaseArtifactType artifact = client.uploadArtifact(type, is, file);
//Query S-RAMPQueryResultSet rs = client.buildQuery("/s-ramp[@from-demo = ?]")
S-RAMP Wagon(1)...<build> <finalName>${project.artifactId}</finalName> <extensions> <extension> <groupId>org.overlord.sramp</groupId> <artifactId>s-ramp-wagon</artifactId> </extension> </extensions>...
S-RAMP Wagon(2)...<distributionManagement> <repository> <id>local-sramp-repo</id> <name>S-RAMP Releases Repository</name> <url>sramp://localhost:8080/s-ramp-server/
?artifactType=SwitchyardApplication</url> </repository>...
S-RAMP Demos
DTGov
jboss.org/overlord
Design Time Governance● SOA Architecture Design (Workflow)● Search for Services (re-use)● Artifact Relationship Visualization● Notifications on Service Change● Impact Discovery● Store and Manage Policies
DTGov, some key priorities to start
● Best practice BPMN2 based governance workflows○ Repository events kick off governance workflows
○ Out-of-the-box integration with jBPM-6
○ Workflows can be customized or new ones can be created
● Governance Workflows can push artifacts to a service execution environment using either JON/RHQ, or direct deployment
● DTGov console
Deployment workflow● S-RAMP triggers deploy to runtime● Logs deployment status in S-RAMP● Sends out notifications● Human task to approve or fail● target: dev, qa, stage, prod
DTGov Demo
● Upload ontologies & workflows● 2. Upload Switchyard app using maven
○ s-ramp:query "/s-ramp/ext/SwitchyardApplication"
● 3. Approve SY Artifact(s)
RTGov
jboss.org/overlord
Runtime GovernanceThe RTGov architecture has following goals:● Real-time analysis of individual business transactions
○ correlating activities across services to understand the overall transaction
● Evaluating activity against Service Level Agreements● Real-time policy enforcement
What's Coming (Soon)?Repository:
Complete implementation of S-RAMP-1.0 specIntegration into other JBoss products (TEIID, JON/RHQ) (Done)
Governance:Console (Started)
Bottom up Switchyard, Project Lifecycle (Started)API Management (Started)Policy ManagementCommunity Management
What features are you looking for?
Questions?