Download presentation
Presentation is loading. Please wait.
Published byKatherine Stewart Modified over 8 years ago
1
© 2013 IBM Corporation IBM UrbanCode Deploy v6.0 Support Enablement Training Middleware Configuration for WebSphere (MCWAS) v2
2
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 2 Agenda Overview Changes from v1 Mapping UC Deploy Applications to WAS Supported Scenarios High Level Flow Installation and configuration Migration and/or Upgrade Process Technical Details UC Deploy Objects Tokenization Process Scenario Details Demo Troubleshooting procedures Known Issues Source:If applicable, describe source origin (date, author, publication)
3
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 3 UC Deploy v6.0 MCWAS v2 - Overview Source:If applicable, describe source origin (date, author, publication) Add capabilities to the IBM Urban Code Deploy (UCD) product that allow for WebSphere Application Server (WAS) configuration to be captured, associated with an Application and promoted across Environments –Used to automate deployments of applications hosted in WAS Data driven approach that leverages WAS configuration templates –Create Cell, Cluster, Node, and Server scoped configuration templates based on an exemplar environment –Deploy application binaries and apply configuration templates to WAS instances via UCD processes –Detect configuration drift by scheduling periodic comparisons of a template against the live environment Automatically discover WAS environments and create Resources in UCD –Resources represent the Cell topology and provide an infrastructure view of your environment –Resources centralize Cell configuration utilized by Process steps Note that the majority of the technology in the MCWAS plug-in originates from Rational Automation Framework (RAF) v3.0.1. Only small updates have been made to package as a Deploy plug-in and leverage Deploy capabilities
4
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 4 UC Deploy v6.0 MCWAS v2 – Changes from v1 Source:If applicable, describe source origin (date, author, publication) More scopes In addition to Cell and Cluster, WAS configuration templates can now be captured from and applied to the Node or Server scope. Configuration drift detection Scenario: schedule a periodic comparison of my live WAS environment against the latest configuration template we’ve applied to it and notify me if any differences have been detected. Changes may be accepted into the template, requiring the user to generate a new version Changes may be rejected and the template reapplied to the WAS environment New process in the Middleware Configuration for WebSphere Component Template named: Compare WebSphere configuration Component Template Is now packaged under the imports directory as opposed to jsonTemplates This allows for it to be automatically imported in Deploy v6.0.1 server Usability improvements for WAS configuration template generations Most scenarios can now be supported completely inside of the Deploy server New process in the Middleware Configuration for WebSphere Component Template named: Generate Template
5
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Mapping UCD to WAS Applications (1 of 2) 1 UC Deploy Application Per WAS ND Cluster –Isolate application and configuration to the Cluster –Most common model for traditional WAS ND shops –UC Deploy Application contains binaries (e.g. EAR/WAR files) and a Cluster Scoped configuration template Optionally includes configuration templates for Cell and Node scoped objects, shared by multiple applications o Exercise caution with configuration shared across applications to ensure no disruption during deployment 1 UC Deploy Application Per WAS Standalone Server –Isolate application and configuration to the Server scope –Applicable to those using WAS Base –UC Deploy Application contains binaries (e.g. EAR/WAR files) and a Server Scoped configuration template Optionally includes configuration templates for Node scoped objects, possibly shared by multiple apps on Node o Exercise caution with configuration shared across applications to ensure no disruption during deployment 5
6
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Mapping UCD to WAS Applications (2 of 2) 1 UC Deploy Application Per WAS ND Cell –Useful for short lived cells –Model typically used when provisioning in the Cloud –UC Deploy Application contains binaries (e.g. EAR/WAR files) and one WAS configuration template Template represents cell scoped data Middleware Administrator likely owns template Possible for Application team to own if this model is used in Dev/Test environment Layered Template Approach Catch all for other scenarios Configuration stored across any or all of Cell, Cluster, Node and Server scopes All applicable configuration templates are associated with the Application and applied one at a time o Exercise caution with configuration shared across applications to ensure no disruption during deployment o 1-to-1 mapping of template to scope (applying a template overwrites changes from any previous template) o Can leverage steps in the Application Deployment for WebSphere plug-in to augment configuration data applied in any/all of these core templates 6
7
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 - Supported Scenarios Following scenarios are supported at the Cell, Cluster, Node and Server scopes: –Create/update WAS configuration template and publish to UC Deploy CodeStation –Automatically tokenize much of the information that is environment specific –Support for custom token creation and substitution –Deploy an Application containing other Components (EAR/WAS/etc.) and associated WAS configuration Initial deployment and update of app binary and/or configuration template –Promote an Application Snapshot, including WAS configuration from one Environment to another –Rollback an Application and associated WAS configuration to a previous Snapshot –Compare a configuration template against the live environment, detecting drift and notifying interested parties of differences 7
8
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational App 1 EAR DB Scripts WAS Cell Cfg … App 2 EAR WAR DB Scripts WAS Cell Cfg WAS Cluster Cfg … Applications UC Deploy v6.0 MCWAS v2 - High Level Flow 8 CodeStation Resources Dev Cell Cluster1 Cluster2 … QA Cell Cluster1 Cluster2 … Prod Cell Cluster1 Cluster2 … Deployment Automation Developer 4– Define Deployment Process WAS plug-ins Application Environments Prod QA DevExemplar IBM UrbanCode Deploy Middleware Administrator -or- Application Developer Components EARs WARs PAAs … SQL Scripts Config Templates Legacy scripts … 1 – Auto Discover & Configure 2 – Create Component 3 – Map Component to Resources 5– Add Component to Application 7 – Deploy Application 6 – Generate WAS Config Template
9
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 9 UC Deploy v6.0 MCWAS v2 - Installation and Configuration Load the MCWAS plug-in –In the Deploy UI navigate to the Settings->Automation Plugins page –Click on the Load Plugin button, which will open a dialog box. –In the dialog box click the Choose File button and select the MCWASPlugin.zip file –The actual file may have a version appended to it (e.g. MCWASPlugin-2.123456.zip ). –Click the Submit button Import the Middleware Configuration for WebSphere Component Template –Unzip the contents of the MCWASPlugin.zip file –In the Deploy UI navigate to the Components->Templates –Click on the Import Template button, which will open a dialog box. –In the dialog box click the Choose File button and select the Middleware Configuration for WebSphere.json file, which will be under the imports directory where you unzipped the plug-in –Click the Submit button –Note that this import will happen automatically in the Deploy v6.0.1 server The plug-in doesn’t require any explicit configuration other then to ensure your WAS instances have been modeled as Resources as described in the speaker notes of Slide 8. Additional details are also available in the InfoCenter Source:If applicable, describe source origin (date, author, publication)
10
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 10 UC Deploy v6.0 MCWAS v2 - Migration and Upgrade Process Updating the plug-in – Procedure is the same as the initial load. See slide 9 for details Updating the component template – Procedure is the same as the initial import, but you must select the Upgrade Template checkbox Note that customers of RAF may ask if they can leverage RAF assets within MCWAS –Cell, Cluster, Node and Server scoped templates produced by the RAF v3.0.1 Eclipse client can be used with MCWAS v2 –In this scenario, the RAF templates can be placed into CodeStation as a Component using any supported Source Config Type. –RAF can continue to be used for managing configuration (import, compare, etc.) and Deploy for deployment –This hybrid environment should be considered transitional and only used to facilitate a complete migration to Deploy. Do not advocate this as a long term or strategic solution. Source:If applicable, describe source origin (date, author, publication)
11
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Technical Details Several UC Deploy artifacts are required to support the scenarios on Slide 8 Artifacts that are shipped with the UC Deploy v6.0 product include: –Application Deployment for WebSphere Plug-in –Middleware Configuration for WebSphere Plug-in –Middleware Configuration for WebSphere Component Template Artifacts that are generated at points within a scenario –Resources Artifacts that are manually created –Top level Resource –Environment properties –Application –Components 11
12
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 - Plug-ins Middleware Configuration for WebSphere (MCWAS) –Exposes steps required to: –Generate WAS Configuration Templates –Apply WAS Configuration Templates –Compare WAS Configuration Templates against live WAS instances –Supports WAS v6.1, v7.0, v8.0 and v8.5 Application Deployment for WebSphere –Supports auto-discovery of WAS instances and auto-configuration of a the Resource tree –Exposes steps to: –Deployment of application binaries –Operational tasks (e.g. stop/start servers, etc.) –Common configuration tasks, supporting layered template approach (apply application specific configuration on top of base WAS template) 12
13
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Resources (1 of 2) WAS topologies will be auto-discovered on systems with a UC Deploy agent and represented as Resources. See InfoCenter or speaker notes for detailed procedure 13
14
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Resources (1 of 2) 14 Required information (e.g. paths, login credentials, etc.) about WAS instances is centralized as Resource configuration and leveraged by the plug-ins during application and configuration deployment
15
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Component Template The Middleware Configuration for WebSphere Component Template includes Component Processes that perform common tasks and should not need to be modified. All Components that contain WAS Configuration Templates should use this Component Template The Component Template contains three processes: – Configure WebSphere Application Server Applies the configuration template to the associated resource scope, replacing all tokens with the appropriate Component Environment properties – Compare WebSphere Configuration Compares the configuration template to the live data of the associated Resource scope. The Process will succeed if there are no differences and fail if drift is detected. Details of the differences can be found in the Output Properties and Log for the step. – Generate Template Creates a configuration template from the associated resource scope and creates a version for the associated component, automatically tokenizing known Environment specific information and allowing for custom tokens to be specified as Component Environment Properties. 15
16
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Components All WAS configuration templates will be represented in UC Deploy as Components –Components must be instances of the Middleware Configuration for WebSphere Component template –The configuration template files are stored in CodeStation Custom tokens are defined as Component Environment Properties The Components are added to both the Resource tree and Application 16
17
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Applications All UC Deploy Applications containing WAS configuration templates will have: –0 or 1 Cell, Cluster, Node and Server configuration templates –Applying a template destroys previous configuration so having two of the same scoped templates in one Application adds no value It may be necessary to share Cell or Node scoped configuration templates across Applications, in these cases caution must be excercised to ensure no disruption to Applications during the deployment of others who share the same template. There are no Applications, shipped with Deploy. They must be manually created by a Deployment Automation Developer 17
18
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Tokenization (1 of 6) The creation of and substitution for custom tokens is likely to be the most confusing and error prone part of the overall process Improvements have been made in v2 and more are coming Custom tokens are required when there is WAS configuration that will vary per Application Environment We automatically detect and tokenize some data (hostnames, etc.) Not possible to detect all Application specific data (e.g. WebSphere Variables, JDBC URLs, etc.) Tokens are prefixed and suffixed with an @ sign, for example, if the token name is JDBCURL it will appear as @JDBCURL@ in your configuration templates 18
19
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Tokenization (2 of 6) In general, users will generate an initial configuration template, then examine the files to determine what should be tokenized. Once the tokens are identified, they are specified as Component Environment Properties The name of the Property is the token name The default value of the Property is the string to search and replace in the template Component Environment Properties are automatically added to Application Environments when a Component is added to the Application Edit the Environment Property to indicate the specific value to substitute for the token in that Environment Common example is a URL to a database. It’s likely your production and test environments will use different databases but you want to deploy and test the same code The Configure WebSphere Application server Process in the Middleware Configuration for WebSphere Component Template will automatically substitute tokens for the appropriate Environment Property value before apply the configuration template to your live WAS instance. 19
20
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Tokenization (3 of 6) Custom tokens are specified as Component Environment Properties 20
21
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Tokenization (4 of 6) 21 Configuration Template ( variables.xml ) prior to tokenization Configuration Template ( variables.xml ) after tokenization
22
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Tokenization (5 of 6) 22 Top left: Application Environments Top right: Production Environment CLUSTER_VAR_VAL token will be replaced with “Production Cell” Bottom right: QA Environment CLUSTER_VAR_VALU token will be replaced with “QA Cell”
23
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Tokenization (6 of 6) The current tokenization scheme is a “dumb” search and replace If you want to tokenize the string “80” we find and replace every instance of that string with a token This can result in “over-tokenization”, that is, tokenizing strings you didn’t intend to We will fix the over-tokenization problem in v3 by allowing for an XPath expression For now, if overtokenization is a problem, then the user has two options Using v2 Process Do not specify the token as a Component Environment Property. After template generation, files will need to be downloaded from CodeStation. This can be painful as there is no way to download them together… Manually add the tokens by editing the XML files directly Import the files back into CodeStation (this can be done using the File System (Versioned) source config) Add the tokens as Component Environment Properties, with no default value. Revert back to the v1 process Prefer not to advocate this process as it’s done outside of the Deploy server, exposes command line scripts and requires SSH connectivity Less painful to manually add tokens as all files are gathered together prior to uploading to CodeStation See backup charts for details on v1 procedure 23
24
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Scenario Details: Generate Template Previous charts, including speaker notes, provides pre-requisite information To generate a configuration template you: Load the Application Deployment for WebSphere and Middleware Configuration for WebSphere plug-ins Import the Middleware Configuration for WebSphere Component Template Deploy agents to your WAS DMGR systems Build out the Resource tree (see speaker notes on chart 13) for all WAS instances you need to interact withchart 13 Create a Component, make sure it uses the Middleware Configuration for WebSphere Component Template Add custom tokens as Component Environment Properties Map the Component to the appropriate sub-resource in the Resource tree Template must be mapped to the correct scope, so if this is a cluster scoped template, you navigate to your Exemplar cell, expand sub-resources and click on “Actions->Add Component” for the cluster you want to use as your template, then add this Component Create an Application and add the Component from the previous step Click on the Components tab in the Application and click Run Process under actions Select your exemplar Environment, the Component as the Resource, the Generate Template Process and the version When the process completes the template will be uploaded to CodeStation and be visible under the Versions tab under the Component 24
25
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Scenario Details: Deploy Template Previous charts, and completion of the template generation scenario are pre-requisites to this To deploy a configuration template you: Map the Component to the appropriate sub-resource in the Resource tree Template must be mapped to the correct scope, so if this is a cluster scoped template, you navigate to the Cell you want to deploy to and expand sub-resources and click on “Actions->Add Component” on the appropriate cluster, then add this Component Create an Environment in your application that represents your deployment target (e.g. QA, Staging, Production, etc.) Click on the Environment and: Add Base Resources button, select the Component you mapped 2 steps previous If you created custom tokens during template generation, you’ll see them listed under Configuration- >Environment Properties. Specify the values you wish to use in this environment In the Application, create a Process and in the process designer drag the Install Component step Select the Component and the Configure WebSphere Application Server Component Process Add any other steps you need In the Application, click the Run Process button next to the Environment and select the Process created in the previous step 25
26
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Scenario Details: Configuration Drift Previous charts, and completion of the template generation and deployment scenarios are pre-requisites to this To compare a template against a live WAS instance you: Click on the Components tab in the Application and click Run Process under actions (for the Configuration Template Component) Select theEnvironment and Resource that correspond to the live WAS instance you want to compare, select the Compare WebSphere configuration Process and the version of the template to compare to the live instance The Process will succeed if there are no differences and fail if drift was detected To see the differences you navigate to the Process Request and open the Input/Output Properties, which will summarize the differences and the lines to look at in the Output log for details If the change is desireable you can create a new instance of your template using this Environment, or, update your Exemplar environment and generate a template from it It the change was erroneous, you can rollback to the template using the deployment process Typically, you’ll wrap this Component process in an Application Process and schedule it to run periodically (e.g. nightly) and setup notifications if the process fails. 26
27
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v2 – Scenario Details: Configuration Drift 27
28
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 28 www.ibm.com/software/rational
29
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 29 Troubleshooting Procedures WAS auto-discover log: (on the Deploy server) – /logs/autoDiscovery/ /WebSphere/Discovery/stdOut.txt WAS auto-configure log: (on the Deploy server) – /logs/autoConfigure/WebSphereCell/WebSphere/Topology/Discovery/stdOut.txt Source:If applicable, describe source origin (date, author, publication)
30
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 30 Known Issues & Gotchas Performance – time to import and apply WAS configuration templates can be excessive in certain situations (for example, importing from a very large cell). We’re working on performance improvements that will be available in a future release WAS auto discovery – if WAS is installed into a directory other then the default then you must set a property on the agent prior to adding it to your top level resource group. On the Resources/Agents/ /Configuration/Agent Properties page add a property named wsadmin.path and set the value to the fully qualified path of the wsadmin script including wsadmin.sh|bin After auto discovery you must manually initiate the “Auto Configure” step… some of the information is automatically detected but some must be manually entered and the process must be explicitly initiated Upgrading the Middleware Configuration for WebSphere Component Template might fail in the Deploy v6.0.0 server corrupting all Components that use the template. This bug in the server has been fixed in v6.0.1 and we recommend existing users of MCWAS upgrade to v6.0.1 first, or contact support to get a hotfix for v6.0.0 (otherwise you’ll need to recreate all your Components) Overtokenization as explained in chart 23 Source:If applicable, describe source origin (date, author, publication)
31
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational Frequently Asked Questions Q: Is this Rational Automation Framework (RAF)? A: Much of the underlying technology is from RAF and is relatively mature, however, we’re trying to integrate into Deploy in a natural and simplified manner Q: If we create a Cluster template based on an exemplar Cluster with x nodes, can we apply it to a cluster with y nodes? A: Yes, all configuration is done at the Cluster level and WebSphere will ensure all nodes are in synch 31
32
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 32 © Copyright IBM Corporation 2013. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. www.ibm.com/software/rational
33
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 33 www.ibm.com/software/rational
34
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 34
35
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational UC Deploy v6.0 MCWAS v1 - High Level Flow (read speaker notes for details) 35 5 - Publish Middleware Administrator -or- Application Developer Exemplar WAS Cell 2 – Plug-in 3 - Import 4 - Assemble WAS Configuration Templates CodeStation Resources Dev Cell Cluster1 Cluster2 … QA Cell Cluster1 Cluster2 … Prod Cell Cluster1 Cluster2 … App 1 EAR DB Scripts WAS Cell Cfg … App 2 EAR WAR DB Scripts WAS Cell Cfg WAS Cluster Cfg … Applications Deployment Automation Developer 1 – Auto Discover & Configure 6 – Define Deployment Process 7 - Deploy Application Environments QA Prod Dev WAS plug-ins WAS Configuration Template Creation
36
© 2013 IBM Corporation Accelerating Product and Service Innovation | Rational 36 Additional troubleshooting information if you need to leverage the v1 process genWASTemplates –Output is printed to the console and to the /logs directory –Connects via to exemplar cell via SSH on Unix hosts and SMB on Windows. Ensure connectivity –Uses code from RAF v3.0.1 to connect to and import WAS configuration data. Use RAF v3.0.1 debugging procedures. createUCDObjects –Output is printed to the console and to the /logs directory –Connects to UC Deploy server Tomcat. Ensure connectivity –Connects to exemplar cell via SSH on Unix hosts and SMB on Windows. Ensure connectivity –Leverages Deploy CLI, which doesn’t output much debugging info, logic is: Source:If applicable, describe source origin (date, author, publication) UC Deploy v6.0 MCWAS v1 - Troubleshooting
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.