MapR Distribution Plugin ======================== The MapR Sahara plugin allows to provision MapR clusters on OpenStack in an easy way and do it, quickly, conveniently and simply. Operation --------- The MapR Plugin performs the following four primary functions during cluster creation: 1. MapR components deployment - the plugin manages the deployment of the required software to the target VMs 2. Services Installation - MapR services are installed according to provided roles list 3. Services Configuration - the plugin combines default settings with user provided settings 4. Services Start - the plugin starts appropriate services according to specified roles Images ------ The Sahara MapR plugin can make use of either minimal (operating system only) images or pre-populated MapR images. The base requirement for both is that the image is cloud-init enabled and contains a supported operating system (see http://maprdocs.mapr.com/home/InteropMatrix/r_os_matrix.html). The advantage of a pre-populated image is that provisioning time is reduced, as packages do not need to be downloaded which make up the majority of the time spent in the provisioning cycle. In addition, provisioning large clusters will put a burden on the network as packages for all nodes need to be downloaded from the package repository. For more information about MapR images, refer to https://github.com/openstack/sahara-image-elements. There are VM images provided for use with the MapR Plugin, that can also be built using the tools available in sahara-image-elements: https://s3-us-west-2.amazonaws.com/sahara-images/index.html MapR plugin needs an image to be tagged in Sahara Image Registry with two tags: 'mapr' and '' (e.g. '5.2.0.mrv2'). The default username specified for these images is different for each distribution: +--------------+------------+ | OS | username | +==============+============+ | Ubuntu 14 | ubuntu | +--------------+------------+ | CentOS 6 | cloud-user | +--------------+------------+ | CentOS 7 | centos | +--------------+------------+ Hadoop Version Support ---------------------- The MapR plugin currently supports Hadoop 2.7.0 (5.2.0.mrv2). Cluster Validation ------------------ When the user creates or scales a Hadoop cluster using a mapr plugin, the cluster topology requested by the user is verified for consistency. Every MapR cluster must contain: * at least 1 *CLDB* process * exactly 1 *Webserver* process * odd number of *ZooKeeper* processes but not less than 1 * *FileServer* process on every node * at least 1 ephemeral drive (then you need to specify the ephemeral drive in the flavor not on the node group template creation) or 1 Cinder volume per instance Every Hadoop cluster must contain exactly 1 *Oozie* process Every MapReduce v1 cluster must contain: * at least 1 *JobTracker* process * at least 1 *TaskTracker* process Every MapReduce v2 cluster must contain: * exactly 1 *ResourceManager* process * exactly 1 *HistoryServer* process * at least 1 *NodeManager* process Every Spark cluster must contain: * exactly 1 *Spark Master* process * exactly 1 *Spark HistoryServer* process * at least 1 *Spark Slave* (worker) process HBase service is considered valid if: * cluster has at least 1 *HBase-Master* process * cluster has at least 1 *HBase-RegionServer* process Hive service is considered valid if: * cluster has exactly 1 *HiveMetastore* process * cluster has exactly 1 *HiveServer2* process Hue service is considered valid if: * cluster has exactly 1 *Hue* process * *Hue* process resides on the same node as *HttpFS* process HttpFS service is considered valid if cluster has exactly 1 *HttpFS* process Sqoop service is considered valid if cluster has exactly 1 *Sqoop2-Server* process The MapR Plugin --------------- For more information, please contact MapR.