diff --git a/releasenotes/notes/mapr-services-new-versions-b32c2e8fe07d1600.yaml b/releasenotes/notes/mapr-services-new-versions-b32c2e8fe07d1600.yaml new file mode 100644 index 00000000..709d3c85 --- /dev/null +++ b/releasenotes/notes/mapr-services-new-versions-b32c2e8fe07d1600.yaml @@ -0,0 +1,8 @@ +--- +features: + - The following service versions were added to MapR 5.2.0 plugin + - HBase 1.1 + - Drill 1.6 + - Mahout 0.11 0.12 + - Spark 1.6.1 + - Impala 2.5 diff --git a/sahara/plugins/mapr/services/drill/drill.py b/sahara/plugins/mapr/services/drill/drill.py index 4e0e6e48..15c55f08 100644 --- a/sahara/plugins/mapr/services/drill/drill.py +++ b/sahara/plugins/mapr/services/drill/drill.py @@ -22,7 +22,7 @@ DRILL = np.NodeProcess( name='drill-bits', ui_name='Drill', package='mapr-drill', - open_ports=[] + open_ports=[8047] ) @@ -81,3 +81,9 @@ class DrillV14(Drill): def __init__(self): super(DrillV14, self).__init__() self._version = "1.4" + + +class DrillV16(Drill): + def __init__(self): + super(DrillV16, self).__init__() + self._version = "1.6" diff --git a/sahara/plugins/mapr/services/hbase/hbase.py b/sahara/plugins/mapr/services/hbase/hbase.py index 510beb63..d608d3f7 100644 --- a/sahara/plugins/mapr/services/hbase/hbase.py +++ b/sahara/plugins/mapr/services/hbase/hbase.py @@ -107,3 +107,14 @@ class HBaseV09812(HBase): self._ui_info.append( ("HBase REST", HBASE_REST, {s.SERVICE_UI: "http://%s:8085"}), ) + + +class HBaseV111(HBase): + def __init__(self): + super(HBaseV111, self).__init__() + self._version = "1.1.1" + self._dependencies = [("mapr-hbase", self.version)] + self._node_processes.append(HBASE_REST) + self._ui_info.append( + ("HBase REST", HBASE_REST, {s.SERVICE_UI: "http://%s:8085"}), + ) diff --git a/sahara/plugins/mapr/services/impala/impala.py b/sahara/plugins/mapr/services/impala/impala.py index ca8ecf8f..57673f64 100644 --- a/sahara/plugins/mapr/services/impala/impala.py +++ b/sahara/plugins/mapr/services/impala/impala.py @@ -16,6 +16,7 @@ import sahara.plugins.mapr.domain.configuration_file as bcf import sahara.plugins.mapr.domain.node_process as np import sahara.plugins.mapr.domain.service as s +import sahara.plugins.mapr.services.hbase.hbase as hbase import sahara.plugins.mapr.services.hive.hive as hive import sahara.plugins.mapr.services.sentry.sentry as sentry import sahara.plugins.mapr.util.general as g @@ -163,3 +164,29 @@ class ImpalaV220(Impala): result += [('mapr-hbase', hbase_version)] return result + + +class ImpalaV250(Impala): + def __init__(self): + super(ImpalaV250, self).__init__() + self._version = '2.5.0' + self._dependencies = [ + ('mapr-hive', hive.HiveV12().version), + ('mapr-impala', self.version), + ('mapr-hbase', hbase.HBaseV111().version) + ] + self._validation_rules = [ + vu.depends_on(hive.HiveV12(), self), + vu.exactly(1, IMPALA_STATE_STORE), + vu.exactly(1, IMPALA_CATALOG), + vu.at_least(1, IMPALA_SERVER), + vu.required_os('centos', self) + ] + + def _get_impala_env_props(self, cluster_context): + return { + 'impala_version': self.version, + 'statestore_host': cluster_context.get_instance_ip( + IMPALA_STATE_STORE), + 'catalog_host': cluster_context.get_instance_ip(IMPALA_CATALOG), + } diff --git a/sahara/plugins/mapr/services/mahout/mahout.py b/sahara/plugins/mapr/services/mahout/mahout.py index b9712294..9069fa46 100644 --- a/sahara/plugins/mapr/services/mahout/mahout.py +++ b/sahara/plugins/mapr/services/mahout/mahout.py @@ -44,3 +44,15 @@ class MahoutV010(Mahout): def __init__(self): super(MahoutV010, self).__init__() self._version = '0.10.0' + + +class MahoutV011(Mahout): + def __init__(self): + super(MahoutV011, self).__init__() + self._version = '0.11.0' + + +class MahoutV012(Mahout): + def __init__(self): + super(MahoutV012, self).__init__() + self._version = '0.12.0' diff --git a/sahara/plugins/mapr/services/spark/spark.py b/sahara/plugins/mapr/services/spark/spark.py index 08a67319..4cf3a4cf 100644 --- a/sahara/plugins/mapr/services/spark/spark.py +++ b/sahara/plugins/mapr/services/spark/spark.py @@ -265,3 +265,10 @@ class SparkOnYarn(s.Service): for instance in cluster_context.get_instances(SPARK_SLAVE): with instance.remote() as r2: mfs.exchange(r1, r2, jar_path, path, 'mapr') + + +class SparkOnYarnV161(SparkOnYarn): + def __init__(self): + super(SparkOnYarnV161, self).__init__() + self._version = '1.6.1' + self._dependencies = [('mapr-spark', self.version)]