You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ab...@apache.org on 2016/05/25 12:43:43 UTC
ambari git commit: AMBARI-16869 Stack advisor recommendation not
working for HBASE. (ababiichuk)
Repository: ambari
Updated Branches:
refs/heads/trunk 27d1777ec -> c8c31db11
AMBARI-16869 Stack advisor recommendation not working for HBASE. (ababiichuk)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c8c31db1
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c8c31db1
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c8c31db1
Branch: refs/heads/trunk
Commit: c8c31db11223804895485e4264c15fa0f819378f
Parents: 27d1777
Author: ababiichuk <ab...@hortonworks.com>
Authored: Wed May 25 15:07:08 2016 +0300
Committer: ababiichuk <ab...@hortonworks.com>
Committed: Wed May 25 15:07:08 2016 +0300
----------------------------------------------------------------------
.../services/HBASE/configuration/hbase-site.xml | 28 +++++
.../stacks/HDP/2.5/services/HBASE/kerberos.json | 126 +++++++++++++++++++
.../stacks/HDP/2.5/services/stack_advisor.py | 5 +-
3 files changed, 157 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/c8c31db1/ambari-server/src/main/resources/stacks/HDP/2.5/services/HBASE/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.5/services/HBASE/configuration/hbase-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.5/services/HBASE/configuration/hbase-site.xml
new file mode 100644
index 0000000..d8b61e3
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/HDP/2.5/services/HBASE/configuration/hbase-site.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+-->
+<configuration>
+
+ <property>
+ <name>hbase.master.ui.readonly</name>
+ <value>false</value>
+ </property>
+
+</configuration>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/c8c31db1/ambari-server/src/main/resources/stacks/HDP/2.5/services/HBASE/kerberos.json
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.5/services/HBASE/kerberos.json b/ambari-server/src/main/resources/stacks/HDP/2.5/services/HBASE/kerberos.json
new file mode 100644
index 0000000..5cfe42d
--- /dev/null
+++ b/ambari-server/src/main/resources/stacks/HDP/2.5/services/HBASE/kerberos.json
@@ -0,0 +1,126 @@
+{
+ "services": [
+ {
+ "name": "HBASE",
+ "identities": [
+ {
+ "name": "/spnego"
+ },
+ {
+ "name": "hbase",
+ "principal": {
+ "value": "${hbase-env/hbase_user}-${cluster_name|toLower()}@${realm}",
+ "type" : "user",
+ "configuration": "hbase-env/hbase_principal_name",
+ "local_username": "${hbase-env/hbase_user}"
+ },
+ "keytab": {
+ "file": "${keytab_dir}/hbase.headless.keytab",
+ "owner": {
+ "name": "${hbase-env/hbase_user}",
+ "access": "r"
+ },
+ "group": {
+ "name": "${cluster-env/user_group}",
+ "access": "r"
+ },
+ "configuration": "hbase-env/hbase_user_keytab"
+ }
+ },
+ {
+ "name": "/smokeuser"
+ }
+ ],
+ "configurations": [
+ {
+ "hbase-site": {
+ "hbase.security.authentication": "kerberos",
+ "hbase.security.authorization": "true",
+ "zookeeper.znode.parent": "/hbase-secure",
+ "hbase.coprocessor.master.classes": "{{hbase_coprocessor_master_classes}}",
+ "hbase.coprocessor.region.classes": "{{hbase_coprocessor_region_classes}}",
+ "hbase.coprocessor.regionserver.classes": "{{hbase_coprocessor_regionserver_classes}}",
+ "hbase.bulkload.staging.dir": "/apps/hbase/staging",
+ "hbase.master.ui.readonly": "true"
+ }
+ },
+ {
+ "core-site": {
+ "hadoop.proxyuser.HTTP.hosts": "${clusterHostInfo/phoenix_query_server_hosts}"
+ }
+ }
+ ],
+ "components": [
+ {
+ "name": "HBASE_MASTER",
+ "identities": [
+ {
+ "name": "/HDFS/NAMENODE/hdfs"
+ },
+ {
+ "name": "hbase_master_hbase",
+ "principal": {
+ "value": "hbase/_HOST@${realm}",
+ "type" : "service",
+ "configuration": "hbase-site/hbase.master.kerberos.principal",
+ "local_username": "${hbase-env/hbase_user}"
+ },
+ "keytab": {
+ "file": "${keytab_dir}/hbase.service.keytab",
+ "owner": {
+ "name": "${hbase-env/hbase_user}",
+ "access": "r"
+ },
+ "group": {
+ "name": "${cluster-env/user_group}",
+ "access": ""
+ },
+ "configuration": "hbase-site/hbase.master.keytab.file"
+ }
+ }
+ ]
+ },
+ {
+ "name": "HBASE_REGIONSERVER",
+ "identities": [
+ {
+ "name": "hbase_regionserver_hbase",
+ "principal": {
+ "value": "hbase/_HOST@${realm}",
+ "type" : "service",
+ "configuration": "hbase-site/hbase.regionserver.kerberos.principal",
+ "local_username": "${hbase-env/hbase_user}"
+ },
+ "keytab": {
+ "file": "${keytab_dir}/hbase.service.keytab",
+ "owner": {
+ "name": "${hbase-env/hbase_user}",
+ "access": "r"
+ },
+ "group": {
+ "name": "${cluster-env/user_group}",
+ "access": ""
+ },
+ "configuration": "hbase-site/hbase.regionserver.keytab.file"
+ }
+ }
+ ]
+ },
+ {
+ "name": "PHOENIX_QUERY_SERVER",
+ "identities": [
+ {
+ "name": "/spnego",
+ "principal": {
+ "configuration": "hbase-site/phoenix.queryserver.kerberos.principal"
+ },
+ "keytab": {
+ "configuration": "hbase-site/phoenix.queryserver.keytab.file"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
http://git-wip-us.apache.org/repos/asf/ambari/blob/c8c31db1/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py b/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py
index f07669b..af812fe 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py
@@ -140,8 +140,9 @@ class HDP25StackAdvisor(HDP24StackAdvisor):
def recommendHBASEConfigurations(self, configurations, clusterData, services, hosts):
super(HDP25StackAdvisor, self).recommendHBASEConfigurations(configurations, clusterData, services, hosts)
putHbaseSiteProperty = self.putProperty(configurations, "hbase-site", services)
- if "cluster-env" in services["configurations"] and "security_enabled" in services["configurations"]["cluster-env"]["properties"] \
- and services["configurations"]["cluster-env"]["properties"]["security_enabled"].lower() == "true":
+ servicesList = [service["StackServices"]["service_name"] for service in services["services"]]
+
+ if 'KERBEROS' in servicesList:
putHbaseSiteProperty('hbase.master.ui.readonly', 'true')
else:
putHbaseSiteProperty('hbase.master.ui.readonly', 'false')