throbber
METHOD AND SYSTEM FOR DETERMINING COMPATIBILITY OF COMPUTER SYSTEMS
`
`CROSS-REFERENCE TO RELATED APPLICATIONS
`
`[0001]
`
`This application is a continuation of U.S. Patent Application No. 14/341,471 filed on
`
`July 25, 2014, which is a continuation of U.S. Patent Application No. 11/738,936 filed on April
`
`23, 2007, which is a continuation-in-part of U.S. Patent Application No. 11/535,355 and also a
`
`continuation-in-part of U.S. Patent Application No. 11/535,308 both filed on September 26,
`
`2006, both of which claim priority from U.S. Provisional Patent Application No. 60/745,322filed
`
`April 21, 2006, all incorporated herein by reference.
`
`TECHNICAL FIELD
`
`[0002]
`
`The presentinvention relates to information technologyinfrastructures and has
`
`particularutility in determining compatibility of computer systems in suchinfrastructures.
`
`BACKGROUND
`
`[0003]
`
`As organizations have become morereliant on computers for performing day to day
`
`activities, so to has the reliance on networks and information technology (IT) infrastructures
`
`increased.
`
`It is well knownthat large organizations having offices and otherfacilities in different
`
`geographical locations utilize centralized computing systems connected locally over local area
`
`networks (LAN) and across the geographical areas through wide-area networks (WAN).
`
`[0004]
`
`As these organizations grow, the amountof data to be processed and handled by the
`
`centralized computing centers also grows. As a result, the IT infrastructures used by many
`
`organizations have moved awayfrom reliance on centralized computing power and towards
`
`more robust and efficient distributed systems. Distributed systems are decentralized computing
`
`systems that use more than one computer operating in parallel to handle large amounts of data.
`
`Concepts surrounding distributed systems are well knownin the art and a complete discussion
`
`can be found in, e.g., “Distributed Systems: Principles and Paradigms”; Tanenbaum AndrewS.:
`
`Prentice Hall; Amsterdam, Netherlands; 2002.
`
`[0005]
`
`While the benefits of a distributed approach are numerous and well understood,
`
`there has arisen significant practical challenges in managing such systems for optimizing
`
`efficiency and to avoid redundancies and/or under-utilized hardware.
`
`In particular, one
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`29
`
`30
`
`31
`
`23782470.1
`
`-l-
`
`VMware, Inc.
`
`Exhibit 1002
`
`Page 1
`
`VMware, Inc. Exhibit 1002 Page 1
`
`

`

`aABBWwWNO
`OoOHDH
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`challenge occurs due to the sprawl that can occur over time as applications and servers
`
`proliferate. Decentralized control and decision making around capacity, the provisioning of new
`
`applications and hardware, and the perception that the cost of adding server hardwareis
`
`generally inexpensive, have created environments with far more processing capacity than is
`
`required by the organization.
`
`[0006]
`
`Whencost is considered on a server-by-server basis, the additional cost of having
`
`underutilized servers is often not deemedto be troubling. However, when multiple servers in a
`
`large computing environment are underutilized, having too many servers can become a burden.
`
`Moreover, the additional hardware requires separate maintenance considerations; separate
`
`upgrades and requires the incidental attention that should instead be optimized to be more cost
`
`effective for the organization. Heat production and power consumption can also be a concern.
`
`Even considering only the cost of having redundant licenses, removing even a modest number
`
`of servers from a large computing environment can savea significant amount of cost on a yearly
`
`basis.
`
`[0007]
`
`As a result, organizations have become increasingly concerned with such
`
`redundancies and how they can best achieve consolidation of capacity to reduce operating
`
`costs. The cost-savings objective can be evaluated on the basis of consolidation strategies
`
`such as, but notlimited to: virtualization strategies, operating system (OS) level stacking
`
`strategies, database consolidation strategies, application stacking strategies, physical
`
`consolidation strategies, and storage consolidation strategies.
`
`[0008]
`
`Virtualization involvesvirtualizing a physical system as a separate guest OS
`
`instance on a host machine. This enables multiple virtualized systems to run on a single
`
`physical machine, e.g. a server. Examples of virtualization technologies include VMware™,
`
`Microsoft Virtual Server™, IBM LPAR™, Solaris Containers™, Zones™, etc.
`
`[0009]
`
`OS-Level application stacking involves moving the applications and data from one or
`
`more systems to the consolidated system. This can effectively replace multiple operating
`
`system instanceswith a single OSinstance, e.g. system A running application X and system B
`
`running application Y are moved onto system C running application Z such that system C runs
`
`23782470.1
`
`VMware, Inc.
`
`Exhibit1002
`
`Page 2
`
`VMware, Inc. Exhibit 1002 Page 2
`
`

`

`STDmnBWWN
`
`oo
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`applications X, Y and Z, and system A and B are no longer required. This strategy is applicable
`
`to all operation system types, e.g. Windows™, Linux™, Solaris™, AIX™, HP-UX™, etc.
`
`[0010]
`
`Database stacking combines one or more database instances at the database server
`
`level, e.g. Oracle™, Microsoft SQL Server™, etc. Database stacking combines data within a
`
`database instance, namely at the table level. Application stacking combines one or more
`
`databaseinstances at the application serverlevel, e.g. J2EE™ application servers, Weblogic™,
`
`WebSphere™, JBoss™, etc.
`
`[0011]
`
`Physical consolidation moves physical systems at the OS level to multi-system
`
`hardware platforms such as Blade Servers™, Dynamic System Domains™, etc. Storage
`
`consolidation centralizes system storage through storage technologies such as Storage Area
`
`Networks (SAN), Network Attached Storage (NAS), etc.
`
`[0012]
`
`The consolidation strategies to employ and the systems and applications to be
`
`consolidated are to be considered taking into account the specific environment. Consolidation
`
`strategies should be chosen carefully to achieve the desired cost savings while maintaining or
`
`enhancing the functionality and reliability of the consolidated systems. Moreover, multiple
`
`strategies may often be required to achieve the full benefits of a consolidation initiative.
`
`[0013]
`
`Complex systems configurations, diverse business requirements, dynamic workloads
`
`and the heterogeneous natureof distributed systems can cause incompatibilities between
`
`systems. These incompatibilities limit the combinations of systems that can be consolidated
`
`successfully.
`
`In enterprise computing environments, the virtually infinite number of possible
`
`consolidation permutations which include suboptimal and incompatibility system combinations
`
`make choosing appropriate consolidation solutions difficult, error-prone and time consuming.
`
`[0014]
`
`It is therefore an object of the following to obviate or mitigate the above-described
`
`disadvantages.
`
`25
`
`SUMMARY
`
`26
`
`27
`
`[0015]
`
`In one aspect, a method for determining a consolidation solution for a plurality of
`
`computer systems is provided comprising obtaining a data set comprising a compatibility score
`
`23782470.1
`
`-3-
`
`VMware, Inc.
`
`Exhibit 1002
`
`Page 3
`
`VMware, Inc. Exhibit 1002 Page 3
`
`

`

`NUWBWNO
`
`~—
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`for each pair of the plurality of computer systems, each the compatibility score being indicative
`
`of the compatibility of one of the plurality of computer systems with respect to anotherof the
`
`plurality of computer systems; determining one or more candidate transfer sets each indicating
`
`one or more of the computer systems capable of being transferred to a target computer system;
`
`selecting a desired one of the one or more candidate transfer sets; and providing the desired
`
`one as a consolidation solution.
`
`[0016]
`
`In another aspect, there is provided method for determining compatibilities for a
`
`plurality of computer systems comprising: obtaining at least one transfer set indicating one or
`
`more of the computer systems capable of being transferred to a target computer system;
`
`evaluating compatibilities of the one or more computer systems against the target computer
`
`system to obtain a first compatibility score; evaluating compatibilities of each the one or more of
`
`the computer systems against each other to obtain a second compatibility score; and computing
`
`an overall compatibility score for the transfer set using the first and second compatibility scores.
`
`[0017]
`
`In yet another aspect, there is provided a computer program for determining
`
`compatibilities for a plurality of computer systems comprising an audit engine for obtaining
`
`information pertaining to the compatibility of the plurality of computer systems; an analysis
`
`engine for generating a compatibility score for each pair of the plurality of systems based on the
`
`information that is specific to respective pairs; and a client for displaying the compatibility score
`
`on an interface, the interface being configured to enable a user to specify parameters
`
`associated with a map summarizing the compatibility scores and to define and initiate a transfer
`
`of one or more of the computer systems to a target computer system.
`
`22
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`23
`
`24
`
`25
`
`26
`
`[0018]
`
`An embodimentof the invention will now be described by way of example only with
`
`reference to the appended drawings wherein:
`
`[0019]
`
`Figure 1 is a block diagram of an analysis program for evaluating the compatibility of
`
`computer systems to identify consolidation solutions.
`
`27
`
`[0020]
`
`Figure 2 is a more detailed diagram of the analysis program depicted in Figure 1.
`
`23782470.1
`
`VMware, Inc.
`
`Exhibit1002
`
`Page 4
`
`VMware, Inc. Exhibit 1002 Page 4
`
`

`

`[0021]
`
`Figure 3 is a block diagram illustrating a sample consolidation solution comprised of
`
`multiple transfers.
`
`[0022]
`
`Figure 4 is an example of a rule-based compatibility analysis map.
`
`[0023]
`
`Figure 5 is an example of a workload compatibility analysis map.
`
`[0024]
`
`Figure 6 is an example of an overall compatibility analysis map.
`
`[0025]
`
`Figure 7 is a schematic block diagram of an underlying architecture for implementing
`
`the analysis program of Figure 1.
`
`[0026]
`
`Figure 8 is a table mapping audit data sources with consolidation strategies.
`
`[0027]
`
`Figure 9 is a process flow diagram of the compatibility and consolidation analyses.
`
`[0028]
`
`Figure 10 is a process flow diagram illustrating the loading of system data for
`
`analysis.
`
`[0029]
`
`Figure 11 is a high level processflow diagram for a 1-to-1 compatibility analysis.
`
`[0030]
`
`Figure 12 is a table showing example rule sets.
`
`[0031]
`
`Figure 13 is a table showing example workload types.
`
`[0032]
`
`Figure 14 is a process flow diagram for the 1-to-1 compatibility analysis.
`
`[0033]
`
`Figure 15 is a flow diagram illustrating operation of the rule engine analysis.
`
`[0034]
`
`Figure 16 shows an example rule set.
`
`[0035]
`
`Figure 17 is a flow diagram of the 1-to-1 rule-based compatibility analysis.
`
`[0036]
`
`Figure 18 is a flow diagram illustrating the evaluation of a rule set.
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`[0037]
`
`Figure 19 is an example of the rule-based compatibility analysis result details.
`
`21
`
`[0038]
`
`Figure 20 is a flow diagram of workload data extraction process.
`
`23782470.1
`
`-5-
`
`VMware, Inc.
`
`Exhibit1002
`
`Page5
`
`VMware, Inc. Exhibit 1002 Page 5
`
`

`

`[0039]
`
`Figure 21 is a flow diagram of the 1-to-1workload compatibility analysis.
`
`[0040]
`
`Figure 22 is an example of the workload compatibility analysis result details.
`
`[0041]
`
`Figure 23 is an example of the overall compatibility analysis result details.
`
`[0042]
`
`Figure 24(a) is a high level process flow diagram of the multi-dimensional
`
`compatibility analysis.
`
`[0043]
`
`Figure 24(b) is a flow diagram showing the multi-dimensional analysis.
`
`[0044]
`
`Figure 24(c) is a flow diagram showing use of a rule set in an N-to-1 compatibility
`
`analysis.
`
`[0045]
`
`Figure 24(d) is a flow diagram showing useof a rule set in an N-by-N compatibility
`
`analysis.
`
`[0046]
`
`Figure 25 is a process flow diagram of the multi-dimensional workload compatibility
`
`analysis.
`
`[0047]
`
`Figure 26 is an example multi-dimensional compatibility analysis map.
`
`[0048]
`
`Figure 27 is an example of the multi-dimensional compatibility analysis result details
`
`for a rule set.
`
`[0049]
`
`Figure 28 is an example of the multi-dimensional workload compatibility analysis
`
`result details.
`
`[0050]
`
`Figure 29 is a process flow diagram of the consolidation analysis.
`
`[0051]
`
`Figure 30 is a process flow diagram of an autofit algorithm used by the consolidation
`
`analysis.
`
`[0052]
`
`Figure 31 is an example of a consolidation solution produced by the consolidation
`
`analysis.
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`[0053]
`
`Figure 32 shows an example hierarchy of analysis folders and analyses.
`
`23782470.1
`
`-6-
`
`VMware, Inc.
`
`Exhibit 1002
`
`Page6
`
`VMware, Inc. Exhibit 1002 Page 6
`
`

`

`[0054]
`
`Figure 33 shows the screen for creating and editing the analysis input parameters.
`
`[0055]
`
`Figure 34 shows an example of the rule set editor screen.
`
`[0056]
`
`Figure 35 shows an example of the screen for editing workload settings.
`
`[0057]
`
`Figure 36 shows an example screen to edit the importance factors used to compute
`
`the overall compatibility score.
`
`[0058]
`
`Figure 37 is an example 1-to-1 compatibility map.
`
`[0059]
`
`Figure 38 is example configuration compatibility analysis details.
`
`[0060]
`
`Figure 39 is an example 1-to-1 compatibility map for business constraints.
`
`[0061]
`
`Figure 40 is an example 1-to-1 workload compatibility map.
`
`[0062]
`
`Figure 41 is an example workload compatibility report.
`
`[0063]
`
`Figure 42 is an example workload details report with stacked workloads.
`
`[0064]
`
`Figure 43 is an example of a 1-to-1 overall compatibility map.
`
`[0065]
`
`Figure 44 is an example of the 1-to-1 overall compatibility details report.
`
`[0066]
`
`Figure 45 showsthe workload details of the overall compatibility report.
`
`[0067]
`
`Figure 46 shows example transfers on a compatibility map with net effectoff.
`
`[0068]
`
`Figure 47 shows example transfers on a compatibility map with net effect on.
`
`[0069]
`
`Figure 48 is an example multi-dimensional compatibility details report.
`
`[0070]
`
`Figure 49 shows an example of the consolidation analysis (autofit) input screen.
`
`[0071]
`
`Figure 50 is an example overall compatibility map for the consolidation solution.
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`[0072]
`
`Figure 51 is an example consolidation summary report.
`
`23782470.1
`
`-7-
`
`VMware, Inc.
`
`Exhibit1002
`
`Page7
`
`VMware, Inc. Exhibit 1002 Page 7
`
`

`

`[0073]
`
`Figure 52 shows the example transfers that comprise the consolidation solution.
`
`DETAILED DESCRIPTION OF THE DRAWINGS
`
`Analysis Program Overview
`
`0DDNn
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`[0074]
`
`A block diagram of an analysis program 10 for determining compatibilities in
`
`computing environment 12 is provided in Figure 1. The analysis program 10, accessed through
`
`a computerstation 14, gathers data 18 pertaining to a collection of systems to be consolidated
`
`16. The analysis program 10 uses the gathered data 18 to evaluate the compatibility of the
`
`computer systems 28 and provide a roadmap 20 specifying how the original set of systems can
`
`be consolidated to a smaller number of systems 22.
`
`[0075]
`
`The following provides an overview of the principles and functionality related to the
`
`analysis program 10 andits environment depicted in Figure 2.
`
`System Data Parameters
`
`[0076]
`
`A distinct data set is obtained for each system 16 to contribute to the combined
`
`system data 18 shownin Figure 2. Each data set comprises one or more parametersthat relate
`
`preferably to technical 24, business 26 and workload 28 characteristics or features of the
`
`respective system 16. The parameters can be evaluated by scrutinizing program definitions,
`
`properties, objects, instances and any other representation or manifestation of a component,
`
`feature or characteristic of the system 16.
`
`In general, a parameter is anything related to the
`
`system 16 that can be evaluated, quantified, measured, compared etc.
`
`[0077]
`
`Examples of technical parameters relevant of the consolidation analysis include the
`
`operating system, OS version, patches, application settings, hardware devices, etc.
`
`[0078]
`
`Examples of business parameters of systems relevant to the consolidation analysis
`
`include the physical location, organization department, data segregation requirements, owner,
`
`service level agreements, maintenance windows, hardware lease agreements, software
`
`licensing agreements, etc.
`
`23782470.1
`
`VMware, Inc.
`
`Exhibit1002
`
`Page8
`
`VMware, Inc. Exhibit 1002 Page 8
`
`

`

`[0079]
`
`Examples of workload parameters relevant to consolidation analysis include various
`
`resourceutilization and capacity metrics related to the system processor, memory, disk storage,
`
`disk I/O throughput and network bandwidth utilization.
`
`System and Entity Models
`
`[0080]
`
`The system data parameters associated with a system 16 comprise the system
`
`model usedin the analyses.
`
`[0081]
`
`In the following examples, a source system refers to a system from which
`
`applications and/or data are to be moved, and a target server or system is a system to which
`
`such applications and/or data are to be moved. For example, an underutilized environment
`
`having two systems 16 can be consolidated to a target system (one of the systems) by moving
`
`applications and/or data from the source system (the other of the systems) to the target system.
`
`[0082]
`
`The computer systems 16 may be physical systems, virtual systems or hypothetical
`
`models.
`
`In contrast to actual physical systems, hypothetical systems do not currently exist in
`
`the computing environment 12. Hypothetical systems can be defined and includedin the
`
`analysis to evaluate various types of “what if’ consolidation scenarios. Hypothetical targets can
`
`be used to simulate a case where the proposed consolidation target systems do not exist in the
`
`environment12, e.g. for adding a system 16. Similarly, hypothetical source systems can be
`
`used to simulate the case where a new application is to be introduced into the environment 12
`
`and “forward consolidated” onto existing target systems 16.
`
`[0083]
`
`Hypothetical systems can be created through data imports, cloning from actual
`
`systems models, and manual specification by users, etc. The system model can be minimal
`
`(sparse) or include as much data as an actual system model. These system models may also
`
`be further modified to address the analysis requirements.
`
`[0084]
`
`The compatibility analysis can also be generalized to evaluate entities beyond
`
`physical, virtual or hypothetical systems. For example, entities can be componentsthat
`
`comprise systems such as applications and database instances. By analysing the compatibility
`
`of database instances and database servers with database stacking rule sets, database
`
`consolidation can also be assessed. Similarly, application consolidation can be evaluated by
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`23782470.1
`
`-9.
`
`VMware, Inc.
`
`Exhibit 1002
`
`Page9
`
`VMware, Inc. Exhibit 1002 Page 9
`
`

`

`analyzing application servers and instances with application stacking rules. The entity could
`
`also be a logical application system and technical data can pertain to functional aspects and
`
`specifications of the entity.
`
`[0085]
`
`It will therefore be appreciated that a “system” or “computer system”hereinafter
`
`referred, can encompassany entity which is capable of being analysed for any type of
`
`compatibility and should not be considered limited to existing or hypothetical physical or virtual
`
`systems etc.
`
`Consolidation and Transfers
`
`[0086]
`
`Consolidation as described above can be considered to include one or more
`
`“transfers”. The actual transfer describes the movementof a single source entity onto a target,
`
`wherein the specification identifies the source, target and transfer type. The transfer type (or
`
`consolidation strategy) describes how a sourceentity is transferred onto a target, e.g.
`
`virtualization, OS stacking etc.
`
`[0087]
`
`A transfer set 23 (see Figure 3) can be considered one or moretransfers that involve
`
`a common target, wherein the set specifies one or more source entities, the target and a
`
`transfer type.
`
`[0088]
`
`A consolidation solution (or roadmap) is one or more transfer sets 23 based on a
`
`common pool of source and target entities. As can be seen in Figure 2, the consolidation
`
`roadmap can beincluded in the analysis results 20. Each source or target entity is referenced
`
`at most onetime by the transfer sets that comprise the solution.
`
`[0089]
`
`Figure 3 shows how an example pool 24 of 5 systems ($1, S2, S3, S4 and S5) can
`
`be consolidated through 2 transfer sets 23: stack S1 and S2 onto S3, and stack S4 onto S5.
`
`The transfer sets 23 include 3 transfers, and each system 16 is referenced bythe transfer sets
`
`23 only once.
`
`In the result, a consolidated pool 26 of 2 systems is achieved.
`
`[0090]
`
`It will be appreciated that the principles described herein support many
`
`transformation strategies and consolidation is only one example.
`
`we
`
`SDmn
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`Compatibility Analyses
`
`23782470.1
`
`-10-
`
`VMware, Inc.
`
`Exhibit1002
`
`Page 10
`
`VMware, Inc. Exhibit 1002 Page 10
`
`

`

`[0091]
`
`The following discusses compatibilities between systems 16 based on the
`
`parameters to determine if efficiencies can be realized by consolidating either entire systems 16
`
`or aspects or components thereof.
`
`[0092]
`
`The analyses employdifferential rule sets 28 to evaluate and quantify the
`
`compatibility of systems 16 with respect to technical configuration and business related factors
`
`comprised in the gathered system data 18. Similarly, workload compatibility of a set of systems
`
`16 is assessed using workload stacking and scoring algorithms 30. The results of configuration,
`
`business and workload compatibility analyses are combined to produce an overall compatibility
`
`score for a set of systems 16.
`
`[0093]
`
`In addition to compatibility scores, the analysis provides details that account for the
`
`actual scores. The scores can be presentedin color coded maps 32, 34 and 36 thatillustrate
`
`patterns of the compatibility amongst the analyzed systems as shownin Figures 4, 5 and 6
`
`respectively.
`
`Analysis Modes
`
`[0094]
`
`A collection of systems 16 to be consolidated can be analyzed in one of three
`
`modes: 1-to-1 compatibility, multi-dimensional compatibility and consolidation analyses. These
`
`analyses share many common aspects but can be performed independently.
`
`[0095]
`
`The 1-to-1 compatibility analysis evaluates the compatibility of every possible
`
`source-target pair combination in the collection of systems 16 on a 1-to-1 basis. This analysis is
`
`useful in assessing single transfer consolidation candidates.
`
`In practice, it may be prudent to
`
`consolidate systems 16 incrementally and assess the impact of each transfer before proceeding
`
`with additional transfers.
`
`[0096]
`
`The multi-dimensional compatibility analysis evaluates the compatibility of transfer
`
`sets that can involve multiple sources being transferred to a common target. The analysis
`
`produces a compatibility score for each specified transfer set 23 by evaluating the compatibility
`
`of the systems 16 that comprise the transfer set 23.
`
`we
`
`0DDNn
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`23782470.1
`
`-ll-
`
`VMware, Inc.
`
`Exhibit1002
`
`Page 11
`
`VMware, Inc. Exhibit 1002 Page 11
`
`

`

`BWNO
`
`WN
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`[0097]
`
`The consolidation analysis searches for a consolidation solution that minimizes the
`
`numberof remaining source and target entities after the proposed transfers are applied, while
`
`meeting requisite compatibility constraints. This analysis employs the multi-dimensional
`
`compatibility analysis described above to evaluate the compatibility of postulated transfer sets.
`
`[0098]
`
`The analysis program 10 performs consolidation analysesforvirtualization and
`
`stacking strategies as will be explained in greater detail below, however, it will be appreciated
`
`that other consolidation strategies may be performed according to similar principles.
`
`Analysis Program Architecture
`
`[0099]
`
`A block diagram of the analysis program 10 is shownin Figure 7. The flow of data
`
`18 through the program 10 begins as an audit engine 40 pulls audit data 18 from audited
`
`environments 42. The data works its way up to the web client 44 which displays an output on a
`
`user interface, e.g. on computer 14. The program 10 is preferably a client-server application
`
`that is accessed via the web client 44.
`
`[00100]
`
`An audit engine 40 communicates over one or more communication protocols with
`
`audited environments 42 comprised of the actual systems 16 being analysed. The audit engine
`
`40 typically uses data acquisition adapters to communicate directly with the end points (e.g.
`
`servers) or through software systems that manage the end points (e.g. management
`
`frameworks 46 and/or agent instrumentation 48 and/or direct access 50).
`
`[00101]
`
`Alternatively, system data 18 can be imported from third party tools, e.g. inventory
`
`applications, performance monitoring tools etc., or can be obtained through user data entry.
`
`Examples of such third-party data having file formats that can be imported include comma
`
`separated values (CSV), extensible markup language (XML) and well formatted text files such
`
`as those generated by the UNIX™ system activity reporter (SAR).
`
`[00102]
`
`The audit engine 40, uses a set of audit request templates 52 that define the data 18
`
`to acquire from the systems 16. Once collected, the data 18 is stored in an audit data repository
`
`54. Data 18 referenced by the analysis rule sets 28 and required by the workload analysis 30
`
`are extracted and stored in separate data caches 56 and 58 respectively.
`
`23782470.1
`
`-|2-
`
`VMware, Inc.
`
`Exhibit1002
`
`Page 12
`
`VMware, Inc. Exhibit 1002 Page 12
`
`

`

`NABWNO
`
`~—
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`[00103] Aliases 60, differential rule sets 28, workload data types 30 and benchmark
`
`specifications comprise some of the analysis-related metadata 62 definitions used by the
`
`program 10. Aliases 60 extract and normalize system data 18 from a variety of data sources to
`
`a common model for analysis. Rule sets 28 examine system compatibility with respect to
`
`technical configuration and business-related factors. The workload definitions 30 specify the
`
`system resource parameters and benchmarksfor analyzing workload compatibility.
`
`[00104]
`
`An analysis engine 64 is also provided, which comprises compatibility and
`
`consolidation analysis engines 66 and 68 respectively. The compatibility analysis evaluates the
`
`compatibility of systems 16 through rule sets 28 and workload stacking algorithms 30. The
`
`consolidation analysis engine 68 leverages the compatibility analysis and employs constraint-
`
`based optimization algorithms to find consolidation solutions that allows the environment 12 to
`
`operate with fewer systems 16.
`
`[00105]
`
`|The program 10 has a report engine 70 that utilizes report templates 72 for
`
`generating reports that convey the analysis results. Typically, the program 10 includes a web
`
`interface layer 74 that allows webclient 44 users to enter settings, initiate an audit or analysis,
`
`view reports etc.
`
`Analysis Data Sources
`
`[00106]
`
`The audit data 18 can be acquired using tools such as the table 76 shownin Figure 8
`
`that illustrate the various types of configuration settings that are of interest and from which
`
`sources they can be obtained. Figure 8 also provides a mapping to where the sample workload
`
`data can be obtained.
`
`In Figure 8, a numberof strategies 78 and sub-strategies 80 map to
`
`various configuration and workload sources, collectively referred to by numeral 82. As
`
`discussed making reference to Figure 8, the strategies 78 may relate to database consolidation,
`
`OS-level stacking, application server stacking, virtualization, and many others. Each strategy
`
`78 includes a set of sub-strategies 80, which in turn map to specific rule sets 28. The rule sets
`
`28, which will be explained in greater detail below, determine whetheror not a particular setting
`
`or system criterion/criteria have been met and thus how different one system 16 is to the next.
`
`The rule sets 28 canalso indicate the cost of remediating such differences.
`
`23782470.1
`
`-13-
`
`VMware, Inc.
`
`Exhibit1002
`
`Page 13
`
`VMware, Inc. Exhibit 1002 Page 13
`
`

`

`SYDWnffWN
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`[00107]
`
`The table 76 lists the supported consolidation strategies and the relevant data
`
`sources that should be audited to perform the corresponding consolidation analysis.
`
`In general,
`
`collecting more basis data 18 improvesthe analysis results. The table 76 enables the analysis
`
`program 10 to locate the settings and information of interest based on the strategy 78 or sub-
`
`strategy 80 (and in turn the rule set 28) that is to be used to evaluate the systems 16 in the
`
`environment 12. The results can be used to determine source/target candidates for analysing
`
`the environment for the purpose of, e.g. consolidation, compliance measuresetc.
`
`Analysis Process Overview
`
`[00108]
`
`Referring now to Figure 9, a process flow diagram illustrates the data flow for
`
`performing the compatibility and consolidation analyses discussed above. The flow diagram
`
`outlines four processes: a data load and extraction process(A), a 1-to-1 compatibility analysis
`
`process (B), a multi-dimensional compatibility analysis process (C), and a consolidation analysis
`
`process(D).
`
`[00109]
`
` Inprocess A, the system data 18 collected via audits or imports as discussed above
`
`is prepared for use by the analyses. The compatibility and consolidation analyses processesB,
`
`C and D can be performed independently. The analyses share a common analysis input
`
`specification and get system data 18 from the data repository 54 and caches 56 and 58. The
`
`multi-dimensional compatibility and consolidation analyses take additional inputs in the form of a
`
`consolidation solution and autofit input parameters 84 and 86 respectively.
`
`[00110]
`
`The 1-to-1 compatibility analysis process B evaluates the compatibility of each
`
`system pair on a 1-to-1 basis.
`
`In contrast, the multi-dimensional analysis process C evaluates
`
`the compatibility of each transfer set 23 in the consolidation solution that was specified as part
`
`of its input.
`
`[00111]
`
`|The consolidation analysis process D searchesfor the best consolidation solution
`
`that fulfills the constraints defined by the autofit input 86. The consolidation analysis employs
`
`the multi-dimensional compatibility analysis C to assess potential transfer set candidates.
`
`27
`
`Data Load and Extraction
`
`23782470.1
`
`-14-
`
`VMware, Inc.
`
`Exhibit1002
`
`Page 14
`
`VMware, Inc. Exhibit 1002 Page 14
`
`

`

`BWNO
`0OHIHNMN
`
`10
`
`11
`
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`[00112]
`
`A process flow diagram for the data load and extraction processA is illustrated in
`
`Figure 10. System data including technical configuration, business related and workload
`
`collected through audits, data import and user input are prepared for use by the analyses
`
`processesB, C and D.
`
`[00113] When system data 18 andattributes are loaded into the analysis program 10, they
`
`are stored in the audit data repository 54 and system attribute table 55, respectively. As well,
`
`system data 18 referenced by rule set items 28, workload types 30 and benchmarks are
`
`extracted and loaded into their respective caches 56, 58. Alias specifications 60 describe how
`
`data can be extracted and if necessary, normalized from a variety of data sources.
`
`[00114]
`
`The data repository 54 and caches 56 and 58thus store audited data 18, system
`
`attributes, the latest rule set data, historical workload data and system workload benchmarks.
`
`1-to-1 Compatibility Analysis
`
`[00115]
`
`A high level flow diagram of the 1-to-1 compatibility analysis is shown in Figure 11.
`
`The 1-to-1 compatibility analysis can take into account analysis input, including input regarding
`
`the systems 16 to be analyzed, rule set related parameters, workload related parameters,
`
`workload benchmarks and importance factors 88 used to compute overall scores.
`
`[00116]
`
`The compatibility analysis evaluates the compatibility

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket