WebSphere Message Broker Registry Lookup Node Configuration

When configuring WebSphere Message Broke to call services loaded into WSRR the following two node can be used:
1. Registry Lookup
2. Endpoint Lookup

When using any of the two nodes the following configuration needs to be done:
Make sure Broker has been started when running the config: mqsistart.exe / mqsistart.sh
1. WSRR unsecure (No security enabled on WAS and URL start with http://)
mqsichangeproperties -c ServiceRegistries -o DefaultWSRR -n endpointAddress -v https://localhost:9443/WSRR6_3/services/WSRRCoreSDOPort

2. WSRR secure (Security enabled on WAS and URL start with https://)
Step 1: mqsichangeproperties -c ServiceRegistries -o DefaultWSRR -n endpointAddress -v https://localhost:9443/WSRR6_3/services/WSRRCoreSDOPort
Step 2: mqsireportproperties -o BrokerRegistry -r
Step 3: mqsichangeproperties -o BrokerRegistry -n brokerKeystoreFile -v C:\WSRR\SSL\DummyClientKeyFile.jks
Step 4: mqsichangeproperties -o BrokerRegistry -n brokerTruststoreFile -v C:\WSRR\SSL\DummyClientTrustFile.jks
Step 5: Stop the Broker: mqsistop.exe/mqsistop.sh
Step 6: mqsisetdbparms -n DefaultWSRR::WSRR -u wasadmin -p wasadmin
Step 7: mqsisetdbparms -n brokerKeystore::password -u dummy -p WebAS
Step 8: mqsisetdbparms MB7BROKER -n brokerTruststore::password -u dummy -p WebAS
Step 9: Start the Broker: mqsistart.sh/mqsistart.exe

Web Services Governance Enforcement with WebSphere Datapower and WebSphere Registry and Repository

Service Governance has become a main focus of many companies in securing Web Services. IBM Websphere stack of software and appliance provide customers with easy way to enforce governance in an centralized Registry and Repository. Below is an example of how web services governance can be enforce using WSRR and Datapower.

Prerequisite for this is that you have a working Web Service Application created and WSDL created for the specific Web Service.

Step 1: Import your WSDL into WebSphere Registry and Repository

Step 2: Open the uploaded WSDL to see all services listed, namespace and name of service

Step 3: Create Datapower Web Services Proxy

Step 4: Create a Front Side Handler

Remember to select GET method.

Step 5: Import WSDL into SOAP

Step 6: Set up SLM to protect WebSphere Application Server from to high TPS.

Step 7: Send multiple request with SOAPUI to test SLM

Websphere Registry and Repository Overview

What is Governance?

Governance established a level of control over some set of procedures within an organization.

IT Governance:

-Establishes decision making rights associated with IT.

Start with SOA lifecycle – MADM (Model(Gather requirements, model and simulate, Design), Assemble (Discover, construct and test, compose), Deploy (People, Processes, Information), Manage (Manage Application and services, Manage identity and compliance, Monitor business metrics))

Governance & Best practises: Enforce financial transparency, Ensure business and IT alignment, Maintain process control.

What is governance – (first word govern) establishes measurement, policies, and standards that are used to measure and control the process and implementation of IT decisions.

IT governance:

– Establishes decision making rights associated with IT

– Establish measurements, policies and standards that are used to measure and control the process and implementation of IT decisions.

SOA governance:

-Is an extension of IT governance

-Focuses on the lifecycle of services to ensure the business value of SOA.

Governance has two roles:

1. Definition of decision, rights, policies, standards, and controls

2. Enforcement of those policies and standards.

Defining governance means:

-Identifying the processes and the artefacts to be governed

-Identifying the control points and the chain of responsibility

-Identifying the decision rights

-Stating the measurements to be taken

-Identifying the policies to apply and the standards to put into place.

Enforcing governance means:

-Assigning staff to roles

-Executing the processes that enforce policies and standards

-Documenting proper execution of decisions

-Maintaining and monitoring controls

-Tracking and responding the measurements

Governance lifecycle:

Plan – Establish the need for governance

Define – Define the governance approach

Enable – Deploy governance model incrementally, SOA governance manages challenges, Registry and repository needed to enable governance.

Measure – Monitor and manage the governance process

Governance challenges facing SOA adoption:

SOA brings the new emphasis to the governance challenges within organizations:

1. Eliminate “rogue services”

2. Govern services part of SOA

3. Increase service reuse

4. Configure Enterprise Service Bus to execute context

Nature of SOA environment:

Loose coupled, platform independent in an heterogeneous environment.

In well implemented SOA a firm governance environment the functional and non-functional requirements are well defined.

What is a registry?

A registry holds metadata associated with artefacts in the repository

– Documentation

– Application state data

– Development lifecycle state data

What is a repository?

– Store artefacts associated with services:

WSDL

BPEL

Governance lifecycle:

1. Plan

– Document and validate business strategy for SOA and IT

– Assess current IT and SOA capabilities

– Define and refine SOA vision and strategy

– Review governance capabilities

– Lay out governance plan

2. Define

– Define and modify governance processes

– Design policies and enforcement mechanisms

– Identify success factors and metrics

– Identify owners and funding model

– Charter/refine SOA Centre of Excellence

– Design governance IT infrastructure.

3. Enable

-Deploy governance mechanisms

-Deploy governance IT infrastructure

-Educate and deploy on expected behaviours

-Deploy policies

4. Monitor

– Document and validate business strategy for SOA and IT

– Assess current IT and SOA capabilities

Service Registry and Repository capabilities (WSRR)

1. Publish

2. Find

3. Enrich

4. Manage

5. Govern

Encourage reuse – Publish + Find

Enable governance – Govern

Enhance connectivity – Enrich

Optimize service performance – Manage

Publish and Find – Encourage reuse

– Find and reuse services for building blocks for new composite applications.

Publish and find the following info:

1. Services

2. Service capabilities

3. Service lifecycle stage

4. Service interactions

5. Service dependencies and redundancies

If a service does not exist:

Development Tool -> Search -> Create Artifacts -> Publish -> Validation -> WSRR -> Search/select service -> Assembly & administration tools -> Assemble -> Publish -> WSRR.

What is stored in WSRR:

-UDDI

-CMDB

-Monitoring data

-Runtime deployments

-Assets

Service Description Entities:

Physical Documents (WSDL, XML Schema, SCDL. WS-Policy, XML)

Logical Documents (Interface, Operation, Message, Type, Service, Binding, Endpoint)

Concepts (Business apps, Business process, Governed collection, External reference, User-defined by classifications)

Service Description Metadata

-Properties

-Relationship

-Classifications

RAD, RSA, WID you can Publish and retrieve all artefacts to WSRR. Download WSRR Plug-in.

Dynamic Service Management

– Enhance connectivity – dynamic and efficient interactions among services at runtime.

– Manage dynamic and efficient access to information on services at run time

– identify users and service metadata

– Notifying users of service metadata

– Notify users of change to service artefacts or metadata

– Securely track all the service interactions

Runtime select and invocation interaction:

1. Message

2. ESB invokes selection mediation

3. Mediation retrieves service description for the requested operation from WSRR

4. Mediation also retrieves description for candidate providers

5. Mediation executes.

Optimize service usage and performance

1. Manage service interactions, dependencies, relationships and redundancies

2. Classify services

3. Manage policies for service usage and governance

4. Manage change and versioning

6. Analyze service usage, history and business impact.

7. Promote and encourage optimal service usage.

Built-in relationship management

-WSRR automatically discover relationships between service artifacts and metadata

Manually define relationship between services.

1. Enter relationship name

2. Select query

3. Enter query details

4. Select target entity

5. Classifications link

Configure change notifications

1. Broadcast change notifications to subscribed users

– email

– JMS

2. Extensible notification framework allow customize events and messages

3. Level of granularity of notifications

Operational monitoring interaction

1. Message

2. Mediation agent

3. Monitor/mediation retrieves the monitoring policy

4. Record operational data

5. ESB continues to work

6. Asynchronously, monitoring apps generate performance health alerts based on operational data.

Configure Websphere Business Space for Websphere Registry and Repository

Configure Websphere Business Space for Websphere Registry and Repository V7.

Step 1: Start wsadmin using the following command. Please specify your WAS username ([username]) and password([password]) below if security is enabled for your WSRR profile. Navigate to your C:\Program Files\IBM\Websphere\AppServer\WSRRvr01\bin:

wsadmin.bat -username [username] -password [password] -lang jython

Step 2: Install the business space application using the following command: (Specify the your own Node (THYSMNode1) and server (server1))

wsadmin>AdminTask.installBusinessSpace([‘-nodeName’, ‘THYSMNode1’, ‘-serverName’, ‘server1’])

Step 3: Save the Administration Configuration

wsadmin>AdminConfig.save()

Step 4: Log into your Websphere Application server and navigate to Applications->Websphere enterprise applications and you must see the following applications:

Step 5: Navigate back to wsadmin command prompt and run the Business Space Deploy Status to make sure Business Space was successfully installed:

wsadmin>AdminTask.getBusinessSpaceDeployStatus([‘-nodeName’, ‘THYSMNode1’, ‘-serverName’, ‘server1’])

Step 6: Configure the Business Space application by navigate to following file:

C:\Program Files\IBM\Websphere\AppServer\WSRR\BusinessSpace\config.bspace\MetadataFiles\ BSpace_DB2-distributed.properties

Open the properties file and edit the following settings:

wasHome=C:\Program Files\IBM\Websphere\AppServer

databaseUser=db2admin

serverName=localhost

userName=db2admin

password=db2admin

db2universal_jdbc_driver_path=C:\SQLLIB\java

universal_jdbc_driver_path=${WAS_INSTALL_HOME}/universalDriver/lib

Step 7: Run the ConfigBusinessSpace command:

wsadmin>AdminTask.configureBusinessSpace([‘-nodeName’,’THYSMNode1′, ‘-serverName’, ‘server1’, ‘-bspacedbDesign’,’C:\\Program Files\\IBM\\Websphere\\AppServer\\WSRR\\BusinessSpace\\config.bspace\\MetadataFiles\\ BSpace_DB2-distributed.properties’])

Step 8: Save Administration Configuration:

wsadmin>AdminConfig.save()

Step 9: Create the database for Business Space by executing the following .bat file:

cd C:\Program Files\IBM\Websphere\AppServer\WSRR\dbscripts\BusinessSpace\thkdespretsNode01_server1\DB2\BSPACE

configBusinessSpaceDB.bat createDB

Step 10: Navigate back to Websphere Application Server, Resources ->JDBC->Data Sources and see the following Datasource is created.

Step 11: Navigate to

Resources -> Resource Environment -> Resource Environment Providers, click on Mashups_Endpoints

Change the following 2 resource settings:

{com.ibm.sr.bspace}WSRRServerId.url : https://localhost:9454/ServiceRegistry

{com.ibm.sr.bspace}WSRRServerFeedsId.url: https://localhost:9454/ServiceRegistryFeeds/WSRR/7.0/

Step 12: Test if business space is successfully installed, navigate to the following URL using your browser:

https://localhost:9454/BusinessSpace

Configure your business space to show relevant business information from your WSRR Server:

Websphere UDDI configuration with WSRR

Create a Websphere UDDI with Websphere Registry and Repository.

Step 1: Navigate to the following path: \IBM\Websphere\WSRR\admin>
Step 2: Run the following command (Specify the path to your WSRR): ConfigureUDDI.bat C:\Program Files\IBM\Websphere\AppServer\profiles\WSRRSrv01

The following window will open:

Enter the localhost and SOAP port number for WSRR profile.

Enter the security username and password:

Configure your UDDI settings:

UDDI Property Node configurations:

UDDI Node Security configurations: