...
- Name: Unique management pack name
- Version: Management pack version
- Description: Friendly description of the management pack
- Prerequisites:
- Minimum Ambari Version on which the management pack is installable.
- Example: To install stackXYZ-ambari-mpack1.0.0.0 management pack, Ambari should be atleast on Apache Ambari 2.4.0.0 version.
- Minimum management pack version that should be installed before upgrading to this management pack.
- Example: To upgrade to stackXYZ-ambari-mpack-2.0.0.0 management pack, stackXYZ-ambari-mpack-1.8.0.0 management pack or higher should be installed.
- Minimum stack version that should already be present in the stack definitions for this management pack to be applicable.
- Example: To add a add-on service management pack myservice-ambari-mpack-1.0.0.0 management pack stackXYZ-2.1 stack definition should be present.
- Minimum Ambari Version on which the management pack is installable.
- Artifacts:
- List of release artifacts (service definitions, stack definitions, stack-addon-service-definitions, view-definitions) bundled in the management pack.
- Metadata for each artifact like source directory, additional applicability for that artifact etc.
- Supported Artifact Types
- service-definitions: Contains service definitions similar to common-services/serviceA/1.0.0
- stack-definitions: Contains stack definitions similar to stacks/stackXYZ/1.0
- extension-definitions: Contains dynamic stack extensions (Refer: Extensions)
- stack-addon-service-definitions: Defines add-on service applicability for stacks and how to merge the add-on service into the stack definition.
- view-definitions (Not supported in Apache Ambari 2.4.0.0)
- A management pack can have more than one release artifacts.
- Example: It should be possible to create a management pack that bundles together
- stack-definitions: stackXYZ-1.0, stackXYZ-1.1, stackXYZ-2.0
- service-definitions: HAWQ, HDFS, ZOOKEEPER
- stack-addon-service-definitions: HAWQ/2.0.0 is applicable to stackXYZ-2.0, stackABC-1.0
- view-definitions: Hive, Jobs, Slider (Apache Ambari 2.4.0.0)
- Example: It should be possible to create a management pack that bundles together
Management Pack Structure
StackXYZ Management Pack Structure
...
stackXYZ-ambari-mpack1.0.0.0/mpack.json
{
"type" : "fullreleasefull-release",
"name" : "stackXYZ-ambari-mpack",
...
Add-On Service Management Pack Structure
myservice-ambari-mpack-1.0.0.0
├── common-services
│ └── MYSERVICE
...
Add-On Service Management Pack Mpack.json
myservice-ambari-mpack-1.0.0.0/mpack.json
{
"type" : "fullreleasefull-release",
"name" : "myserviceambarimpackmyservice-ambari-mpack",
"version": "1.0.0.0",
"description" : "MyService Management Pack",
"prerequisites": { "minambariversion
"min-ambari-version" : "2.4.0.0", "minstackversions
"min-stack-versions" : [
{
"stack_name" : "HDPstackXYZ",
"stack_version" : "2.2"
}
]
},
}, { "stack_name" : "PHD", "stack_version" : "3.0" }, { "stack_name" : "HDF", "stack_version" : "2.0" } ] }, "artifacts": [
{
"name" : "MYSERVICEcommonserviceMYSERVICE-service-definition",
"type" : "servicedefinitionservice-definition",
"source_dir" : "commonservicescommon-services/MYSERVICE/1.0.0",
"service_name" : "MYSERVICE",
"service_version" : "1.0.0"
},
{
"name" : "MYSERVICE1MYSERVICE-1.0.0",
"type" : "stackextensiondefinitionstack-addon-service-definition",
"source_dir": "customservicesaddon-services/MYSERVICE/1.0.0",
"service_name" : "MYSERVICE",
"service_version" : "1.0.0",
"applicable_stacks" : [
{
"stack_name" : "HDPstackXYZ", "stack_version" : "2.2" }, { "stack_name" : "PHD", "stack_version" : "3.0" } ] }, {
}
]
},
{
"name" : "MYSERVICE2MYSERVICE-2.0.0",
"type" : "stackextensiondefinitionstack-addon-service-definition",
"source_dir": "customservicescustom-services/MYSERVICE/2.0.0",
"service_name" : "MYSERVICE",
"service_version" : "2.0.0",
"applicable_stacks" : [
{
"stack_name" : "HDPstackXYZ",
"stack_version" : "2.4" }, { "stack_name" : "PHD", "stack_version" : "3.4" }, { "stack_name" : "HDF", "stack_version" : "2.0" } ] } ] }
Install Management Pack
Upgrade Management Pack
...
}
]
}
]
}
Installing Management Pack
ambari-server install-mpack --mpack=/path/to/mpack.tar.gz --purge --verbose
Note: Do not pass the "--purge" command line parameter when installing an add-on service management pack. The "--purge" flag is used to purge any existing stack definition (HDP is included in Ambari release) and should be included only when installing a Stack Management Pack.
Upgrading Management Pack
ambari-server upgrade-mpack --mpack=/path/to/mpack.tar.gz --verbose