Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Management pack should contain following metadata information in mpack.json.
  • 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-­mpack­1.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.
  • 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)

Management Pack Structure

...

stackXYZ-­ambari-­mpack­1.0.0.0/mpack.json

{

    "type" : "full­releasefull­-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" : "full­releasefull­-release",

    "name" : "myservice­ambari­mpackmyservice-­ambari­-mpack",

    "version": "1.0.0.0",

    "description" : "MyService Management Pack",

    "prerequisites": { "min­ambari­version

        "min-­ambari-­version" : "2.4.0.0", "min­stack­versions

        "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" : "MYSERVICE­common­serviceMYSERVICE­-service-definition",

            "type" : "service­definitionservice­-definition",

           "source_dir" : "common­servicescommon­-services/MYSERVICE/1.0.0",

           "service_name" : "MYSERVICE",

           "service_version" : "1.0.0"

        },

       {  

           "name" : "MYSERVICE­1MYSERVICE­-1.0.0",

           "type" : "stack­extension­definitionstack­-addon-service-­definition",

           "source_dir": "custom­servicesaddon-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" : "MYSERVICE­2MYSERVICE­-2.0.0",

           "type" : "stack­extension­definitionstack-addon-service-definition",

           "source_dir": "custom­servicescustom­-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