Repository: ambari Updated Branches: refs/heads/trunk c415528d4 -> b0fa86ce8
AMBARI-11044. atlas version should not include 0.0 (Jon Maron via rlevas) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/b0fa86ce Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/b0fa86ce Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/b0fa86ce Branch: refs/heads/trunk Commit: b0fa86ce88ca5f88e21392c41b48ae3ab15615e9 Parents: c415528 Author: Jon Maron <jma...@hortonworks.com> Authored: Mon May 11 11:10:24 2015 -0400 Committer: Robert Levas <rle...@hortonworks.com> Committed: Mon May 11 11:10:24 2015 -0400 ---------------------------------------------------------------------- .../ATLAS/0.1.0.2.3.0.0/alerts.json | 60 ------ .../configuration/application-properties.xml | 190 ------------------- .../configuration/metadata-env.xml | 94 --------- .../ATLAS/0.1.0.2.3.0.0/kerberos.json | 59 ------ .../ATLAS/0.1.0.2.3.0.0/metainfo.xml | 79 -------- .../ATLAS/0.1.0.2.3.0.0/package/files/log4j.xml | 85 --------- .../0.1.0.2.3.0.0/package/scripts/metadata.py | 96 ---------- .../package/scripts/metadata_server.py | 69 ------- .../0.1.0.2.3.0.0/package/scripts/params.py | 80 -------- .../package/scripts/properties_config.py | 33 ---- .../package/scripts/service_check.py | 57 ------ .../package/scripts/status_params.py | 36 ---- .../common-services/ATLAS/0.1.0.2.3/alerts.json | 60 ++++++ .../configuration/application-properties.xml | 190 +++++++++++++++++++ .../0.1.0.2.3/configuration/metadata-env.xml | 94 +++++++++ .../ATLAS/0.1.0.2.3/kerberos.json | 59 ++++++ .../ATLAS/0.1.0.2.3/metainfo.xml | 79 ++++++++ .../ATLAS/0.1.0.2.3/package/files/log4j.xml | 85 +++++++++ .../ATLAS/0.1.0.2.3/package/scripts/metadata.py | 96 ++++++++++ .../package/scripts/metadata_server.py | 69 +++++++ .../ATLAS/0.1.0.2.3/package/scripts/params.py | 80 ++++++++ .../package/scripts/properties_config.py | 33 ++++ .../0.1.0.2.3/package/scripts/service_check.py | 57 ++++++ .../0.1.0.2.3/package/scripts/status_params.py | 36 ++++ .../stacks/HDP/2.3/services/ATLAS/metainfo.xml | 4 +- .../stacks/2.3/ATLAS/test_metadata_server.py | 2 +- 26 files changed, 941 insertions(+), 941 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/alerts.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/alerts.json b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/alerts.json deleted file mode 100644 index 7202950..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/alerts.json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "ATLAS": { - "service": [], - "ATLAS_SERVER": [ - { - "name": "metadata_server_process", - "label": "Atlas Metadata Server Process", - "description": "This host-level alert is triggered if the individual Metadata server process cannot be established to be up and listening on the network.", - "interval": 1, - "scope": "ANY", - "source": { - "type": "PORT", - "uri": "{{metadata-env/metadata_port}}", - "default_port": 21000, - "reporting": { - "ok": { - "text": "TCP OK - {0:.3f}s response on port {1}" - }, - "warning": { - "text": "TCP OK - {0:.3f}s response on port {1}", - "value": 1.5 - }, - "critical": { - "text": "Connection failed: {0} to {1}:{2}", - "value": 5.0 - } - } - } - }, - { - "name": "metadata_server_webui", - "label": "Metadata Server Web UI", - "description": "This host-level alert is triggered if the Metadata Server Web UI is unreachable.", - "interval": 1, - "scope": "ANY", - "enabled": true, - "source": { - "type": "WEB", - "uri": { - "http": "{{metadata-env/metadata_port}}", - "default_port": 21000, - "kerberos_keytab": "{{metadata-runtime.properties/*.metadata.http.authentication.keytab}}", - "kerberos_principal": "{{metadata-runtime.properties/*.metadata.http.authentication.principal}}" - }, - "reporting": { - "ok": { - "text": "HTTP {0} response in {2:.3f}s" - }, - "warning":{ - "text": "HTTP {0} response from {1} in {2:.3f}s ({3})" - }, - "critical": { - "text": "Connection failed to {1} ({3})" - } - } - } - } - ] - } -} http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/configuration/application-properties.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/configuration/application-properties.xml b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/configuration/application-properties.xml deleted file mode 100644 index e774f3b..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/configuration/application-properties.xml +++ /dev/null @@ -1,190 +0,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"> - <property> - <name>graph_storage_backend</name> - <value>berkeleyje</value> - <description></description> - </property> - <property> - <name>graph_storage_directory</name> - <value>/var/lib/atlas/data/berkeley</value> - <description></description> - </property> - <property> - <name>graph_index_search_backend</name> - <value>elasticsearch</value> - <description></description> - </property> - <property> - <name>graph_index_search_directory</name> - <value>/var/lib/atlas/data/es</value> - <description></description> - </property> - <property> - <name>graph_index_search_elasticsearch_client_only</name> - <value>false</value> - <description></description> - </property> - <property> - <name>graph_index_search_elasticsearch_local_mode</name> - <value>true</value> - <description></description> - </property> - <property> - <name>lineage_hive_table_type_name</name> - <value>Table</value> - <description></description> - </property> - <property> - <name>lineage_hive_column_type_name</name> - <value>Column</value> - <description></description> - </property> - <property> - <name>lineage_hive_table_column_name</name> - <value>columns</value> - <description></description> - </property> - <property> - <name>lineage_hive_process_type_name</name> - <value>LoadProcess</value> - <description></description> - </property> - <property> - <name>lineage_hive_process_inputs_name</name> - <value>inputTables</value> - <description></description> - </property> - <property> - <name>lineage_hive_process_outputs_name</name> - <value>outputTables</value> - <description></description> - </property> - <property> - <name>enableTLS</name> - <value>false</value> - <description></description> - </property> - <property> - <name>authentication_method</name> - <value>simple</value> - <description></description> - </property> - <property> - <name>authentication_principal</name> - <value>atlas</value> - <description></description> - </property> - <property> - <name>authentication_keytab</name> - <value>/etc/security/keytabs/atlas.service.keytab</value> - <description></description> - </property> - <property> - <name>http_authentication_enabled</name> - <value>false</value> - <description></description> - </property> - <property> - <name>http_authentication_type</name> - <value>simple</value> - <description></description> - </property> - <property> - <name>http_authentication_kerberos_principal</name> - <value>HTTP/_h...@example.com</value> - <description></description> - </property> - <property> - <name>http_authentication_kerberos_keytab</name> - <value>/etc/security/keytabs/spnego.service.keytab</value> - <description></description> - </property> - <property> - <name>http_authentication_kerberos_name_rules</name> - <value>RULE:[1:$1@$0](.*@EXAMPLE.COM)s/@.*// - DEFAULT</value> - <description></description> - </property> - - <!-- application.properties --> - <property> - <name>content</name> - <description>This is the jinja template for application.properties file</description> - <value> - # - # 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. - # - - ######### Graph Database Configs ######### - # Graph Storage - metadata.graph.storage.backend={{graph_storage_backend}} - metadata.graph.storage.directory={{graph_storage_directory}} - - # Graph Search Index - metadata.graph.index.search.backend={{graph_index_search_backend}} - metadata.graph.index.search.directory={{graph_index_search_directory}} - metadata.graph.index.search.elasticsearch.client-only={{graph_index_search_elasticsearch_client_only}} - metadata.graph.index.search.elasticsearch.local-mode={{graph_index_search_elasticsearch_local_mode}} - - ######### Hive Lineage Configs ######### - metadata.lineage.hive.table.type.name={{lineage_hive_table_type_name}} - metadata.lineage.hive.column.type.name={{lineage_hive_column_type_name}} - metadata.lineage.hive.table.column.name={{lineage_hive_table_column_name}} - metadata.lineage.hive.process.type.name={{lineage_hive_process_type_name}} - metadata.lineage.hive.process.inputs.name={{lineage_hive_process_inputs_name}} - metadata.lineage.hive.process.outputs.name={{lineage_hive_process_outputs_name}} - ######### Security Properties ######### - - # SSL config - metadata.enableTLS={{enableTLS}} - - # Service Authentication - metadata.authentication.method={{authentication_method}} - metadata.authentication.principal={{authentication_principal}} - metadata.authentication.keytab={{authentication_keytab}} - - # SPNEGO - metadata.http.authentication.enabled={{http_authentication_enabled}} - metadata.http.authentication.type={{http_authentication_type}} - metadata.http.authentication.kerberos.principal={{http_authentication_kerberos_principal}} - metadata.http.authentication.kerberos.keytab={{http_authentication_kerberos_keytab}} - metadata.http.authentication.kerberos.name.rules={{http_authentication_kerberos_name_rules}} - - ######### Security Properties ######### - </value> - </property> -</configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/configuration/metadata-env.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/configuration/metadata-env.xml b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/configuration/metadata-env.xml deleted file mode 100644 index aed76ff..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/configuration/metadata-env.xml +++ /dev/null @@ -1,94 +0,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> - <property require-input="false"> - <name>metadata_port</name> - <value>21000</value> - <description>Listening port of the Atlas server.</description> - </property> - <property require-input="false"> - <name>metadata_log_dir</name> - <value>/var/log/atlas</value> - <description>Atlas log directory.</description> - </property> - <property require-input="false"> - <name>metadata_pid_dir</name> - <value>/var/run/atlas</value> - <description>Atlas pid-file directory.</description> - </property> - <property> - <name>metadata_user</name> - <value>atlas</value> - <property-type>USER</property-type> - <description>Metadata User Name.</description> - </property> - <property> - <name>metadata_opts</name> - <value> </value> - <description>Metadata Server command line options.</description> - </property> - <property> - <name>metadata_classpath</name> - <value> </value> - <description>Metadata Server additional classpath.</description> - </property> - <property require-input="false"> - <name>metadata_data_dir</name> - <value>/var/lib/atlas/data</value> - <description>Atlas data directory.</description> - </property> - <property require-input="false"> - <name>metadata_expanded_war_dir</name> - <value>./server/webapp</value> - <description>Atlas expanded WAR directory.</description> - </property> - - <!-- metadata-env.sh --> - <property> - <name>content</name> - <description>This is the jinja template for metadata-env.sh file</description> - <value> -# The java implementation to use. If JAVA_HOME is not found we expect java and jar to be in path -export JAVA_HOME={{java64_home}} - -# any additional java opts you want to set. This will apply to both client and server operations -export METADATA_OPTS={{metadata_opts}} - -# metadata configuration directory -export METADATA_CONF={{conf_dir}} - -# Where log files are stored. Defatult is logs directory under the base install location -export METADATA_LOG_DIR={{log_dir}} - -# additional classpath entries -export METADATACPPATH={{metadata_classpath}} - -# data dir -export METADATA_DATA_DIR={{data_dir}} - -# pid dir -export METADATA_PID_DIR={{pid_dir}} - -# Where do you want to expand the war file. By Default it is in /server/webapp dir under the base install dir. -export METADATA_EXPANDED_WEBAPP_DIR={{expanded_war_dir}} - </value> - </property> -</configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/kerberos.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/kerberos.json b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/kerberos.json deleted file mode 100644 index 210f414..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/kerberos.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "services": [ - { - "name": "ATLAS", - "identities": [ - { - "name": "/spnego" - } - ], - "configurations": [ - { - "metadata-runtime.properties": { - "*.metadata.authentication.type": "kerberos", - "*.metadata.http.authentication.type": "kerberos", - "*.dfs.namenode.kerberos.principal": "nn/_HOST@${realm}" - } - } - ], - "components": [ - { - "name": "ATLAS_SERVER", - "identities": [ - { - "name": "metadata_server", - "principal": { - "value": "atlas/_HOST@${realm}", - "type" : "service", - "configuration": "application-properties/*.metadata.authentication.principal", - "local_username" : "${metadata-env/metadata_user}" - }, - "keytab": { - "file": "${keytab_dir}/atlas.service.keytab", - "owner": { - "name": "${metadata-env/metadata_user}", - "access": "r" - }, - "group": { - "name": "${cluster-env/user_group}", - "access": "" - }, - "configuration": "application-properties/*.metadata.authentication.keytab" - } - }, - { - "name": "/spnego", - "principal": { - "value": "HTTP/_HOST@${realm}", - "configuration": "application-properties/*.metadata.http.authentication.principal" - }, - "keytab": { - "configuration": "application-properties/*.metadata.http.authentication.keytab" - } - } - ] - } - ] - } - ] -} http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/metainfo.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/metainfo.xml b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/metainfo.xml deleted file mode 100644 index c26beb6..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/metainfo.xml +++ /dev/null @@ -1,79 +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>ATLAS</name> - <displayName>Atlas</displayName> - <comment>Atlas Metadata and Governance platform</comment> - <version>0.1.0.2.3.0.0</version> - <components> - <component> - <name>ATLAS_SERVER</name> - <displayName>Atlas Metadata Server</displayName> - <category>MASTER</category> - <cardinality>1</cardinality> - <versionAdvertised>false</versionAdvertised> - <dependencies> - </dependencies> - <commandScript> - <script>scripts/metadata_server.py</script> - <scriptType>PYTHON</scriptType> - <timeout>1200</timeout> - </commandScript> - <configFile> - <type>properties</type> - <fileName>application.properties</fileName> - <dictionaryName>application-properties</dictionaryName> - </configFile> - <configFile> - <type>env</type> - <fileName>metadata_env.sh</fileName> - <dictionaryName>metadata-env</dictionaryName> - </configFile> - </component> - </components> - - <osSpecifics> - <osSpecific> - <osFamily>any</osFamily> - <packages> - <package> - <name>atlas</name> - </package> - </packages> - </osSpecific> - </osSpecifics> - - <commandScript> - <script>scripts/service_check.py</script> - <scriptType>PYTHON</scriptType> - <timeout>300</timeout> - </commandScript> - - - <configuration-dependencies> - <config-type>application-properties</config-type> - <config-type>metadata-env</config-type> - </configuration-dependencies> - - - </service> - </services> -</metainfo> http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/files/log4j.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/files/log4j.xml b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/files/log4j.xml deleted file mode 100644 index c80b10f..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/files/log4j.xml +++ /dev/null @@ -1,85 +0,0 @@ -<?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. - --> - -<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> - -<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> - <appender name="console" class="org.apache.log4j.ConsoleAppender"> - <param name="Target" value="System.out"/> - <layout class="org.apache.log4j.PatternLayout"> - <param name="ConversionPattern" value="%d %-5p - [%t:%x] ~ %m (%c{1}:%L)%n"/> - </layout> - </appender> - - <appender name="FILE" class="org.apache.log4j.DailyRollingFileAppender"> - <param name="File" value="${metadata.log.dir}/application.log"/> - <param name="Append" value="true"/> - <param name="Threshold" value="debug"/> - <layout class="org.apache.log4j.PatternLayout"> - <param name="ConversionPattern" value="%d %-5p - [%t:%x] ~ %m (%c{1}:%L)%n"/> - </layout> - </appender> - - <appender name="AUDIT" class="org.apache.log4j.DailyRollingFileAppender"> - <param name="File" value="${metadata.log.dir}/audit.log"/> - <param name="Append" value="true"/> - <param name="Threshold" value="debug"/> - <layout class="org.apache.log4j.PatternLayout"> - <param name="ConversionPattern" value="%d %x %m%n"/> - </layout> - </appender> - - <logger name="org.apache.hadoop.metadata" additivity="false"> - <level value="debug"/> - <appender-ref ref="console"/> - <appender-ref ref="FILE"/> - </logger> - - - <logger name="com.thinkaurelius.titan" additivity="false"> - <level value="info"/> - <appender-ref ref="FILE"/> - </logger> - - <logger name="org.elasticsearch" additivity="false"> - <level value="info"/> - <appender-ref ref="FILE"/> - </logger> - - <logger name="org.apache.lucene" additivity="false"> - <level value="info"/> - <appender-ref ref="FILE"/> - </logger> - - <logger name="com.google" additivity="false"> - <level value="info"/> - <appender-ref ref="FILE"/> - </logger> - - <logger name="AUDIT"> - <level value="info"/> - <appender-ref ref="AUDIT"/> - </logger> - - <root> - <priority value="info"/> - <appender-ref ref="FILE"/> - </root> - -</log4j:configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/metadata.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/metadata.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/metadata.py deleted file mode 100644 index a4274ca..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/metadata.py +++ /dev/null @@ -1,96 +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. - -""" -import os -import shutil -from resource_management import Directory, Fail, Logger, File, \ - InlineTemplate, StaticFile -from resource_management.libraries.functions import format - - -def metadata(): - import params - - Directory([params.pid_dir], - mode=0755, - cd_access='a', - owner=params.metadata_user, - group=params.user_group, - recursive=True - ) - - Directory(params.conf_dir, - mode=0755, - cd_access='a', - owner=params.metadata_user, - group=params.user_group, - recursive=True - ) - - Directory(params.log_dir, - mode=0755, - cd_access='a', - owner=params.metadata_user, - group=params.user_group, - recursive=True - ) - - Directory(params.data_dir, - mode=0644, - cd_access='a', - owner=params.metadata_user, - group=params.user_group, - recursive=True - ) - - Directory(params.expanded_war_dir, - mode=0644, - cd_access='a', - owner=params.metadata_user, - group=params.user_group, - recursive=True - ) - - metadata_war_file = format('{params.metadata_home}/server/webapp/metadata.war') - if not os.path.isfile(metadata_war_file): - raise Fail("Unable to copy {0} because it does not exist".format(metadata_war_file)) - - Logger.info("Copying {0} to {1}".format(metadata_war_file, params.expanded_war_dir)) - shutil.copy2(metadata_war_file, params.expanded_war_dir) - - File(format('{conf_dir}/application.properties'), - content=InlineTemplate(params.application_properties_content), - mode=0644, - owner=params.metadata_user, - group=params.user_group - ) - - File(format("{conf_dir}/metadata-env.sh"), - owner=params.metadata_user, - group=params.user_group, - mode=0755, - content=InlineTemplate(params.metadata_env_content) - ) - - File(format("{conf_dir}/log4j.xml"), - mode=0644, - owner=params.metadata_user, - group=params.user_group, - content=StaticFile('log4j.xml') - ) http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/metadata_server.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/metadata_server.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/metadata_server.py deleted file mode 100644 index 94a8f9e..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/metadata_server.py +++ /dev/null @@ -1,69 +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 metadata import metadata -from resource_management import Execute, check_process_status, Script -from resource_management.libraries.functions import format - -class MetadataServer(Script): - - def get_stack_to_component(self): - return {"HDP": "atlas-server"} - - def install(self, env): - self.install_packages(env) - self.configure(env) - - def configure(self, env): - import params - env.set_params(params) - metadata() - - # def pre_rolling_restart(self, env): - # import params - # env.set_params(params) - # upgrade.prestart(env, "metadata-server") - # - def start(self, env, rolling_restart=False): - import params - env.set_params(params) - daemon_cmd = format('source {params.conf_dir}/metadata-env.sh ; {params.metadata_start_script} --port {params.metadata_port}') - no_op_test = format('ls {params.pid_file} >/dev/null 2>&1 && ps -p `cat {params.pid_file}` >/dev/null 2>&1') - Execute(daemon_cmd, - user=params.metadata_user, - not_if=no_op_test - ) - - def stop(self, env, rolling_restart=False): - import params - env.set_params(params) - daemon_cmd = format('source {params.conf_dir}/metadata-env.sh; {params.metadata_stop_script}') - Execute(daemon_cmd, - user=params.metadata_user, - ) - Execute (format("rm -f {params.pid_file}")) - - - def status(self, env): - import status_params - env.set_params(status_params) - check_process_status(status_params.pid_file) - -if __name__ == "__main__": - MetadataServer().execute() http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/params.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/params.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/params.py deleted file mode 100644 index 8401a5d..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/params.py +++ /dev/null @@ -1,80 +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. - -""" -import os -import sys -from resource_management import format_hdp_stack_version, Script -from resource_management.libraries.functions import format - -import status_params - -# server configurations -config = Script.get_config() - -# security enabled -security_enabled = status_params.security_enabled - -# hdp version -stack_version_unformatted = str(config['hostLevelParams']['stack_version']) -hdp_stack_version = format_hdp_stack_version(stack_version_unformatted) - -metadata_home = os.environ['METADATA_HOME_DIR'] if 'METADATA_HOME_DIR' in os.environ else '/usr/hdp/current/atlas-server' -metadata_bin = format("{metadata_home}/bin") - -python_binary = os.environ['PYTHON_EXE'] if 'PYTHON_EXE' in os.environ else sys.executable -metadata_start_script = format("{metadata_bin}/metadata_start.py") -metadata_stop_script = format("{metadata_bin}/metadata_stop.py") - -# metadata local directory structure -log_dir = config['configurations']['metadata-env']['metadata_log_dir'] -conf_dir = status_params.conf_dir # "/etc/metadata/conf" - -# service locations -hadoop_conf_dir = os.path.join(os.environ["HADOOP_HOME"], "conf") if 'HADOOP_HOME' in os.environ else '/etc/hadoop/conf' - -# user and status -metadata_user = status_params.metadata_user -user_group = config['configurations']['cluster-env']['user_group'] -pid_dir = status_params.pid_dir -pid_file = format("{pid_dir}/metadata.pid") - -# metadata env -java64_home = config['hostLevelParams']['java_home'] -env_sh_template = config['configurations']['metadata-env']['content'] - -# credential provider -credential_provider = format( "jceks://file@{conf_dir}/atlas-site.jceks") - -# command line args -metadata_port = config['configurations']['metadata-env']['metadata_port'] -metadata_host = config['hostname'] - -# application properties -application_properties = config['configurations']['application-properties'] - -for key, value in application_properties.iteritems(): - globals()[key] = value - -metadata_env_content = config['configurations']['metadata-env']['content'] -application_properties_content = config['configurations']['application-properties']['content'] - -metadata_opts = config['configurations']['metadata-env']['metadata_opts'] -metadata_classpath = config['configurations']['metadata-env']['metadata_classpath'] -data_dir = config['configurations']['metadata-env']['metadata_data_dir'] -expanded_war_dir = os.environ['METADATA_EXPANDED_WEBAPP_DIR'] if 'METADATA_EXPANDED_WEBAPP_DIR' in os.environ else '/var/lib/atlas/server/webapp' \ No newline at end of file http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/properties_config.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/properties_config.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/properties_config.py deleted file mode 100644 index 2144f71..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/properties_config.py +++ /dev/null @@ -1,33 +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.core import source, File -from resource_management.libraries.functions import format - - -def properties_inline_template(configurations): - return source.InlineTemplate('''{% for key, value in configurations_dict.items() %}{{ key }}={{ value }} -{% endfor %}''', configurations_dict=configurations) - -def properties_config(filename, configurations = None, conf_dir = None, - mode = None, owner = None, group = None): - config_content = properties_inline_template(configurations) - File (format("{conf_dir}/{filename}"), content = config_content, owner = owner, - group = group, mode = mode) http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/service_check.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/service_check.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/service_check.py deleted file mode 100644 index 1ecb795..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/service_check.py +++ /dev/null @@ -1,57 +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 httplib -import socket -import time -from resource_management import Script, Logger, ComponentIsNotRunning, Fail -from resource_management.libraries.functions import format - - -class AtlasServiceCheck(Script): - ATLAS_CONNECT_TRIES = 5 - ATLAS_CONNECT_TIMEOUT = 10 - - def service_check(self, env): - import params - - env.set_params(params) - - for i in xrange(0, self.ATLAS_CONNECT_TRIES): - try: - conn = httplib.HTTPConnection(params.metadata_host, - int(params.metadata_port)) - conn.request("GET", format("http://{params.metadata_host}:{params.metadata_port}/")) - except (httplib.HTTPException, socket.error) as ex: - if i < self.ATLAS_CONNECT_TRIES - 1: - time.sleep(self.ATLAS_CONNECT_TIMEOUT) - Logger.info("Connection failed. Next retry in %s seconds." - % (self.ATLAS_CONNECT_TIMEOUT)) - continue - else: - raise Fail("Service check has failed.") - - resp = conn.getresponse() - if resp.status == 200 : - Logger.info('Atlas server up and running') - else: - Logger.debug('Atlas server not running') - raise ComponentIsNotRunning() - -if __name__ == "__main__": - AtlasServiceCheck().execute() http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/status_params.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/status_params.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/status_params.py deleted file mode 100644 index aa7f614..0000000 --- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3.0.0/package/scripts/status_params.py +++ /dev/null @@ -1,36 +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. - -""" -import os -from resource_management import Script -from resource_management.libraries.functions import get_kinit_path, format - - -config = Script.get_config() - -conf_dir = os.environ['METADATA_CONF'] if 'METADATA_CONF' in os.environ else '/etc/atlas/conf' -pid_dir = config['configurations']['metadata-env']['metadata_pid_dir'] -pid_file = format("{pid_dir}/metadata.pid") -metadata_user = config['configurations']['metadata-env']['metadata_user'] - -# Security related/required params -hostname = config['hostname'] -security_enabled = config['configurations']['cluster-env']['security_enabled'] -kinit_path_local = get_kinit_path() -tmp_dir = Script.get_tmp_dir() http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/alerts.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/alerts.json b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/alerts.json new file mode 100644 index 0000000..7202950 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/alerts.json @@ -0,0 +1,60 @@ +{ + "ATLAS": { + "service": [], + "ATLAS_SERVER": [ + { + "name": "metadata_server_process", + "label": "Atlas Metadata Server Process", + "description": "This host-level alert is triggered if the individual Metadata server process cannot be established to be up and listening on the network.", + "interval": 1, + "scope": "ANY", + "source": { + "type": "PORT", + "uri": "{{metadata-env/metadata_port}}", + "default_port": 21000, + "reporting": { + "ok": { + "text": "TCP OK - {0:.3f}s response on port {1}" + }, + "warning": { + "text": "TCP OK - {0:.3f}s response on port {1}", + "value": 1.5 + }, + "critical": { + "text": "Connection failed: {0} to {1}:{2}", + "value": 5.0 + } + } + } + }, + { + "name": "metadata_server_webui", + "label": "Metadata Server Web UI", + "description": "This host-level alert is triggered if the Metadata Server Web UI is unreachable.", + "interval": 1, + "scope": "ANY", + "enabled": true, + "source": { + "type": "WEB", + "uri": { + "http": "{{metadata-env/metadata_port}}", + "default_port": 21000, + "kerberos_keytab": "{{metadata-runtime.properties/*.metadata.http.authentication.keytab}}", + "kerberos_principal": "{{metadata-runtime.properties/*.metadata.http.authentication.principal}}" + }, + "reporting": { + "ok": { + "text": "HTTP {0} response in {2:.3f}s" + }, + "warning":{ + "text": "HTTP {0} response from {1} in {2:.3f}s ({3})" + }, + "critical": { + "text": "Connection failed to {1} ({3})" + } + } + } + } + ] + } +} http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/configuration/application-properties.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/configuration/application-properties.xml b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/configuration/application-properties.xml new file mode 100644 index 0000000..e774f3b --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/configuration/application-properties.xml @@ -0,0 +1,190 @@ +<?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"> + <property> + <name>graph_storage_backend</name> + <value>berkeleyje</value> + <description></description> + </property> + <property> + <name>graph_storage_directory</name> + <value>/var/lib/atlas/data/berkeley</value> + <description></description> + </property> + <property> + <name>graph_index_search_backend</name> + <value>elasticsearch</value> + <description></description> + </property> + <property> + <name>graph_index_search_directory</name> + <value>/var/lib/atlas/data/es</value> + <description></description> + </property> + <property> + <name>graph_index_search_elasticsearch_client_only</name> + <value>false</value> + <description></description> + </property> + <property> + <name>graph_index_search_elasticsearch_local_mode</name> + <value>true</value> + <description></description> + </property> + <property> + <name>lineage_hive_table_type_name</name> + <value>Table</value> + <description></description> + </property> + <property> + <name>lineage_hive_column_type_name</name> + <value>Column</value> + <description></description> + </property> + <property> + <name>lineage_hive_table_column_name</name> + <value>columns</value> + <description></description> + </property> + <property> + <name>lineage_hive_process_type_name</name> + <value>LoadProcess</value> + <description></description> + </property> + <property> + <name>lineage_hive_process_inputs_name</name> + <value>inputTables</value> + <description></description> + </property> + <property> + <name>lineage_hive_process_outputs_name</name> + <value>outputTables</value> + <description></description> + </property> + <property> + <name>enableTLS</name> + <value>false</value> + <description></description> + </property> + <property> + <name>authentication_method</name> + <value>simple</value> + <description></description> + </property> + <property> + <name>authentication_principal</name> + <value>atlas</value> + <description></description> + </property> + <property> + <name>authentication_keytab</name> + <value>/etc/security/keytabs/atlas.service.keytab</value> + <description></description> + </property> + <property> + <name>http_authentication_enabled</name> + <value>false</value> + <description></description> + </property> + <property> + <name>http_authentication_type</name> + <value>simple</value> + <description></description> + </property> + <property> + <name>http_authentication_kerberos_principal</name> + <value>HTTP/_h...@example.com</value> + <description></description> + </property> + <property> + <name>http_authentication_kerberos_keytab</name> + <value>/etc/security/keytabs/spnego.service.keytab</value> + <description></description> + </property> + <property> + <name>http_authentication_kerberos_name_rules</name> + <value>RULE:[1:$1@$0](.*@EXAMPLE.COM)s/@.*// + DEFAULT</value> + <description></description> + </property> + + <!-- application.properties --> + <property> + <name>content</name> + <description>This is the jinja template for application.properties file</description> + <value> + # + # 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. + # + + ######### Graph Database Configs ######### + # Graph Storage + metadata.graph.storage.backend={{graph_storage_backend}} + metadata.graph.storage.directory={{graph_storage_directory}} + + # Graph Search Index + metadata.graph.index.search.backend={{graph_index_search_backend}} + metadata.graph.index.search.directory={{graph_index_search_directory}} + metadata.graph.index.search.elasticsearch.client-only={{graph_index_search_elasticsearch_client_only}} + metadata.graph.index.search.elasticsearch.local-mode={{graph_index_search_elasticsearch_local_mode}} + + ######### Hive Lineage Configs ######### + metadata.lineage.hive.table.type.name={{lineage_hive_table_type_name}} + metadata.lineage.hive.column.type.name={{lineage_hive_column_type_name}} + metadata.lineage.hive.table.column.name={{lineage_hive_table_column_name}} + metadata.lineage.hive.process.type.name={{lineage_hive_process_type_name}} + metadata.lineage.hive.process.inputs.name={{lineage_hive_process_inputs_name}} + metadata.lineage.hive.process.outputs.name={{lineage_hive_process_outputs_name}} + ######### Security Properties ######### + + # SSL config + metadata.enableTLS={{enableTLS}} + + # Service Authentication + metadata.authentication.method={{authentication_method}} + metadata.authentication.principal={{authentication_principal}} + metadata.authentication.keytab={{authentication_keytab}} + + # SPNEGO + metadata.http.authentication.enabled={{http_authentication_enabled}} + metadata.http.authentication.type={{http_authentication_type}} + metadata.http.authentication.kerberos.principal={{http_authentication_kerberos_principal}} + metadata.http.authentication.kerberos.keytab={{http_authentication_kerberos_keytab}} + metadata.http.authentication.kerberos.name.rules={{http_authentication_kerberos_name_rules}} + + ######### Security Properties ######### + </value> + </property> +</configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/configuration/metadata-env.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/configuration/metadata-env.xml b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/configuration/metadata-env.xml new file mode 100644 index 0000000..aed76ff --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/configuration/metadata-env.xml @@ -0,0 +1,94 @@ +<?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> + <property require-input="false"> + <name>metadata_port</name> + <value>21000</value> + <description>Listening port of the Atlas server.</description> + </property> + <property require-input="false"> + <name>metadata_log_dir</name> + <value>/var/log/atlas</value> + <description>Atlas log directory.</description> + </property> + <property require-input="false"> + <name>metadata_pid_dir</name> + <value>/var/run/atlas</value> + <description>Atlas pid-file directory.</description> + </property> + <property> + <name>metadata_user</name> + <value>atlas</value> + <property-type>USER</property-type> + <description>Metadata User Name.</description> + </property> + <property> + <name>metadata_opts</name> + <value> </value> + <description>Metadata Server command line options.</description> + </property> + <property> + <name>metadata_classpath</name> + <value> </value> + <description>Metadata Server additional classpath.</description> + </property> + <property require-input="false"> + <name>metadata_data_dir</name> + <value>/var/lib/atlas/data</value> + <description>Atlas data directory.</description> + </property> + <property require-input="false"> + <name>metadata_expanded_war_dir</name> + <value>./server/webapp</value> + <description>Atlas expanded WAR directory.</description> + </property> + + <!-- metadata-env.sh --> + <property> + <name>content</name> + <description>This is the jinja template for metadata-env.sh file</description> + <value> +# The java implementation to use. If JAVA_HOME is not found we expect java and jar to be in path +export JAVA_HOME={{java64_home}} + +# any additional java opts you want to set. This will apply to both client and server operations +export METADATA_OPTS={{metadata_opts}} + +# metadata configuration directory +export METADATA_CONF={{conf_dir}} + +# Where log files are stored. Defatult is logs directory under the base install location +export METADATA_LOG_DIR={{log_dir}} + +# additional classpath entries +export METADATACPPATH={{metadata_classpath}} + +# data dir +export METADATA_DATA_DIR={{data_dir}} + +# pid dir +export METADATA_PID_DIR={{pid_dir}} + +# Where do you want to expand the war file. By Default it is in /server/webapp dir under the base install dir. +export METADATA_EXPANDED_WEBAPP_DIR={{expanded_war_dir}} + </value> + </property> +</configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/kerberos.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/kerberos.json b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/kerberos.json new file mode 100644 index 0000000..210f414 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/kerberos.json @@ -0,0 +1,59 @@ +{ + "services": [ + { + "name": "ATLAS", + "identities": [ + { + "name": "/spnego" + } + ], + "configurations": [ + { + "metadata-runtime.properties": { + "*.metadata.authentication.type": "kerberos", + "*.metadata.http.authentication.type": "kerberos", + "*.dfs.namenode.kerberos.principal": "nn/_HOST@${realm}" + } + } + ], + "components": [ + { + "name": "ATLAS_SERVER", + "identities": [ + { + "name": "metadata_server", + "principal": { + "value": "atlas/_HOST@${realm}", + "type" : "service", + "configuration": "application-properties/*.metadata.authentication.principal", + "local_username" : "${metadata-env/metadata_user}" + }, + "keytab": { + "file": "${keytab_dir}/atlas.service.keytab", + "owner": { + "name": "${metadata-env/metadata_user}", + "access": "r" + }, + "group": { + "name": "${cluster-env/user_group}", + "access": "" + }, + "configuration": "application-properties/*.metadata.authentication.keytab" + } + }, + { + "name": "/spnego", + "principal": { + "value": "HTTP/_HOST@${realm}", + "configuration": "application-properties/*.metadata.http.authentication.principal" + }, + "keytab": { + "configuration": "application-properties/*.metadata.http.authentication.keytab" + } + } + ] + } + ] + } + ] +} http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/metainfo.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/metainfo.xml b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/metainfo.xml new file mode 100644 index 0000000..1aa06c5 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/metainfo.xml @@ -0,0 +1,79 @@ +<?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>ATLAS</name> + <displayName>Atlas</displayName> + <comment>Atlas Metadata and Governance platform</comment> + <version>0.1.0.2.3</version> + <components> + <component> + <name>ATLAS_SERVER</name> + <displayName>Atlas Metadata Server</displayName> + <category>MASTER</category> + <cardinality>1</cardinality> + <versionAdvertised>false</versionAdvertised> + <dependencies> + </dependencies> + <commandScript> + <script>scripts/metadata_server.py</script> + <scriptType>PYTHON</scriptType> + <timeout>1200</timeout> + </commandScript> + <configFile> + <type>properties</type> + <fileName>application.properties</fileName> + <dictionaryName>application-properties</dictionaryName> + </configFile> + <configFile> + <type>env</type> + <fileName>metadata_env.sh</fileName> + <dictionaryName>metadata-env</dictionaryName> + </configFile> + </component> + </components> + + <osSpecifics> + <osSpecific> + <osFamily>any</osFamily> + <packages> + <package> + <name>atlas</name> + </package> + </packages> + </osSpecific> + </osSpecifics> + + <commandScript> + <script>scripts/service_check.py</script> + <scriptType>PYTHON</scriptType> + <timeout>300</timeout> + </commandScript> + + + <configuration-dependencies> + <config-type>application-properties</config-type> + <config-type>metadata-env</config-type> + </configuration-dependencies> + + + </service> + </services> +</metainfo> http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/files/log4j.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/files/log4j.xml b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/files/log4j.xml new file mode 100644 index 0000000..c80b10f --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/files/log4j.xml @@ -0,0 +1,85 @@ +<?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. + --> + +<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> + +<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> + <appender name="console" class="org.apache.log4j.ConsoleAppender"> + <param name="Target" value="System.out"/> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%d %-5p - [%t:%x] ~ %m (%c{1}:%L)%n"/> + </layout> + </appender> + + <appender name="FILE" class="org.apache.log4j.DailyRollingFileAppender"> + <param name="File" value="${metadata.log.dir}/application.log"/> + <param name="Append" value="true"/> + <param name="Threshold" value="debug"/> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%d %-5p - [%t:%x] ~ %m (%c{1}:%L)%n"/> + </layout> + </appender> + + <appender name="AUDIT" class="org.apache.log4j.DailyRollingFileAppender"> + <param name="File" value="${metadata.log.dir}/audit.log"/> + <param name="Append" value="true"/> + <param name="Threshold" value="debug"/> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%d %x %m%n"/> + </layout> + </appender> + + <logger name="org.apache.hadoop.metadata" additivity="false"> + <level value="debug"/> + <appender-ref ref="console"/> + <appender-ref ref="FILE"/> + </logger> + + + <logger name="com.thinkaurelius.titan" additivity="false"> + <level value="info"/> + <appender-ref ref="FILE"/> + </logger> + + <logger name="org.elasticsearch" additivity="false"> + <level value="info"/> + <appender-ref ref="FILE"/> + </logger> + + <logger name="org.apache.lucene" additivity="false"> + <level value="info"/> + <appender-ref ref="FILE"/> + </logger> + + <logger name="com.google" additivity="false"> + <level value="info"/> + <appender-ref ref="FILE"/> + </logger> + + <logger name="AUDIT"> + <level value="info"/> + <appender-ref ref="AUDIT"/> + </logger> + + <root> + <priority value="info"/> + <appender-ref ref="FILE"/> + </root> + +</log4j:configuration> http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata.py new file mode 100644 index 0000000..a4274ca --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata.py @@ -0,0 +1,96 @@ +#!/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. + +""" +import os +import shutil +from resource_management import Directory, Fail, Logger, File, \ + InlineTemplate, StaticFile +from resource_management.libraries.functions import format + + +def metadata(): + import params + + Directory([params.pid_dir], + mode=0755, + cd_access='a', + owner=params.metadata_user, + group=params.user_group, + recursive=True + ) + + Directory(params.conf_dir, + mode=0755, + cd_access='a', + owner=params.metadata_user, + group=params.user_group, + recursive=True + ) + + Directory(params.log_dir, + mode=0755, + cd_access='a', + owner=params.metadata_user, + group=params.user_group, + recursive=True + ) + + Directory(params.data_dir, + mode=0644, + cd_access='a', + owner=params.metadata_user, + group=params.user_group, + recursive=True + ) + + Directory(params.expanded_war_dir, + mode=0644, + cd_access='a', + owner=params.metadata_user, + group=params.user_group, + recursive=True + ) + + metadata_war_file = format('{params.metadata_home}/server/webapp/metadata.war') + if not os.path.isfile(metadata_war_file): + raise Fail("Unable to copy {0} because it does not exist".format(metadata_war_file)) + + Logger.info("Copying {0} to {1}".format(metadata_war_file, params.expanded_war_dir)) + shutil.copy2(metadata_war_file, params.expanded_war_dir) + + File(format('{conf_dir}/application.properties'), + content=InlineTemplate(params.application_properties_content), + mode=0644, + owner=params.metadata_user, + group=params.user_group + ) + + File(format("{conf_dir}/metadata-env.sh"), + owner=params.metadata_user, + group=params.user_group, + mode=0755, + content=InlineTemplate(params.metadata_env_content) + ) + + File(format("{conf_dir}/log4j.xml"), + mode=0644, + owner=params.metadata_user, + group=params.user_group, + content=StaticFile('log4j.xml') + ) http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata_server.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata_server.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata_server.py new file mode 100644 index 0000000..94a8f9e --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata_server.py @@ -0,0 +1,69 @@ +""" +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 metadata import metadata +from resource_management import Execute, check_process_status, Script +from resource_management.libraries.functions import format + +class MetadataServer(Script): + + def get_stack_to_component(self): + return {"HDP": "atlas-server"} + + def install(self, env): + self.install_packages(env) + self.configure(env) + + def configure(self, env): + import params + env.set_params(params) + metadata() + + # def pre_rolling_restart(self, env): + # import params + # env.set_params(params) + # upgrade.prestart(env, "metadata-server") + # + def start(self, env, rolling_restart=False): + import params + env.set_params(params) + daemon_cmd = format('source {params.conf_dir}/metadata-env.sh ; {params.metadata_start_script} --port {params.metadata_port}') + no_op_test = format('ls {params.pid_file} >/dev/null 2>&1 && ps -p `cat {params.pid_file}` >/dev/null 2>&1') + Execute(daemon_cmd, + user=params.metadata_user, + not_if=no_op_test + ) + + def stop(self, env, rolling_restart=False): + import params + env.set_params(params) + daemon_cmd = format('source {params.conf_dir}/metadata-env.sh; {params.metadata_stop_script}') + Execute(daemon_cmd, + user=params.metadata_user, + ) + Execute (format("rm -f {params.pid_file}")) + + + def status(self, env): + import status_params + env.set_params(status_params) + check_process_status(status_params.pid_file) + +if __name__ == "__main__": + MetadataServer().execute() http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/params.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/params.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/params.py new file mode 100644 index 0000000..8401a5d --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/params.py @@ -0,0 +1,80 @@ +#!/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. + +""" +import os +import sys +from resource_management import format_hdp_stack_version, Script +from resource_management.libraries.functions import format + +import status_params + +# server configurations +config = Script.get_config() + +# security enabled +security_enabled = status_params.security_enabled + +# hdp version +stack_version_unformatted = str(config['hostLevelParams']['stack_version']) +hdp_stack_version = format_hdp_stack_version(stack_version_unformatted) + +metadata_home = os.environ['METADATA_HOME_DIR'] if 'METADATA_HOME_DIR' in os.environ else '/usr/hdp/current/atlas-server' +metadata_bin = format("{metadata_home}/bin") + +python_binary = os.environ['PYTHON_EXE'] if 'PYTHON_EXE' in os.environ else sys.executable +metadata_start_script = format("{metadata_bin}/metadata_start.py") +metadata_stop_script = format("{metadata_bin}/metadata_stop.py") + +# metadata local directory structure +log_dir = config['configurations']['metadata-env']['metadata_log_dir'] +conf_dir = status_params.conf_dir # "/etc/metadata/conf" + +# service locations +hadoop_conf_dir = os.path.join(os.environ["HADOOP_HOME"], "conf") if 'HADOOP_HOME' in os.environ else '/etc/hadoop/conf' + +# user and status +metadata_user = status_params.metadata_user +user_group = config['configurations']['cluster-env']['user_group'] +pid_dir = status_params.pid_dir +pid_file = format("{pid_dir}/metadata.pid") + +# metadata env +java64_home = config['hostLevelParams']['java_home'] +env_sh_template = config['configurations']['metadata-env']['content'] + +# credential provider +credential_provider = format( "jceks://file@{conf_dir}/atlas-site.jceks") + +# command line args +metadata_port = config['configurations']['metadata-env']['metadata_port'] +metadata_host = config['hostname'] + +# application properties +application_properties = config['configurations']['application-properties'] + +for key, value in application_properties.iteritems(): + globals()[key] = value + +metadata_env_content = config['configurations']['metadata-env']['content'] +application_properties_content = config['configurations']['application-properties']['content'] + +metadata_opts = config['configurations']['metadata-env']['metadata_opts'] +metadata_classpath = config['configurations']['metadata-env']['metadata_classpath'] +data_dir = config['configurations']['metadata-env']['metadata_data_dir'] +expanded_war_dir = os.environ['METADATA_EXPANDED_WEBAPP_DIR'] if 'METADATA_EXPANDED_WEBAPP_DIR' in os.environ else '/var/lib/atlas/server/webapp' \ No newline at end of file http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/properties_config.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/properties_config.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/properties_config.py new file mode 100644 index 0000000..2144f71 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/properties_config.py @@ -0,0 +1,33 @@ +#!/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.core import source, File +from resource_management.libraries.functions import format + + +def properties_inline_template(configurations): + return source.InlineTemplate('''{% for key, value in configurations_dict.items() %}{{ key }}={{ value }} +{% endfor %}''', configurations_dict=configurations) + +def properties_config(filename, configurations = None, conf_dir = None, + mode = None, owner = None, group = None): + config_content = properties_inline_template(configurations) + File (format("{conf_dir}/{filename}"), content = config_content, owner = owner, + group = group, mode = mode) http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/service_check.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/service_check.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/service_check.py new file mode 100644 index 0000000..1ecb795 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/service_check.py @@ -0,0 +1,57 @@ +""" +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 httplib +import socket +import time +from resource_management import Script, Logger, ComponentIsNotRunning, Fail +from resource_management.libraries.functions import format + + +class AtlasServiceCheck(Script): + ATLAS_CONNECT_TRIES = 5 + ATLAS_CONNECT_TIMEOUT = 10 + + def service_check(self, env): + import params + + env.set_params(params) + + for i in xrange(0, self.ATLAS_CONNECT_TRIES): + try: + conn = httplib.HTTPConnection(params.metadata_host, + int(params.metadata_port)) + conn.request("GET", format("http://{params.metadata_host}:{params.metadata_port}/")) + except (httplib.HTTPException, socket.error) as ex: + if i < self.ATLAS_CONNECT_TRIES - 1: + time.sleep(self.ATLAS_CONNECT_TIMEOUT) + Logger.info("Connection failed. Next retry in %s seconds." + % (self.ATLAS_CONNECT_TIMEOUT)) + continue + else: + raise Fail("Service check has failed.") + + resp = conn.getresponse() + if resp.status == 200 : + Logger.info('Atlas server up and running') + else: + Logger.debug('Atlas server not running') + raise ComponentIsNotRunning() + +if __name__ == "__main__": + AtlasServiceCheck().execute() http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/status_params.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/status_params.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/status_params.py new file mode 100644 index 0000000..aa7f614 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/status_params.py @@ -0,0 +1,36 @@ +#!/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. + +""" +import os +from resource_management import Script +from resource_management.libraries.functions import get_kinit_path, format + + +config = Script.get_config() + +conf_dir = os.environ['METADATA_CONF'] if 'METADATA_CONF' in os.environ else '/etc/atlas/conf' +pid_dir = config['configurations']['metadata-env']['metadata_pid_dir'] +pid_file = format("{pid_dir}/metadata.pid") +metadata_user = config['configurations']['metadata-env']['metadata_user'] + +# Security related/required params +hostname = config['hostname'] +security_enabled = config['configurations']['cluster-env']['security_enabled'] +kinit_path_local = get_kinit_path() +tmp_dir = Script.get_tmp_dir() http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/main/resources/stacks/HDP/2.3/services/ATLAS/metainfo.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/ATLAS/metainfo.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/ATLAS/metainfo.xml index 4c74a00..181ad9f 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/ATLAS/metainfo.xml +++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/ATLAS/metainfo.xml @@ -20,8 +20,8 @@ <services> <service> <name>ATLAS</name> - <extends>common-services/ATLAS/0.1.0.2.3.0.0</extends> - <version>0.1.0.2.3.0.0</version> + <extends>common-services/ATLAS/0.1.0.2.3</extends> + <version>0.1.0.2.3</version> <osSpecifics> <osSpecific> <osFamily>redhat7,redhat6,suse11</osFamily> http://git-wip-us.apache.org/repos/asf/ambari/blob/b0fa86ce/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py b/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py index befde7b..90df616 100644 --- a/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py +++ b/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py @@ -25,7 +25,7 @@ import sys class TestMetadataServer(RMFTestCase): - COMMON_SERVICES_PACKAGE_DIR = "ATLAS/0.1.0.2.3.0.0/package" + COMMON_SERVICES_PACKAGE_DIR = "ATLAS/0.1.0.2.3/package" STACK_VERSION = "2.3" @patch("shutil.copy2", new = MagicMock())