This document discusses moving from a stack-based operations model in Apache Ambari to a management pack (Mpack) based operations model. Some key points:
- The current model uses monolithic stacks that are embedded in Ambari and don't allow mixing services from different vendors. Mpacks will allow for a more modular, independent approach.
- Mpacks will allow for individual services and third-party add-ons to have independent release cycles rather than being tied to a larger stack release.
- The new model aims to support modular upgrades where only a subset of services in a cluster would be upgraded at a time if they belong to an upgraded mpack. This provides more flexibility compared to requiring a full cluster
6. Stack Based Operations Model
Ambari built on a standardized stack based operations model
Pluggable architecture; no vendor lock-in
Stacks wrap services of all shapes and sizes
Consistent definition & lifecycle control layer
Consistent approach for managing & monitoring services
Stacks embedded in Ambari
8. Management Packs – V1
Introduced in 2.4
V1 release based on existing stack based operations model
First take on decoupling stack releases
Bundles stacks, add-on services
Final stack definition is overlay of multiple mpacks
Stacks don’t need to be embedded in Ambari
10. Service Level Extension Points
Extension Apache JIRA Apache Wiki
Stack Advisor Extensions AMBARI-15226 Ambari Wiki
Role Command Order Extensions AMBARI-9363 Ambari Wiki
Quick Links Extensions AMBARI-11268 Ambari Wiki
Service Repos Extensions AMBARI-15538 Ambari Wiki
Upgrade Pack Extensions AMBARI- 15388 Ambari Wiki
12. Limitations
Cluster attached to single stack
Cannot deploy HDFS from HDP, NiFi from HDF in same cluster
Entire cluster upgrade
Stacks are monolithic
Ambari upgrade for refreshing stacks
No clear upgrade story for add-on services
Ownership of service deployment scripts
19. Release Management
Completely decouple Ambari releases
Service ownership with domain experts
Independent release cadence
20. Mpack Based Upgrades
Modular upgrades
Upgrade subset of services in a cluster that belong to mpack
Upgrade packs defined at mpack level
Download new version of mpack and kickoff upgrade
Upgrade Pack
“upgrade-from” instead of “upgrade-to”
21. Add-on Mpacks
First class support for 3rd party services
Mpacks provide a 3rd party onboarding platform
Add-on services not overlaid into stack
Independent release management
Independent and modular upgrades