Wdt 228 target dynamic servers to cluster #358
Merged
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
This pull request is for JIRA#WDT-254
Revise based on zoom discussion:
The problem: 12C only problem. How do we assign template resources to a dynamic cluster? For configured clusters and stand-alone managed servers, WDT uses the WLST function setServerGroups(server_name, [servergroups]). The server group list contains all "user" server groups for the set of templates in the WDT typedef.
Current solution for createDomain and updateDomain.
updateDomains does step 2 and 3 if the topology section is present in the model, and regardless of what is in the topology, Why? Should setServerGroups only be done to a new stand-alone ms server or configured cluster? What other topology MBean updates/adds would require setServerGroups to run against all servers in the domain.
FYI: we have an user issue requesting WDT to allow adding template(s) in updateDomain. Sounds reasonable. What if you are installing a product to an existing domain instead of creating a new domain. In fact, the WLS wizard allows a user to do this)
WLST setServerGroups issue: For updateDomain using online WLST. when a new managed server or configured cluster is added to the the domain, the setServerGroups is run on the new entities, but the updated config.xml does not show this update.
Back to dynamic clusters. Monica noted that the upper stack products are not certified with dyanmic clusters. In fact the operator does not currently support dynamic clusters in domains with these upper stack products.
BUT - JRF resources can be targeted. This works well when creating a JRF or RestrictedJRF domain (i.e. -domain_type JRF). The JRF resources are now targeted to dynamic clusters using applyJRF. With upper stack products, such as SOA, this is an incomplete solution.
WDT will ONLY target JRF resources using applyJRF to dymamic clusters. The managed servers and configured clusters are still targeted using the setServerGroups.
Issue with applyJRF: Cannot target resources to a dynamic cluster in online WLST using applyJRF. ApplyJRF looks for the OPSS data source in online (not in offline) which, of course, does not exist in a RestrictedJRF domain. This really is only a problem when a new dynamic cluster is added by the updateDomain and this same scenario works using offline WLST.
Another Issue with setServerGroups. The problem listed in number 4 below. Derek identified that the apps and startup class should NOT be targeted to managed servers, only to the admin server. the applyJRF does not target these resources to the dynamic cluster. However, the setServerGroups DOES target the resources to ms/clusters.
Future solution for assigning all template resources to dynamic clusters: Use the CIE template reporter API to find the resources for a server group in a template. Manually assign/target the resources to the dynamic cluster. The template reporter is available in oracle home versions which support the select/load templates.
(Continue with the original comments)
The following situations are caveats to this scenario.f
The following scenarios have been tested:
createDomain with domain_type WLS
10.3.6 (regression only)
12.2.1.3
createDomain with domain_type RestrictedJRF
12.2.1.3
12.2.1.4
createDomain with domain_type JRF
10.3.6 (regression only)
12.2.1.3
12.2.1.4
updateDomain in offline mode with domain_type WLS
10.3.6
12.2.1.3
updateDomain in offline mode with domain_type RestrictedJRF
12.2.1.3
12.2.1.4
updateDomain in offline mode with domain_type JRF
10.3.6 (regression only)
12.2.1.3
12.2.1.4
updateDomain in online mode with domain_type WLS
(open issue in 10.3.6 in online mode so untested)
12.2.1.3
updateDomain in online mode with domain_type RestrictedJRF
12.2.1.3
12.2.1.4
updateDomain in online mode with domain_type JRF
(open issue on 10.3.6 in online mode, so untested)
12.2.1.3
12.2.1.4