blob: 417c2250b01259e9ee27c7b57649c35a7f109f0e [file] [log] [blame]
<?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>METRON</name>
<displayName>Metron</displayName>
<comment>A scalable advanced security analytics framework built on Hadoop</comment>
<version>${metron.version}</version>
<components>
<component>
<name>METRON_PARSERS</name>
<displayName>Metron Parsers</displayName>
<category>MASTER</category>
<cardinality>1</cardinality>
<versionAdvertised>false</versionAdvertised>
<reassignAllowed>false</reassignAllowed>
<clientsToUpdateConfigs></clientsToUpdateConfigs>
<dependencies>
<dependency>
<name>HDFS/HDFS_CLIENT</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>ZOOKEEPER/ZOOKEEPER_SERVER</name>
<scope>cluster</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>STORM/SUPERVISOR</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>KAFKA/KAFKA_BROKER</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
</dependencies>
<commandScript>
<script>scripts/parser_master.py</script>
<scriptType>PYTHON</scriptType>
</commandScript>
<configuration-dependencies>
<config-type>metron-parsers-env</config-type>
</configuration-dependencies>
</component>
<component>
<name>METRON_ENRICHMENT_MASTER</name>
<displayName>Metron Enrichment</displayName>
<category>MASTER</category>
<cardinality>1</cardinality>
<versionAdvertised>false</versionAdvertised>
<dependencies>
<dependency>
<name>HDFS/HDFS_CLIENT</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>HBASE/HBASE_CLIENT</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>ZOOKEEPER/ZOOKEEPER_SERVER</name>
<scope>cluster</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>KAFKA/KAFKA_BROKER</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
</dependencies>
<commandScript>
<script>scripts/enrichment_master.py</script>
<scriptType>PYTHON</scriptType>
<timeout>600</timeout>
</commandScript>
<configuration-dependencies>
<config-type>metron-enrichment-env</config-type>
</configuration-dependencies>
</component>
<component>
<name>METRON_PROFILER</name>
<displayName>Metron Profiler</displayName>
<category>MASTER</category>
<cardinality>1</cardinality>
<versionAdvertised>false</versionAdvertised>
<dependencies>
<dependency>
<name>HBASE/HBASE_CLIENT</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>ZOOKEEPER/ZOOKEEPER_SERVER</name>
<scope>cluster</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>KAFKA/KAFKA_BROKER</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
</dependencies>
<commandScript>
<script>scripts/profiler_master.py</script>
<scriptType>PYTHON</scriptType>
<timeout>600</timeout>
</commandScript>
<configuration-dependencies>
<config-type>metron-enrichment-env</config-type>
<config-type>metron-profiler-env</config-type>
</configuration-dependencies>
</component>
<component>
<name>METRON_PCAP</name>
<displayName>Metron PCAP</displayName>
<category>MASTER</category>
<cardinality>1</cardinality>
<versionAdvertised>false</versionAdvertised>
<dependencies>
<dependency>
<name>HDFS/HDFS_CLIENT</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>ZOOKEEPER/ZOOKEEPER_SERVER</name>
<scope>cluster</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>KAFKA/KAFKA_BROKER</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
</dependencies>
<commandScript>
<script>scripts/pcap_master.py</script>
<scriptType>PYTHON</scriptType>
<timeout>600</timeout>
</commandScript>
<configuration-dependencies>
<config-type>metron-pcap-env</config-type>
</configuration-dependencies>
</component>
<component>
<name>METRON_INDEXING</name>
<displayName>Metron Indexing</displayName>
<category>MASTER</category>
<cardinality>1</cardinality>
<versionAdvertised>false</versionAdvertised>
<reassignAllowed>false</reassignAllowed>
<clientsToUpdateConfigs></clientsToUpdateConfigs>
<dependencies>
<dependency>
<name>ZOOKEEPER/ZOOKEEPER_SERVER</name>
<scope>cluster</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>STORM/SUPERVISOR</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>KAFKA/KAFKA_BROKER</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
</dependencies>
<commandScript>
<script>scripts/indexing_master.py</script>
<scriptType>PYTHON</scriptType>
</commandScript>
<customCommands>
<customCommand>
<name>ELASTICSEARCH_TEMPLATE_INSTALL</name>
<commandScript>
<script>scripts/indexing_master.py</script>
<scriptType>PYTHON</scriptType>
<timeout>600</timeout>
</commandScript>
</customCommand>
<customCommand>
<name>ELASTICSEARCH_TEMPLATE_DELETE</name>
<commandScript>
<script>scripts/indexing_master.py</script>
<scriptType>PYTHON</scriptType>
<timeout>600</timeout>
</commandScript>
</customCommand>
<customCommand>
<name>KIBANA_DASHBOARD_INSTALL</name>
<background>false</background>
<commandScript>
<script>scripts/indexing_master.py</script>
<scriptType>PYTHON</scriptType>
<timeout>600</timeout>
</commandScript>
</customCommand>
<customCommand>
<name>ZEPPELIN_NOTEBOOK_IMPORT</name>
<commandScript>
<script>scripts/indexing_master.py</script>
<scriptType>PYTHON</scriptType>
<timeout>600</timeout>
</commandScript>
</customCommand>
</customCommands>
<configuration-dependencies>
<config-type>metron-indexing-env</config-type>
</configuration-dependencies>
</component>
<component>
<name>METRON_REST</name>
<displayName>Metron REST</displayName>
<category>MASTER</category>
<cardinality>1</cardinality>
<versionAdvertised>false</versionAdvertised>
<reassignAllowed>false</reassignAllowed>
<clientsToUpdateConfigs></clientsToUpdateConfigs>
<dependencies>
<dependency>
<name>HDFS/HDFS_CLIENT</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>HBASE/HBASE_CLIENT</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>ZOOKEEPER/ZOOKEEPER_SERVER</name>
<scope>cluster</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>STORM/SUPERVISOR</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>KAFKA/KAFKA_BROKER</name>
<scope>cluster</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
</dependencies>
<commandScript>
<script>scripts/rest_master.py</script>
<scriptType>PYTHON</scriptType>
</commandScript>
<configuration-dependencies>
<config-type>metron-security-env</config-type>
<config-type>metron-indexing-env</config-type>
<config-type>metron-rest-env</config-type>
<config-type>metron-pcap-env</config-type>
</configuration-dependencies>
</component>
<component>
<name>METRON_MANAGEMENT_UI</name>
<displayName>Metron Management UI</displayName>
<category>MASTER</category>
<cardinality>1</cardinality>
<versionAdvertised>false</versionAdvertised>
<reassignAllowed>false</reassignAllowed>
<clientsToUpdateConfigs></clientsToUpdateConfigs>
<dependencies>
<dependency>
<name>HDFS/HDFS_CLIENT</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>ZOOKEEPER/ZOOKEEPER_SERVER</name>
<scope>cluster</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>STORM/SUPERVISOR</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
<dependency>
<name>KAFKA/KAFKA_BROKER</name>
<scope>cluster</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
</dependencies>
<commandScript>
<script>scripts/management_ui_master.py</script>
<scriptType>PYTHON</scriptType>
</commandScript>
<configuration-dependencies>
<config-type>metron-security-env</config-type>
<config-type>metron-rest-env</config-type>
<config-type>metron-management-ui-env</config-type>
<config-type>metron-alerts-ui-env</config-type>
</configuration-dependencies>
</component>
<component>
<name>METRON_ALERTS_UI</name>
<displayName>Metron Alerts UI</displayName>
<category>MASTER</category>
<cardinality>1</cardinality>
<versionAdvertised>false</versionAdvertised>
<reassignAllowed>false</reassignAllowed>
<clientsToUpdateConfigs></clientsToUpdateConfigs>
<dependencies>
<dependency>
<name>METRON/METRON_MANAGEMENT_UI</name>
<scope>host</scope>
<auto-deploy>
<enabled>true</enabled>
</auto-deploy>
</dependency>
</dependencies>
<commandScript>
<script>scripts/alerts_ui_master.py</script>
<scriptType>PYTHON</scriptType>
</commandScript>
<configuration-dependencies>
<config-type>metron-security-env</config-type>
<config-type>metron-rest-env</config-type>
<config-type>metron-management-ui-env</config-type>
<config-type>metron-alerts-ui-env</config-type>
</configuration-dependencies>
</component>
<component>
<name>METRON_CLIENT</name>
<displayName>Metron Client</displayName>
<category>CLIENT</category>
<cardinality>0+</cardinality>
<versionAdvertised>true</versionAdvertised>
<commandScript>
<script>scripts/metron_client.py</script>
<scriptType>PYTHON</scriptType>
<timeout>1200</timeout>
</commandScript>
<configuration-dependencies>
<config-type>metron-security-env</config-type>
</configuration-dependencies>
</component>
</components>
<themes>
<theme>
<fileName>metron_theme.json</fileName>
<default>true</default>
</theme>
</themes>
<osSpecifics>
<osSpecific>
<osFamily>any</osFamily>
<packages>
<package>
<name>metron-common</name>
</package>
<package>
<name>metron-data-management</name>
</package>
<package>
<name>metron-hbase-server</name>
</package>
<package>
<name>metron-management</name>
</package>
<package>
<name>metron-parsers-common</name>
</package>
<package>
<name>metron-parsers</name>
</package>
<package>
<name>metron-parsing-storm</name>
</package>
<package>
<name>metron-enrichment-common</name>
</package>
<package>
<name>metron-enrichment-storm</name>
</package>
<package>
<name>metron-profiler-storm</name>
</package>
<package>
<name>metron-profiler-spark</name>
</package>
<package>
<name>metron-profiler-repl</name>
</package>
<package>
<name>metron-indexing-common</name>
</package>
<package>
<name>metron-indexing-storm</name>
</package>
<package>
<name>metron-elasticsearch-storm</name>
</package>
<package>
<name>metron-solr-common</name>
</package>
<package>
<name>metron-solr-storm</name>
</package>
<package>
<name>metron-pcap</name>
</package>
<package>
<name>metron-rest</name>
</package>
<package>
<name>nodejs</name>
</package>
<package>
<name>metron-config</name>
</package>
<package>
<name>metron-alerts</name>
</package>
<package>
<name>metron-maas-service</name>
</package>
<package>
<name>metron-performance</name>
</package>
</packages>
</osSpecific>
<osSpecific>
<osFamily>redhat6,redhat7</osFamily>
<packages>
<package>
<name>expect</name>
<skipUpgrade>true</skipUpgrade>
</package>
</packages>
</osSpecific>
</osSpecifics>
<commandScript>
<script>scripts/service_check.py</script>
<scriptType>PYTHON</scriptType>
<timeout>300</timeout>
</commandScript>
<requiredServices>
<service>HDFS</service>
<service>KAFKA</service>
<service>STORM</service>
<service>ZOOKEEPER</service>
<service>HBASE</service>
<service>ZEPPELIN</service>
</requiredServices>
<configuration-dependencies>
<config-type>metron-env</config-type>
<config-type>storm-env</config-type>
<config-type>storm-site</config-type>
<config-type>kafka-broker</config-type>
<config-type>kafka-env</config-type>
<config-type>zeppelin-config</config-type>
<config-type>metron-client-jaas-conf</config-type>
</configuration-dependencies>
<restartRequiredAfterChange>true</restartRequiredAfterChange>
<quickLinksConfigurations>
<quickLinksConfiguration>
<fileName>quicklinks.json</fileName>
<default>true</default>
</quickLinksConfiguration>
</quickLinksConfigurations>
</service>
</services>
</metainfo>