AMBARI-21455. Remove unnecessary services from BigInsights stack (alejandro)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/08f48c1e Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/08f48c1e Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/08f48c1e Branch: refs/heads/branch-feature-AMBARI-21348 Commit: 08f48c1eb85a3763891584b835977809936f3a19 Parents: 4bbdd0e Author: Alejandro Fernandez <afernan...@hortonworks.com> Authored: Wed Jul 12 10:22:27 2017 -0700 Committer: Alejandro Fernandez <afernan...@hortonworks.com> Committed: Wed Jul 12 11:31:17 2017 -0700 ---------------------------------------------------------------------- .../BigInsights/4.2.5/role_command_order.json | 12 +- .../BigInsights/4.2.5/services/stack_advisor.py | 53 -------- .../BigInsights/4.2/role_command_order.json | 3 +- .../4.2/services/SYSTEMML/metainfo.xml | 77 ----------- .../SYSTEMML/package/scripts/__init__.py | 19 --- .../services/SYSTEMML/package/scripts/params.py | 40 ------ .../SYSTEMML/package/scripts/service_check.py | 43 ------- .../SYSTEMML/package/scripts/systemml_client.py | 49 ------- .../services/TITAN/configuration/titan-env.xml | 48 ------- .../TITAN/configuration/titan-hbase-solr.xml | 67 ---------- .../TITAN/configuration/titan-log4j.xml | 66 ---------- .../4.2/services/TITAN/kerberos.json | 17 --- .../BigInsights/4.2/services/TITAN/metainfo.xml | 88 ------------- .../TITAN/package/files/titanSmoke.groovy | 20 --- .../services/TITAN/package/scripts/params.py | 128 ------------------- .../TITAN/package/scripts/service_check.py | 64 ---------- .../4.2/services/TITAN/package/scripts/titan.py | 70 ---------- .../TITAN/package/scripts/titan_client.py | 58 --------- 18 files changed, 3 insertions(+), 919 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/role_command_order.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/role_command_order.json b/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/role_command_order.json index dc4811b..35fc0d8 100755 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/role_command_order.json +++ b/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/role_command_order.json @@ -4,22 +4,14 @@ "general_deps" : { "_comment" : "dependencies for all cases", "HIVE_SERVER_INTERACTIVE-START": ["RESOURCEMANAGER-START", "NODEMANAGER-START", "MYSQL_SERVER-START"], - "RESOURCEMANAGER-STOP": ["HIVE_SERVER_INTERACTIVE-STOP", "SPARK2_THRIFTSERVER-STOP", "KERNEL_GATEWAY-STOP" ], + "RESOURCEMANAGER-STOP": ["HIVE_SERVER_INTERACTIVE-STOP", "SPARK2_THRIFTSERVER-STOP"], "NODEMANAGER-STOP": ["HIVE_SERVER_INTERACTIVE-STOP", "KERNEL_GATEWAY-STOP" ], "NAMENODE-STOP": ["HIVE_SERVER_INTERACTIVE-STOP"], "HIVE_SERVER_INTERACTIVE-RESTART": ["NODEMANAGER-RESTART", "MYSQL_SERVER-RESTART"], "HIVE_SERVICE_CHECK-SERVICE_CHECK": ["HIVE_SERVER-START", "HIVE_METASTORE-START", "WEBHCAT_SERVER-START", "HIVE_SERVER_INTERACTIVE-START"], "RANGER_ADMIN-START": ["ZOOKEEPER_SERVER-START", "INFRA_SOLR-START"], "SPARK2_SERVICE_CHECK-SERVICE_CHECK" : ["SPARK2_JOBHISTORYSERVER-START", "APP_TIMELINE_SERVER-START"], - "HBASE_REST_SERVER-START": ["HBASE_MASTER-START"], - "TITAN_SERVER-START" : ["HBASE_SERVICE_CHECK-SERVICE_CHECK", "SOLR-START"], - "TITAN_SERVICE_CHECK-SERVICE_CHECK": ["TITAN_SERVER-START"], - "KERNEL_GATEWAY-INSTALL": ["SPARK2_CLIENT-INSTALL"], - "PYTHON_CLIENT-INSTALL": ["KERNEL_GATEWAY-INSTALL"], - "KERNEL_GATEWAY-START": ["NAMENODE-START", "DATANODE-START", "RESOURCEMANAGER-START", "NODEMANAGER-START", "SPARK2_JOBHISTORYSERVER-START"], - "JNBG_SERVICE_CHECK-SERVICE_CHECK": ["KERNEL_GATEWAY-START"], - "R4ML-INSTALL": ["SPARK2_CLIENT-INSTALL", "SYSTEMML-INSTALL"], - "R4ML_SERVICE_CHECK-SERVICE_CHECK": ["NAMENODE-START", "DATANODE-START", "SPARK2_JOBHISTORYSERVER-START"] + "HBASE_REST_SERVER-START": ["HBASE_MASTER-START"] }, "_comment" : "Dependencies that are used when GLUSTERFS is not present in cluster", "optional_no_glusterfs": { http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/stack_advisor.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/stack_advisor.py b/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/stack_advisor.py index 8883f57..1caa307 100755 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/stack_advisor.py +++ b/ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/stack_advisor.py @@ -26,9 +26,7 @@ class BigInsights425StackAdvisor(BigInsights42StackAdvisor): parentRecommendConfDict = super(BigInsights425StackAdvisor, self).getServiceConfigurationRecommenderDict() childRecommendConfDict = { "HDFS": self.recommendHDFSConfigurations, - "JNBG": self.recommendJNBGConfigurations, "SOLR": self.recommendSolrConfigurations, - "TITAN": self.recommendTitanConfigurations, "RANGER": self.recommendRangerConfigurations } parentRecommendConfDict.update(childRecommendConfDict) @@ -37,55 +35,11 @@ class BigInsights425StackAdvisor(BigInsights42StackAdvisor): def getServiceConfigurationValidators(self): parentValidators = super(BigInsights425StackAdvisor, self).getServiceConfigurationValidators() childValidators = { - "JNBG": {"jnbg-env": self.validateJNBGConfigurations}, "SOLR": {"ranger-solr-plugin-properties": self.validateSolrRangerPluginConfigurations} } self.mergeValidators(parentValidators, childValidators) return parentValidators - def recommendJNBGConfigurations(self, configurations, clusterData, services, hosts): - putJNBGEnvProperty = self.putProperty(configurations, "jnbg-env", services) - putJNBGEnvPropertyAttribute = self.putPropertyAttribute(configurations, "jnbg-env") - - distro_version = platform.linux_distribution()[1] - # On RHEL 6.x default path does not point to a Python 2.7 - # so empty out the field and force user to update the path - if distro_version < "7.0": - putJNBGEnvProperty('python_interpreter_path', "") - - def validateJNBGConfigurations(self, properties, recommendedDefaults, configurations, services, hosts): - validationItems = [] - jnbg_env = getSiteProperties(configurations, "jnbg-env") - py_exec = jnbg_env.get("python_interpreter_path") if jnbg_env and "python_interpreter_path" in jnbg_env else [] - - # Test that it is a valid executable path before proceeding - if not os.path.isfile(py_exec) and not os.access(py_exec, os.X_OK): - validationItems.append({"config-name": "python_interpreter_path", - "item": self.getErrorItem("Invalid Python interpreter path specified")}) - return self.toConfigurationValidationProblems(validationItems, "jnbg-env") - - distro_version = platform.linux_distribution()[1] - if distro_version < "7.0" and (py_exec == "/opt/rh/python27/root/usr/bin/python" or py_exec == "/opt/rh/python27/root/usr/bin/python2" or py_exec == "/opt/rh/python27/root/usr/bin/python2.7"): - # Special handling for RHSCL Python 2.7 - proc = Popen(['/usr/bin/scl', 'enable', 'python27', '/opt/rh/python27/root/usr/bin/python' ' -V'], stderr=PIPE) - else: - proc = Popen([py_exec, '-V'], stderr=PIPE) - py_string = proc.communicate()[1] - py_version = py_string.split()[1] - - if "Python" not in py_string: - validationItems.append({"config-name": "python_interpreter_path", - "item": self.getErrorItem("Path specified does not appear to be a Python interpreter")}) - return self.toConfigurationValidationProblems(validationItems, "jnbg-env") - - # Validate that the specified python is 2.7.x (not > 2.x.x and not < 2.7) - if not py_version.split('.')[0] == '2' or (py_version.split('.')[0] == '2' and py_version.split('.')[1] < '7'): - validationItems.append({"config-name": "python_interpreter_path", - "item": self.getErrorItem("Specified Python interpreter must be version >= 2.7 and < 3.0")}) - return self.toConfigurationValidationProblems(validationItems, "jnbg-env") - - return self.toConfigurationValidationProblems(validationItems, "jnbg-env") - def recommendRangerConfigurations(self, configurations, clusterData, services, hosts): super(BigInsights425StackAdvisor, self).recommendRangerConfigurations(configurations, clusterData, services, hosts) putRangerAdminProperty = self.putProperty(configurations, "ranger-admin-site", services) @@ -96,13 +50,6 @@ class BigInsights425StackAdvisor(BigInsights42StackAdvisor): zookeeper_host_port = ",".join(zookeeper_host_port) ranger_audit_zk_port = '{0}/{1}'.format(zookeeper_host_port, 'solr') putRangerAdminProperty('ranger.audit.solr.zookeepers', ranger_audit_zk_port) - - def recommendTitanConfigurations(self, configurations, clusterData, services, hosts): - putTitanPropertyAttribute = self.putPropertyAttribute(configurations, "titan-env") - servicesList = [service["StackServices"]["service_name"] for service in services["services"]] - knox_enabled = "KNOX" in servicesList - if knox_enabled: - putTitanPropertyAttribute("SimpleAuthenticator", "visible", "false") def recommendSolrConfigurations(self, configurations, clusterData, services, hosts): super(BigInsights425StackAdvisor, self).recommendSolrConfigurations(configurations, clusterData, services, hosts) http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/role_command_order.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/role_command_order.json b/ambari-server/src/main/resources/stacks/BigInsights/4.2/role_command_order.json index 5ee4b32..cc45213 100755 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/role_command_order.json +++ b/ambari-server/src/main/resources/stacks/BigInsights/4.2/role_command_order.json @@ -19,8 +19,7 @@ "ATLAS_SERVICE_CHECK-SERVICE_CHECK": ["ATLAS_SERVER-START"], "PHOENIX_QUERY_SERVER-START": ["HBASE_MASTER-START"], "OOZIE_SERVER-START": ["FALCON_SERVER-START"], - "FALCON_SERVICE_CHECK-SERVICE_CHECK": ["FALCON_SERVER-START"], - "TITAN_SERVICE_CHECK-SERVICE_CHECK": ["HBASE_SERVICE_CHECK-SERVICE_CHECK"] + "FALCON_SERVICE_CHECK-SERVICE_CHECK": ["FALCON_SERVER-START"] }, "_comment" : "Dependencies that are used when GLUSTERFS is not present in cluster", "optional_no_glusterfs": { http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/metainfo.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/metainfo.xml b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/metainfo.xml deleted file mode 100755 index b73e31e..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/metainfo.xml +++ /dev/null @@ -1,77 +0,0 @@ -<?xml version="1.0"?> -<!-- - 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. ---> -<metainfo> - <schemaVersion>2.0</schemaVersion> - <services> - <service> - <name>SYSTEMML</name> - <displayName>SystemML</displayName> - <comment>Apache SystemML is a distributed and declarative machine learning platform.</comment> - <version>0.10.0.4.2</version> - <components> - <component> - <name>SYSTEMML</name> - <displayName>SystemML</displayName> - <category>CLIENT</category> - <cardinality>0+</cardinality> - <versionAdvertised>true</versionAdvertised> - <dependencies> - <dependency> - <name>HDFS/HDFS_CLIENT</name> - <scope>host</scope> - <auto-deploy> - <enabled>true</enabled> - </auto-deploy> - </dependency> - </dependencies> - <commandScript> - <script>scripts/systemml_client.py</script> - <scriptType>PYTHON</scriptType> - <timeout>600</timeout> - </commandScript> - <configFiles> - </configFiles> - </component> - </components> - <osSpecifics> - <osSpecific> - <osFamily>any</osFamily> - <packages> - <package> - <name>apache_systemml*</name> - </package> - </packages> - </osSpecific> - </osSpecifics> - - <commandScript> - <script>scripts/service_check.py</script> - <scriptType>PYTHON</scriptType> - <timeout>300</timeout> - </commandScript> - - <requiredServices> - <service>HDFS</service> - </requiredServices> - - <configuration-dependencies> - </configuration-dependencies> - - </service> - </services> -</metainfo> http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/__init__.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/__init__.py b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/__init__.py deleted file mode 100755 index 5561e10..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -#!/usr/bin/env python -""" -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. - -""" http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/params.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/params.py b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/params.py deleted file mode 100755 index dd7e46c..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/params.py +++ /dev/null @@ -1,40 +0,0 @@ -""" -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. - -""" -from resource_management.libraries.functions.default import default -from resource_management.libraries.functions.format import format -from resource_management.libraries.functions.version import format_stack_version -from resource_management.libraries.functions import stack_select -from resource_management.libraries.script.script import Script - -# server configurations -config = Script.get_config() -stack_root = Script.get_stack_root() - -systemml_home_dir = format("{stack_root}/current/systemml-client") -systemml_lib_dir = format("{systemml_home_dir}/lib") -systemml_scripts_dir = format("{systemml_home_dir}/scripts") - -stack_version_unformatted = str(config['hostLevelParams']['stack_version']) -stack_version = format_stack_version(stack_version_unformatted) - -# New Cluster Stack Version that is defined during the RESTART of a Rolling Upgrade -version = default("/commandParams/version", None) -stack_name = default("/hostLevelParams/stack_name", None) - -java_home = config['hostLevelParams']['java_home'] http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/service_check.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/service_check.py b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/service_check.py deleted file mode 100755 index c15b907..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/service_check.py +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/env python -""" -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. - -""" - -from resource_management import * -from resource_management.libraries.functions.format import format -import subprocess -import os - -class SystemMLServiceCheck(Script): - def service_check(self, env): - import params - env.set_params(params) - - if os.path.exists(params.systemml_lib_dir): - cp = format("{params.stack_root}/current/hadoop-client/*:{params.stack_root}/current/hadoop-mapreduce-client/*:{params.stack_root}/current/hadoop-client/lib/*:{params.systemml_lib_dir}/systemml.jar") - java = format("{params.java_home}/bin/java") - command = [java, "-cp", cp, "org.apache.sysml.api.DMLScript", "-s", "print('Apache SystemML');"] - process = subprocess.Popen(command, stdout=subprocess.PIPE) - output = process.communicate()[0] - print output - - if 'Apache SystemML' not in output: - raise Fail("Expected output Apache SystemML not found.") - -if __name__ == "__main__": - SystemMLServiceCheck().execute() http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/systemml_client.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/systemml_client.py b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/systemml_client.py deleted file mode 100755 index 2d45b68..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SYSTEMML/package/scripts/systemml_client.py +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/python -""" -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. - -""" - -import sys -from resource_management import * -#from resource_management.libraries.functions import conf_select -from resource_management.libraries.functions import stack_select - - -class SystemMLClient(Script): - - def get_component_name(self): - return "systemml-client" - - def pre_upgrade_restart(self, env, upgrade_type=None): - import params - - env.set_params(params) - if params.version and check_stack_feature(StackFeature.ROLLING_UPGRADE, params.version): - #conf_select.select(params.stack_name, "systemml", params.version) - stack_select.select("systemml-client", params.version) - - def install(self, env): - self.install_packages(env) - - def status(self, env): - raise ClientComponentHasNoStatus() - - -if __name__ == "__main__": - SystemMLClient().execute() - http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-env.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-env.xml b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-env.xml deleted file mode 100755 index 4f80ea1..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-env.xml +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0"?> -<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> -<!-- -/** - * 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 supports_final="false" supports_do_not_extend="true"> - - <property> - <name>titan_user</name> - <description>User to run Titan as</description> - <on-ambari-upgrade add="true"/> - <property-type>USER</property-type> - <value>titan</value> - </property> - - <property> - <name>content</name> - <description>This is the template for titan-env.sh file</description> - <value> -# Set JAVA HOME -export JAVA_HOME={{java64_home}} - -# Add hadoop and hbase configuration directories into classpath -export HADOOP_CONF_DIR={{hadoop_config_dir}} -export HBASE_CONF_DIR={{hbase_config_dir}} -CLASSPATH=$HADOOP_CONF_DIR:$HBASE_CONF_DIR:$CLASSPATH - </value> - <on-ambari-upgrade add="true"/> - </property> - -</configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-hbase-solr.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-hbase-solr.xml b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-hbase-solr.xml deleted file mode 100755 index dd45141..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-hbase-solr.xml +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> -<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> -<!-- -/** - * 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 supports_final="false" supports_adding_forbidden="true" supports_do_not_extend="true"> - - <property> - <name>content</name> - <description>Describe the configurations for Solr</description> - <value># Titan configuration sample: HBase and Solr -# ATTENTION: If you would like to use this property, do manually execute titan-solr-connection.sh before build index. - -# This file connects to HBase using a Zookeeper quorum -# (storage.hostname) consisting solely of localhost. It also -# connects to Solr running on localhost using Solr's HTTP API. -# Zookeeper, the HBase services, and Solr must already be -# running and available before starting Titan with this file. -storage.backend=hbase -storage.hostname={{storage_host}} -storage.hbase.table=titan_solr -storage.hbase.ext.zookeeper.znode.parent={{hbase_zookeeper_parent}} - -cache.db-cache = true -cache.db-cache-clean-wait = 20 -cache.db-cache-time = 180000 -cache.db-cache-size = 0.5 - -# The indexing backend used to extend and optimize Titan's query -# functionality. This setting is optional. Titan can use multiple -# heterogeneous index backends. Hence, this option can appear more than -# once, so long as the user-defined name between "index" and "backend" is -# unique among appearances.Similar to the storage backend, this should be -# set to one of Titan's built-in shorthand names for its standard index -# backends (shorthands: lucene, elasticsearch, es, solr) or to the full -# package and classname of a custom/third-party IndexProvider -# implementation. - -index.search.backend=solr -index.search.solr.mode=cloud -index.search.solr.zookeeper-url={{solr_server_host}}/solr -index.search.solr.configset=titan - </value> - <on-ambari-upgrade add="true"/> - <value-attributes> - <show-property-name>false</show-property-name> - </value-attributes> - </property> - -</configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-log4j.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-log4j.xml b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-log4j.xml deleted file mode 100755 index f61a479..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/configuration/titan-log4j.xml +++ /dev/null @@ -1,66 +0,0 @@ -<?xml version="1.0"?> -<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> -<!-- -/** - * 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 supports_final="false" supports_do_not_extend="true"> - - <property> - <name>content</name> - <description>Custom log4j-console.properties</description> - <value> - # Used by gremlin.sh - - log4j.appender.A2=org.apache.log4j.ConsoleAppender - log4j.appender.A2.Threshold=TRACE - log4j.appender.A2.layout=org.apache.log4j.PatternLayout - log4j.appender.A2.layout.ConversionPattern=%d{HH:mm:ss} %-5p %c %x - %m%n - - log4j.rootLogger=${gremlin.log4j.level}, A2 - - #log4j.logger.com.thinkaurelius.titan.graphdb.database.idassigner.placement=DEBUG - #log4j.logger.com.thinkaurelius.titan.diskstorage.hbase.HBaseStoreManager=DEBUG - - # Disable spurious Hadoop config deprecation warnings under 2.2.0. - # - # See https://issues.apache.org/jira/browse/HADOOP-10178 - # - # This can and should be deleted when we upgrade our Hadoop 2.2.0 - # dependency to 2.3.0 or 3.0.0. - log4j.logger.org.apache.hadoop.conf.Configuration.deprecation=OFF - - # Configure MR at its own loglevel. We usually want MR at INFO, - # even if the rest of the loggers are at WARN or ERROR or FATAL, - # because job progress information is at INFO. - log4j.logger.org.apache.hadoop.mapred=${gremlin.mr.log4j.level} - log4j.logger.org.apache.hadoop.mapreduce=${gremlin.mr.log4j.level} - - # This generates 3 INFO lines per jar on the classpath -- usually more - # noise than desirable in the REPL. Switching it to the default - # log4j level means it will be at WARN by default, which is ideal. - log4j.logger.org.apache.hadoop.mapred.LocalDistributedCacheManager=${gremlin.log4j.level} - </value> - <on-ambari-upgrade add="true"/> - <value-attributes> - <show-property-name>false</show-property-name> - </value-attributes> - </property> - -</configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/kerberos.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/kerberos.json b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/kerberos.json deleted file mode 100755 index ccabbf0..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/kerberos.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "services": [ - { - "name": "TITAN", - "components": [ - { - "name": "TITAN", - "identities": [ - { - "name": "/HDFS/NAMENODE/hdfs" - } - ] - } - ] - } - ] -} http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/metainfo.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/metainfo.xml b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/metainfo.xml deleted file mode 100755 index 73f4635..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/metainfo.xml +++ /dev/null @@ -1,88 +0,0 @@ -<?xml version="1.0"?> -<!-- - 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. ---> -<metainfo> - <schemaVersion>2.0</schemaVersion> - <services> - <service> - <name>TITAN</name> - <displayName>Titan</displayName> - <comment>Titan is a scalable graph database optimized for storing and querying graphs containing hundreds of - billions of vertices and edges distributed across a multi-machine cluster.</comment> - <version>1.0.0</version> - <components> - <component> - <name>TITAN</name> - <displayName>Titan</displayName> - <category>CLIENT</category> - <cardinality>0+</cardinality> - <versionAdvertised>true</versionAdvertised> - <commandScript> - <script>scripts/titan_client.py</script> - <scriptType>PYTHON</scriptType> - <timeout>600</timeout> - </commandScript> - <configFiles> - <configFile> - <type>env</type> - <fileName>titan-env.sh</fileName> - <dictionaryName>titan-env</dictionaryName> - </configFile> - <configFile> - <type>env</type> - <fileName>log4j-console.properties</fileName> - <dictionaryName>titan-log4j</dictionaryName> - </configFile> - <configFile> - <type>env</type> - <fileName>titan-hbase-solr.properties</fileName> - <dictionaryName>titan-hbase-solr</dictionaryName> - </configFile> - </configFiles> - </component> - </components> - <osSpecifics> - <osSpecific> - <osFamily>any</osFamily> - <packages> - <package> - <name>titan_4_2_*</name> - </package> - </packages> - </osSpecific> - </osSpecifics> - - <commandScript> - <script>scripts/service_check.py</script> - <scriptType>PYTHON</scriptType> - <timeout>300</timeout> - </commandScript> - - <requiredServices> - <service>HDFS</service> - <service>HBASE</service> - <service>SOLR</service> - </requiredServices> - - <configuration-dependencies> - <config-type>titan-env</config-type> - <config-type>titan-hbase-solr</config-type> - <config-type>titan-log4j</config-type> - </configuration-dependencies> - </service> - </services> -</metainfo> http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/files/titanSmoke.groovy ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/files/titanSmoke.groovy b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/files/titanSmoke.groovy deleted file mode 100755 index 79438be..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/files/titanSmoke.groovy +++ /dev/null @@ -1,20 +0,0 @@ -/*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 */ - -import com.thinkaurelius.titan.core.TitanFactory; - -graph = TitanFactory.open("/etc/titan/conf/titan-hbase-solr.properties") -g = graph.traversal() -l = g.V().values('name').toList() http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/params.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/params.py b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/params.py deleted file mode 100755 index 3cb7aef..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/params.py +++ /dev/null @@ -1,128 +0,0 @@ -""" -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. - -Ambari Agent - -""" - -from resource_management.libraries.script.script import Script -from resource_management.libraries.resources.hdfs_resource import HdfsResource -from resource_management.libraries.functions import conf_select -from resource_management.libraries.functions import stack_select -from resource_management.libraries.functions.format import format -from resource_management.libraries.functions.version import format_stack_version -from resource_management.libraries.functions.default import default -from resource_management.libraries.functions import get_kinit_path - -# server configurations -config = Script.get_config() -tmp_dir = Script.get_tmp_dir() - -stack_name = default("/hostLevelParams/stack_name", None) - -stack_version_unformatted = str(config['hostLevelParams']['stack_version']) -iop_stack_version = format_stack_version(stack_version_unformatted) - -# New Cluster Stack Version that is defined during the RESTART of a Rolling Upgrade -version = default("/commandParams/version", None) - -titan_user = config['configurations']['titan-env']['titan_user'] -user_group = config['configurations']['cluster-env']['user_group'] -titan_bin_dir = '/usr/iop/current/titan-client/bin' - - -smokeuser = config['configurations']['cluster-env']['smokeuser'] -smokeuser_principal = config['configurations']['cluster-env']['smokeuser_principal_name'] - -security_enabled = config['configurations']['cluster-env']['security_enabled'] -smoke_user_keytab = config['configurations']['cluster-env']['smokeuser_keytab'] -kinit_path_local = get_kinit_path(default('/configurations/kerberos-env/executable_search_paths', None)) - -# titan configurations -titan_conf_dir = "/usr/iop/current/titan-client/conf" -titan_hbase_solr_props = config['configurations']['titan-hbase-solr']['content'] -titan_env_props = config['configurations']['titan-env']['content'] -log4j_console_props = config['configurations']['titan-log4j']['content'] - -# not supporting 32 bit jdk. -java64_home = config['hostLevelParams']['java_home'] -hadoop_config_dir = '/etc/hadoop/conf' -hbase_config_dir = '/etc/hbase/conf' - -# Titan required 'storage.hostname' which is hbase cluster in IOP 4.2. -# The host name should be zooKeeper quorum -storage_hosts = config['clusterHostInfo']['zookeeper_hosts'] -storage_host_list = [] -for hostname in storage_hosts: - storage_host_list.append(hostname) -storage_host = ",".join(storage_host_list) -hbase_zookeeper_parent = config['configurations']['hbase-site']['zookeeper.znode.parent'] - -# Solr cloud host -solr_hosts = config['clusterHostInfo']['solr_hosts'] -solr_host_list = [] -for hostname in solr_hosts: - solr_host_list.append(hostname) -solr_host = ",".join(solr_host_list) -solr_server_host = solr_hosts[0] - -# Titan client, it does not work right now, there is no 'titan_host' in 'clusterHostInfo' -# It will return "Configuration parameter 'titan_host' was not found in configurations dictionary!" -# So here is a known issue as task 118900, will install titan and solr on same node right now. -# titan_host = config['clusterHostInfo']['titan_host'] -titan_host = solr_server_host - -# Conf directory and jar should be copy to solr site -titan_dir = format('/usr/iop/current/titan-client') -titan_ext_dir = format('/usr/iop/current/titan-client/ext') -titan_solr_conf_dir = format('/usr/iop/current/titan-client/conf/solr') -titan_solr_jar_file = format('/usr/iop/current/titan-client/lib/jts-1.13.jar') - -titan_solr_hdfs_dir = "/apps/titan" -titan_solr_hdfs_conf_dir = "/apps/titan/conf" -titan_solr_hdfs_jar = "/apps/titan/jts-1.13.jar" -titan_tmp_dir = format('{tmp_dir}/titan') -titan_solr_dir = format('{titan_tmp_dir}/solr_installed') -configuration_tags = config['configurationTags'] -hdfs_user = config['configurations']['hadoop-env']['hdfs_user'] -titan_hdfs_mode = 0775 - -#for create_hdfs_directory -security_enabled = config['configurations']['cluster-env']['security_enabled'] -hdfs_user_keytab = config['configurations']['hadoop-env']['hdfs_user_keytab'] -kinit_path_local = get_kinit_path() -hadoop_bin_dir = stack_select.get_hadoop_dir("bin") -hadoop_conf_dir = conf_select.get_hadoop_conf_dir() -hdfs_site = config['configurations']['hdfs-site'] -hdfs_principal_name = default('/configurations/hadoop-env/hdfs_principal_name', 'missing_principal').replace("_HOST", hostname) -default_fs = config['configurations']['core-site']['fs.defaultFS'] - -import functools -#to create hdfs directory we need to call params.HdfsResource in code -HdfsResource = functools.partial( - HdfsResource, - user = hdfs_user, - security_enabled = security_enabled, - keytab = hdfs_user_keytab, - kinit_path_local = kinit_path_local, - hadoop_bin_dir = hadoop_bin_dir, - hadoop_conf_dir = hadoop_conf_dir, - principal_name = hdfs_principal_name, - hdfs_site = hdfs_site, - default_fs = default_fs -) - http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/service_check.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/service_check.py b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/service_check.py deleted file mode 100755 index 3c011a1..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/service_check.py +++ /dev/null @@ -1,64 +0,0 @@ -""" -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. - -Ambari Agent - -""" - -import os -from resource_management import * -from resource_management.core.resources.system import Execute, File -from resource_management.core.source import InlineTemplate, StaticFile -from resource_management.libraries.functions.format import format -from resource_management.libraries.functions.version import compare_versions -from resource_management.libraries.functions.copy_tarball import copy_to_hdfs -from resource_management.libraries.script.script import Script -from resource_management.libraries.functions.validate import call_and_match_output -from ambari_commons.os_family_impl import OsFamilyFuncImpl, OsFamilyImpl - -class TitanServiceCheck(Script): - pass - -@OsFamilyImpl(os_family=OsFamilyImpl.DEFAULT) -class TitanServiceCheckLinux(TitanServiceCheck): - def service_check(self, env): - import params - env.set_params(params) - - File( format("{tmp_dir}/titanSmoke.groovy"), - content = StaticFile("titanSmoke.groovy"), - mode = 0755 - ) - - if params.iop_stack_version != "" and compare_versions(params.iop_stack_version, '4.2') >= 0: - if params.security_enabled: - kinit_cmd = format("{kinit_path_local} -kt {smoke_user_keytab} {smokeuser_principal};") - Execute(kinit_cmd, - user=params.smokeuser - ) - - Execute(format("gremlin {tmp_dir}/titanSmoke.groovy"), - tries = 3, - try_sleep = 5, - path = format('{titan_bin_dir}:/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin'), - user = params.smokeuser, - logoutput = True - ) - -if __name__ == "__main__": - # print "Track service check status" - TitanServiceCheckLinux().execute() http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan.py b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan.py deleted file mode 100755 index fd94c82..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan.py +++ /dev/null @@ -1,70 +0,0 @@ -""" -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. - -Ambari Agent - -""" -import os -from resource_management import * -from resource_management.core.source import InlineTemplate -from ambari_commons.os_family_impl import OsFamilyFuncImpl, OsFamilyImpl - -@OsFamilyFuncImpl(os_family=OsFamilyImpl.DEFAULT) -def titan(): - import params - - Directory(params.titan_conf_dir, - create_parents = True, - owner=params.titan_user, - group=params.user_group - ) - - File(format("{params.titan_conf_dir}/titan-env.sh"), - mode=0644, - group=params.user_group, - owner=params.titan_user, - content=InlineTemplate(params.titan_env_props) - ) - - # titan-hbase-solr_properties is always set to a default even if it's not in the payload - File(format("{params.titan_conf_dir}/titan-hbase-solr.properties"), - mode=0644, - group=params.user_group, - owner=params.titan_user, - content=InlineTemplate(params.titan_hbase_solr_props) - ) - - if (params.log4j_console_props != None): - File(format("{params.titan_conf_dir}/log4j-console.properties"), - mode=0644, - group=params.user_group, - owner=params.titan_user, - content=InlineTemplate(params.log4j_console_props) - ) - elif (os.path.exists(format("{params.titan_conf_dir}/log4j-console.properties"))): - File(format("{params.titan_conf_dir}/log4j-console.properties"), - mode=0644, - group=params.user_group, - owner=params.titan_user - ) - # Change titan ext directory for multiple user access - Directory(params.titan_ext_dir, - create_parents = True, - owner=params.titan_user, - group=params.user_group, - mode=0775 - ) http://git-wip-us.apache.org/repos/asf/ambari/blob/08f48c1e/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan_client.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan_client.py b/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan_client.py deleted file mode 100755 index d54ccee..0000000 --- a/ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan_client.py +++ /dev/null @@ -1,58 +0,0 @@ -""" -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. - -Ambari Agent - -""" - -import sys -import os -from resource_management import * -from resource_management.libraries.functions import conf_select -from resource_management.libraries.functions import stack_select -from titan import titan - -from ambari_commons.os_family_impl import OsFamilyFuncImpl, OsFamilyImpl - -class TitanClient(Script): - def configure(self, env): - import params - env.set_params(params) - titan() - - def status(self, env): - raise ClientComponentHasNoStatus() - -@OsFamilyImpl(os_family=OsFamilyImpl.DEFAULT) -class TitanClientLinux(TitanClient): - def get_component_name(self): - return "titan-client" - - def pre_rolling_restart(self, env): - import params - env.set_params(params) - - if params.version and compare_versions(format_stack_version(params.version), '4.2.0.0') >= 0: - conf_select.select(params.stack_name, "titan", params.version) - stack_select.select("titan-client", params.version) - - def install(self, env): - self.install_packages(env) - self.configure(env) - -if __name__ == "__main__": - TitanClient().execute()