- Challenges of Software Integration
- Integrated Software Stacks
- Terminology
- Stacks and System Architectures
- Requirements of Software Integration Architectures
- Software Integration Architectures
- Software Stack Management and Deployment Frameworks
- About the Author
- Acknowledgements
- Ordering Sun Documents
- Accessing Sun Documentation Online
Integrated Software Stacks
The combined tasks of installing and configuring hardware and software are typically encompassed by the term integration. Integration is concerned not only with correctly installing and configuring a software product and binding it to a hardware platform, but installing and configuring several software products to correctly function and interoperate with each other. The result of integrating several software products is typically referred to as an integrated software stack, or simply, a software stack.
The following sections explain how using software stacks helps reduce the total cost of ownership (TCO) of a system.
Implementing Published Best Practices
With software stacks, configured systems implement published best practices and site standards that were validated before you deploy the system in your data center. This helps you avoid some of the pitfalls of integrating systems without software stacks, enabling you to reduce the total cost of designing and implementing a solution.
Standardizing Configurations
Using software stacks also helps ensure that as many systems as possible are identically configured. Due to the realities of the data center, it is rarely possible to have one software stack that is sufficient for all systems. However, the use of a small number of software stacks, created from standardized configurations, can help reduce TCO by minimizing training, reducing the occurrence of human error, and simplifying problem determination and resolution.
The consistency provided by the use of a small number of software stacks leverages the experience of data center personnel by making their experiences on one system applicable across many systems. This helps decrease TCO and speeds system recovery in the event of a failure.
Software Stacks vs. Software Loads
Integrated stacks provide complete and validated functional software solutions. Contrast this with the increased TCO and opportunities for human error with simple software loads, which require you to individually configure, integrate, and test each system. In the case of software loads, each system must be individually configured by data center personnel. Even if an attempt is made at automating this task, the possibility of human error still exists and system consistency might be lost.
To achieve maximum flexibility and robustness of software stacks, a rigorous separation of software installation and configuration information should be maintained at all times. The ramifications of this design requirement are explored in depth in Section 5.2, "Providing Explicit and Implicit Configuration Information," on page 7.