|
ALSB 3.0 Upgrade Guide
This page last changed on Feb 26, 2008.
BEA AquaLogic Service Bus Upgrade Guide eDocs Home > BEA AquaLogic Service Bus 3.0 Documentation > ALSB Upgrade Guide Contents
Upgrade OverviewYou can upgrade ALSB configurations from versions 2.1, 2.5, 2.6, or 2.6RP1 to version 3.0. Version 2.0 cannot be upgraded. The upgrade of in-place domains is not supported; only a migration upgrade method is supported. That is, you must create a new ALSB 3.0 domain, then import a configuration that was exported from a 2.x domain into the newly created 3.0 domain. In effect, you move the configuration from the old domain to the new 3.0 domain. The upgrade to 3.0 domains is supported for both clustered and non-clustered domains.
The following table identifies the version of WebLogic Server on which each version of ALSB runs.
Migration UpgradeAll migration steps are manual; no wizard is provided to facilitate the migration of an ALSB 2.x domain to an ALSB 3.0 domain. To upgrade an ALSB domain, complete the steps described in this section. Step 1. Export the ALSB 2.x ConfigurationUse the ALSB Console to export the ALSB 2.x configuration that you want to upgrade. To do so, log on as Administrator, and select Export Resources from the System Administration panel in the Console. For information about exporting ALSB configurations, see the appropriate Using the AquaLogic Service Bus Console document:
You can also export configurations using the ALSB DeploymentMBean (for 2.1) and the ALSBConfigurationMBean (for 2.5) and ALSBConfigurationMBean (for 2.6). For information, see the appropriate ALSB Deployment Guide:
Step 2. Export the Security ConfigurationsUse the WebLogic Server Administration Console to export security data from the domain. In the WebLogic Server Administration Console, select Domain Structure > Security Realms, then choose the security realm. Select Migration > Export to export the data.
Exporting 2.1 Security ConfigurationsIf you created service accounts and added user names and passwords to the service accounts, then your domain includes a username/password credential mapping provider. If the domain includes this provider or a PKI credential mapping provider, you must configure the export process to export credential mapping passwords in clear text (unencrypted). Your new domain cannot use passwords that were encrypted by a different domain. To Export Credential Mapping Data with Unencrypted Passwords
For more information, see Migrating Security Data in Securing WebLogic Server. Exporting 2.5 and 2.6 Security ConfigurationsStarting with the ALSB 2.5 release, both PKI and username/password credentials are stored in both the WebLogic Server realm and in the ALSB configuration repository. Consequently, these credentials are exported as part of the configuration JAR that was generated and exported in Step 1 of this procedure. When the JAR is imported into the new domain, the realm data is populated based on the contents of the JAR file. This means that you do not need to export PKI Credentials or username/password credentials when you upgrade from ALSB 2.5 or 2.6. Step 3. Install ALSB 3.0Install the ALSB 3.0 software as described in the ALSB Installation Guide Step 4. Create a New ALSB 3.0 DomainCreate a new ALSB 3.0 domain using the Domain Configuration Wizard or using the offline configuration tools, as described in:
Step 5. Configure WebLogic Server SecurityIn the new domain, configure the WebLogic security framework with SSL and the security providers needed to support your proxy and business services. See Configuring the WebLogic Security Framework: MainSteps in the ALSB Security Guide. Note the following security-related information about importing a 2.x configuration:
Step 6. Recreate Other WebLogic Server ObjectsIn the new ALSB 3.0 domain, recreate the WebLogic Server objects that could not be exported in Step 1, including:
For more information about configuring WebLogic Server domain resources, see Overview of WebLogic Server System Administration in Introduction to BEA WebLogic Server and BEA WebLogic Express.
For information, see Configuring WebLogic Tuxedo Connector for Tuxedo Transport in Interoperability Solution for Tuxedo. Step 7. Import Security DataUse the WebLogic Server Administration Console to import the security data that you exported in Step 2 into the new ALSB domain. See Import data into a security provider in the WebLogic Server Administration Console Online Help.
Step 8. Import the ALSB Configuration DataImport the 2.x configuration data that you exported in Step 1 into the new 3.0 domain.
To import configuration data, log on to the ALSB Console as Administrator, and select Import Resources from the System Administration panel. For information about importing ALSB configurations, see "Importing Resources" in Using the AquaLogic Service Bus Plug-in for WorkSpace Studio. 2.1 Service AccountsIn 2.1 service accounts, the import process attempts to re-bind each 2.1 service account to the user names and passwords that are in the username/password credential mapping provider. For example, if your 2.1 domain included a service account with the user name of "pat" and password of "patspassword", the import process looks in the username/password credential mapping provider in the 3.0 domain for "pat" and "patspassword." If the import process does not find the credentials for a service account in the username/password credential mapping provider, you must add credentials to the service account before you can activate the session. You cannot import empty service accounts into ALSB. For each 2.1 proxy service provider, the import process does the following:
In ALSB 3.0, you cannot create a proxy service provider that supplies an X.509 credential only for WSS authentication. However, you can create a proxy service provider that supplies X.509 credentials for digital signatures, digital encryption, or SSL client authentication. The proxy service provider uses the X.509 digital-signature credential for those web services that require the certificate for both WSS authentication and digital signature. If a 2.1 proxy service provider contained a digital-signature credential and an X.509 authentication credential, and if both credentials refer to the same key-pair, the import process does not import the X.509 token authentication credential. You do not need to remove the credential. To confirm that the X.509 token authentication credential will not be imported into the 3.0? domain, the import process outputs the following message: For information about the security changes in ALSB versions after 2.1, see Transport-Level Access Control Changes After ALSB 2.1. For additional information about the security changes between ALSB 2.1 and 2.5, see Security Updates Expand Configuration Options in "What's New in ALSB" in the ALSB Release Notes. Step 9. Complete Any Remaining Manual Upgrade ProceduresSome ALSB domain configuration changes are not automated and must be implemented manually. See Upgrade Considerations.
Upgrade ConsiderationsThis section describes considerations for upgrading various ALSB configuration artifacts. It describes how ALSB 2.1, 2.5, and 2.6 differ in behavior from ALSB 3.0 in areas that may impact the configurations you are upgrading.
2.x to 3.0 Upgrade Considerations
Please read the following upgrade considerations when you are upgrading 2.1, 2.5, or 2.6 configurations to 3.0:
ALSB 3.0 IDEIn ALSB 3.0, many of the design time features that were in the ALSB Console are now available in the ALSB IDE. If you want to use the IDE instead of the Console, you can import a 2.6 configuration JAR directly into the 3.0 IDE. For information about importing a JAR file into the 3.0 IDE, see "Importing Resources" in Import/Export in Using the AquaLogic Service Bus IDE. To import a 2.1 or 2.5 configuration JAR into the 3.0 IDE, you must first import the JAR into the 3.0 ALSB Console. From the console, export the configuration JAR file and then import it into the 3.0 IDE.
For information about exporting JAR files, see Step 1. Export the ALSB 2.x Configuration. Alert RulesThe SLA alert rules functionality in ALSB 3.0 differ slightly from previous releases. These changes do not affect the run-time evaluation or how alerts are issued. However, you may notice the following changes:
Displaying References from Alerts to Alert DestinationsUnlike previous releases where you could see distinct entries of alert rules in the ALSB Console, references to alert destinations through alert rules from proxy and business services are maintained and displayed as a single reference. For example, in a proxy service, if multiple alert rules and multiple pipeline alert actions use the same alert destination, only one entry for the alert destination is displayed in the Referenced By page for that alert destination. For more information, see Alert Destinations in Using the AquaLogic Service Bus Console. Since Alerts are no longer separate resources in ALSB 3.0, the way references from alerts to alert destinations are displayed is different from previous releases. Two pages in the Console are affected. First, the "Referenced By" field in the Alert Destination page no longer displays the Alert Rule that is referencing the destination. Instead, the Reference BY field displays the service that contains the alert. A side effect of this is that if a service has multiple alerts (SLA alerts or pipeline alerts) that reference the same Alert destination, the associated service is listed only once in the Referenced By field. Second, the Alert Rule page no longer contains the Reference information. Instead, the Service Summary page for the associated service contains the Alert Destinations referenced in the "References" field. For more information, see Alert Destinations in Using the AquaLogic Service Bus Console. Details Sent to Alert DestinationsWhen an SLA alert is issued to configured destinations, the alert details include a Rule ID as in previous releases. However, in 3.0, the value of the Rule ID is set to a combination of the parent service's global name and the alert rule name. For the SNMP trap, the RuleID is truncated to 64 characters, as in previous releases. Import - Export Alert Rule ChangesUnlike ALSB 2.6, which during import merged alerts with any existing alerts, ALSB provides users with preserve-overwrite semantics. This allows you to either keep all existing alerts or overwrite them, regardless of whether the alerts have the same name or not. Session-Aware Access Control Management of Proxy ServicesThe exported JARs from ALSB 2.1, 2.5, or 2.6 do not contain any access control policies. Before importing a configuration JAR from an earlier release, ALSB 3.0 uses a pre-import access control policy to do an in-place upgrade of the JAR to 3.0. To perform the in-place upgrade, the pre-processor queries all manageable authorization providers for each proxy service and retrieves a list of applicable access control policies. It then inserts those policies into the service definition of the proxy service. This is done on best-effort basis. A manageable authorization provider is a authorization provider that implements the PolicyEditorMBean interface. Such providers expose read-write APIs that allow the WebLogic Server and the ALSB console to add, modify, and delete policies stored in them. For transport level and default message-level policies, the system queries only those providers that expose the PolicyEditorMBean and retrieves any applicable policies and inserts these policies into the service definition. For operational message-level policies, the system can only query providers that have implemented the PolicyListerMBean. For providers that have not implemented the PolicyListerMBean interface, the operation-level policies are not retrieved. After the in-place upgrade finishes, the import process proceeds as if the configuration JAR is of type 3.0, including the access control policies retrieved from the authorization providers. The following table explains various combinations of the applicable parameters and the outcome of the import process. Note the outcome is the result of the import process and does not represent anything done after the configuration is imported. Table 1: Applicable Parameters and Import Outcomes
1 JAR — The configuration JAR file being imported. 2 CORE — The core repository in the configuration framework. 3 APs — Manageable authorization providers.
If an authorization provider does not exist in the target ALSB 3.0 system, the import ignores the imported ACLS for the authorization provider and displays a warning. In this case, you can discard the session, or undo the import task, and then add the authorization providers to the server and re-import. Alternately, you can do a dummy update operation of security parameters in the ALSB Console and the system will auto-correct any conflicts that it can on best-effort basis. Note that unlike the changes described in About Access Control Policies during Upgrade, these changes are atomic and reversible if you discard the session. For more information about the updating security parameters, see the Message Level Security Configuration page in Using the AquaLogic Service Bus Console. Transport SDK and Transport Provider ChangesThe following changes may impact the ALSB configuration:
Message Retry Count for Business Service ConfigurationIn ALSB 2.6, the message retry count applies to the list of URIs for a business service. In 3.0, the retry count applies to the individual URL endpoints. The upgrade process maintains the 2.6 behavior as follows: new_retries = N-1 + old_retries*N where N is the total number of URIs and old_retries is the 2.6 retry count. For example, suppose that in ALSB 2.6 you have three URLs configured for the business service and a retry count of one. With the 2.6 retry mechanism all three URLs are tried. Then after the retry delay, all three URLs are retried again. To obtain the same behavior in 3.0, the retry count is changed to five, which is obtained by applying the formula: (3 - 1) + (1*3) = 5. The net effect is exactly the same: all three URLs are tried once (using two of the five retries), then after the retry delay, the three URLs are tried once more (using the last three of the five retries). If only a single URL is configured, the old behavior and the new behavior are the same; the retry count does not change during the upgrade. For more information, see Business Services: Creating and Managing in Using the ALSB Console. Also see New Errors Codes in ALSB 3.0. Duplicate URIs for a Business Service are RemovedWhen importing business services into ALSB 3.0, the import process removes the duplicate URIs in the 2.6 configurations. If the URIs use randomly-weighted load balancing algorithms and the weights are set, the weights are adjusted accordingly. For example, if the business service is configured with the following URIs and weights:
When the business service is imported into 3.0, the URI set is modified as follows:
For Business services configured with other algorithms, the upgrade removes the duplicate URIs and no other changes are made. For more information about setting the parameters for the load balancing algorithm, see Business Services: Creating and Managing in Using the AquaLogic Service Bus Console. Application Errors RetriesIn case of delivery failure when sending outbound requests, ALSB allows you to specify whether to retry endpoint URIs for application errors, such as a SOAP fault. This does not affect retries for communication errors. This new option is available on the Transport Configuration page for business services. For more information, see "Transport Configuration page" in Business Services: Creating and Managing in Using the AquaLogic Service Bus Console. After the number of retries is exceeded, an error is issued; see New Errors Codes in ALSB 3.0. To maintain the 2.6 behavior, the default value for upgrading is set to Yes on the Transport Configuration page. To use this option, you must configure the transport provider to convey to the Transport SDK whether the exception is communication error or application error. In ALSB 3.0, the Transport SDK is enhanced for this purpose. For more information, see Developing a Transport Provider in the Transport SDK User Guide. HTTPS transport changes
To simplify switching between HTTP and HTTPS, in the ALSB 3.0 Console, the HTTPS transport configuration has been removed and its functionality has been added to the 3.0 inbound HTTP transport provider. The 3.0 HTTP Transport Configuration page contains a check box to enable to HTTPS. A new element, use-https, is added to the schema of the HTTP Transport inbound properties. <xs:element name="use-https" type="xs:boolean" minOccurs="0"/> Any existing HTTPS Transport configurations are upgraded to HTTP transport with this flag set to true. Transport Configuration in the Design EnvironmentIn prior releases, ALSB transports were configured only through the ALSB Console. However, starting in ALSB 3.0, the transports can be designed on Eclipse. For more information, see Developing ALSB Transports for WorkSpace Studio in the Transport SDK User Guide. 2.1 or 2.5 to 3.0 Upgrade ConsiderationsPlease read the following considerations when you upgrade either ALSB 2.1 or 2.5 configurations to ALSB 3.0:
"Use SSL" Attribute Controls Whether SSL is Used to Access JMS QueuesALSB JMS services (proxy and business) have a "Use SSL" attribute that controls whether SSL should be used to access the JMS queues. However, in ALSB 2.1 and 2.5, JMS business services did not use SSL when reading the outbound responses even if "Use SSL" was specified. This was corrected in ALSB 2.6. This means that when such a business service (JMS request/response business service with "Use SSL" selected) from ALSB 2.1 or 2.5 is imported into a newer domain, there may be a problem if the outbound response URL corresponds to a non-SSL port. Attempts to use SSL to talk to this non-SSL port results in an error.
SOAP Services Imported from 2.1 or 2.5 JARs use SOAP 1.1 by DefaultAll of the SOAP services imported from 2.1 or 2.5 JARs use SOAP 1.1 by default. ALSB 2.6 and 3.0 releases support SOAP 1.2. UDDI ConfigurationThe UDDI auto import feature is enhanced in 2.6 and later releases to allow the auto synchronization with UDDI registries. When a change occurs in the registry for a service to which ALSB is subscribed, notifications are sent from the UDDI registry to ALSB. For a single node, the notification is sent to the managed server HTTP address. In clustered configurations, the notification is sent to the Admin server HTTP address. An "Auto Import" flag is added to the registry configuration to indicate whether auto synchronization is enabled for the registry. While importing an ALSB 2.1 or 2.5 JAR file, ALSB disables this flag to retain the original behavior. Operational CustomizationOperational parameters were enhanced in ALSB 2.6 and again in 3.0. Consequently, values that were set for some parameters in 2.1 or 2.5 configurations are set differently in the 3.0 domain. The following table describes the value that ALSB 3.0 uses for Service Operational Parameters.
a Parameters set in a 2.6 configuration will retain the value specified in the imported JAR when imported into a 3.0 domain. 2.1 to 3.0 Upgrade ConsiderationsWhen upgrading ALSB 2.1 configurations to ALSB 3.0, consider the following:
Some Error Codes Are Not Generated in 2.5 (or later) VersionsIn ALSB 2.5 and later versions, error codes BEA-382101, BEA-382102, and BEA-382151 are not generated while preparing an inbound response or outbound request. In ALSB 2.1, these errors were generated for the conditions as described in the following:
In ALSB 2.1, these errors are caught in the binding layer at run time. In ALSB 2.5, 2.6, and 3.0, these errors are caught at design time in the Replace action and result in BEA-382040 error code, which indicates that an Assign action failed. Additionally, BEA-382040 may also be returned, which indicates that the replace action failed updating the body variable. New Error Codes Require UpdateIf you use WSS or relied on specific ALSB 2.1 error codes, either on proxy service error-handlers or client-side code, note the following change in ALSB 2.6 and later. Whenever WebLogic Server WSS returns a SOAP fault to ALSB, the ALSB message-context has a fault with:
The ALSB default error handler returns the root SOAP fault to the client.
Users in the IntegrationOperator Role Do Not Have Export PrivilegesIn ALSB 2.1, users in the IntegrationOperator role were allowed to export ALSB configurations. However, in subsequent releases of ALSB, they are not; the workaround is to reassign such users to a different role. Only One Credential Mapping Provider AllowedOnly one PKI and one username/password credential mapping provider is allowed. In AquaLogic 2.1, you can have multiple PKI credential mapping providers and multiple username/password credential mapping providers. In AquaLogic Service 2.5 and later, you can configure only one PKI credential mapping provider and only one username/password credential mapping provider. Consequently, if you are upgrading from AquaLogic 2.1 and you have created multiple PKI or username/password credential mapping providers, you must import all PKI mapping data into a single PKI credential mapping provider and import all username/password mapping data into a single username/password credential mapping provider. 2.1 SLA Alert Logs are UnavailableIn 2.1, SLA alerts were captured in the WebLogic Diagnostics Framework (WLDF) log. Migration to a 3.0 domain removes the contents of the 2.1 log. Consequently, the alerts and their details are not displayed in the new domain's ALSB Console and If the 2.1 alerts are issued in E-mail, they continue to be available in the user E-mail accounts after the upgrade. However, if any of those alerts were configured with a JMS action only (that is, with either a JMS queue or JMS topic defined as the JMS destination), you must set up new queues and topics in the new (upgrade) domain. Consequently, the old JMS actions are lost. New Alert Summary FieldIn ALSB 2.1 you could not customize the content of the alert summary field when you defined an E-mail action for an SLA alert. All alert summaries (the contents of which populate the E-mail's Subject line) contained the text "ALSB Alert". In ALSB 2.5 and later releases, a new customizable alert-summary field is provided when you configure SLA alerts and pipeline alert actions. For those SLA alerts that are migrated from 2.1, ALSB 3.0 populates the alert summary field with the 2.1 text "ALSB Alert". After you complete the upgrade, you can change the message in the alert summary field to something more descriptive. For more information about configuring alert actions, see "Alert" under Proxy Service: Actions in Using the AquaLogic Service Bus Console. See also "Creating and Alert Rule" in Monitoring in Using the AquaLogic Service Bus Console. 3.0 Alert Destination Resources are Created from 2.1 Alert RulesA resource called an Alert Destination was introduced in ALSB 2.5. It is used to capture a list of recipients that can receive alert notifications from ALSB. When an SLA alert rule is upgraded from 2.1, the alert actions configured in the 2.1 SLA Alert Rule are extracted and used to create an Alert Destination resource. The SLA Alert Rule is then updated to reference this resource. The Alert Destination resides in the same project and folder as the service with which the alert rule is associated. The name of the Alert Destination is specified as Alert Destination - xxxxxx, where xxxxxx is a unique number. The upgrade process creates one Alert Destination for each unique combination of recipients. In other words, if ten SLA Alert Rules with the same set of recipients are upgraded from 2.1, only one Alert Destination resource is created in the same project and folder as the service that is associated with the first SLA Alert Rule. For information about Alert Destinations, see Alert Destinations in Using the AquaLogic Service Bus Console. Run Time Does Not Generate Missing Headers when Sending Multipart MessagesIf an ALSB proxy service receives a multipart message (that is, a message with attachments) where the root part does not have an associated Content-ID MIME header, subsequent multipart messages sent by that proxy service will not have a Content-ID MIME header for the root part. In 2.1, ALSB corrected for the missing headers in client messages by generating the header when sending multipart messages. In 2.6 and later releases, the missing header is not automatically generated. Therefore, you must ensure that clients sending multipart messages to ALSB include a Content-ID header and "start" parameter. The presence of this Content-ID header directly affects the presence of the "start" parameter in the "multipart/related" Content-Type of the multipart message. While the Content-ID header and "start" parameter are considered optional by MIME standards, some Web Service stacks may require them and may return an error response back to the proxy service if they are absent. For more information, see Message Context in the AquaLogic Service Bus User Guide. Transport-Level Access Control Changes After ALSB 2.1In ALSB 2.1, transport-level access control was limited to HTTP and HTTPS proxy services. Access control was enforced by the web-container. The authorization check was done against a weblogic.security.service.URLResource. See In 2.5 and later versions, ALSB has a transport-level access control check on entry to all proxy services, regardless of transport. The call to the authorization service is now done in ALSB code; the web-container no longer performs an authorization check. As a side-effect, the check is now done against a com.bea.wli.sb.security.ALSBProxyServiceResource. The default policy on ALSBProxyServiceResource grants access to all requests. You can configure a transport-level access control policy on a proxy service in the ALSB console, as described in http://e-docs.bea.com/alsb/docs30/consolehelp/securityconfiguration.html. This change has the following implications:
About Access Control Policies during UpgradeDuring upgrade of ALSB 2.1, ALSB checks to see if the default policy on ALSBProxyServiceResource exists for at least one authorization provider. If this policy does not exist, it is created. Read access to the policy database is optional — if an authorization provider does not support reads, ALSB displays the following alert message:
Similarly, write access to the policy database is optional. If an authorization provider does not provide write access, ALSB displays the following alert message:
During a 2.1 upgrade, access control policies on HTTP or HTTPS proxy services are automatically migrated. If a policy exists on the URLResource that matches the service URI, the policy is copied over to the corresponding ALSBProxyServiceResource. The original policy (the one on URLResource) is deleted. The one exception to this is if the original policy used one of the URLResource-specific conditions. In this case the policy cannot be upgraded and ALSB creates a policy for this service, which denies all access to the service and writes the following alert to the log file:
New Errors Codes in ALSB 3.0The following error codes are added in ALSB 3.0:
For more information about transports, see the following:
Contact BEA | Feedback | Privacy | ©2008 BEA Systems BEA AquaLogic ServiceBus Upgrade Guide Version 3.0 Document Date: February 2008 |
| Document generated by Confluence on Feb 26, 2008 16:28 |