sahara/sahara/plugins/mapr/versions/v5_0_0_mrv2/context.py

61 lines
2.2 KiB
Python

# Copyright (c) 2015, MapR Technologies
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
import sahara.plugins.mapr.base.base_cluster_context as bc
import sahara.plugins.mapr.services.yarn.yarn as yarn
class Context(bc.BaseClusterContext):
def __init__(self, cluster, version_handler, added=None, removed=None):
super(Context, self).__init__(cluster, version_handler, added, removed)
self._hadoop_version = yarn.YARNv270().version
self._hadoop_lib = None
self._hadoop_conf = None
self._cluster_mode = yarn.YARNv270.cluster_mode
self._node_aware = True
self._resource_manager_uri = "maprfs:///"
self._mapr_version = "5.0.0"
self._ubuntu_ecosystem_repo = (
"http://package.mapr.com/releases/ecosystem-5.x/ubuntu binary/")
self._centos_ecosystem_repo = (
"http://package.mapr.com/releases/ecosystem-5.x/redhat")
@property
def hadoop_lib(self):
if not self._hadoop_lib:
self._hadoop_lib = "%s/share/hadoop/common" % self.hadoop_home
return self._hadoop_lib
@property
def hadoop_conf(self):
if not self._hadoop_conf:
self._hadoop_conf = "%s/etc/hadoop" % self.hadoop_home
return self._hadoop_conf
@property
def resource_manager_uri(self):
return self._resource_manager_uri
@property
def configure_sh(self):
if not self._configure_sh:
configure_sh_template = "%(base)s -HS %(history_server)s"
args = {
"base": super(Context, self).configure_sh,
"history_server": self.get_historyserver_ip(),
}
self._configure_sh = configure_sh_template % args
return self._configure_sh