Support Questions

Find answers, ask questions, and share your expertise

Apache Metron 0.7.2 on Centos 7 cluster not installing via Ambari with HDP 2.6.5.0

avatar

Hello,

I am trying to install Apache Metron in a cluster created with Ambari and HDP 2.6.5.0.

When I select Metron as a service to install, I get stuck when trying to get to the next step, the next button shows as always disabled. This is not happening with any other service.

 

I followed this guides:

My environment specs are:

  • Java JDK 1.8 in all hosts
  • Metron RPM packages in /localrepo in all hosts
  • root user in all hosts
  • Ambari server 2.7.5.0
  • 6 Centos 7 host :
    • metron1 (9.6 GB, 4 cores, 100G SSD)
      • NameNode ZooKeeper Server Kafka Broker Zeppelin Notebook
    • metron2 (9.6 GB, 4 cores, 100G SSD)
      • SNameNode App Timeline Server ResourceManager History Server ZooKeeper Server Nimbus Kafka Broker
    • metron3 (15.5 GB, 4 cores, 500G SSD)
      • HBase Master Kafka Broker Elasticsearch Master
    • metron4 (11.6 GB, 3 cores, 50G SSD)
      • HBase Master Oozie Server Nimbus DRPC Server Storm UI Server Kafka Broker
    • metron5 (11.6 GB, 3 cores, 50G SSD)
      • Kafka Broker
    • metron6 (15.5 GB, 6 cores, 100G SSD)
      • HBase Master ZooKeeper Server Kafka Broker Kibana Server

 

If I check the console, I can see something is returning a 500 internal server error, but I am no expert of JS, so I cannot dig deeper.

 

Any idea what is happening, how to solve it or even how to figure it out?

 

Console logsConsole logs

 

 

 

    •   Metron6 servicesMetron6 servicesNext button always disabledNext button always disabled
1 ACCEPTED SOLUTION

avatar

I changed the file

/var/lib/ambari-server/resources/common-services/METRON/0.7.2/service_advisor.py

and inserted a return before all checks and it is working as a workaround, but is not a complete solution:

image.png

 

The problem seems to be that the 'componentList' does not contain "METRON_PARSERS" key, and this gives an error, that later becomes a 500 error qhen the API is called, and later becomes a disabled "Next" button with no feedback for the user.

 

Anyone here knows from were (which file) the 'componentList' is extracted?

View solution in original post

4 REPLIES 4

avatar

Also followed this link: https://community.cloudera.com/t5/Support-Questions/add-node-to-the-ambari-cluster-the-next-button-n... with this results:

1. No errors in ambari-agent logs?

2. Page refreshed, no change happended

3. Already using an incognito browser with cookies activated and protections disabled.

4. Errors encountered on ambari-server logs. Error file attached

5. Already explained above the JS console error

 

This happens when I change metron Enrichment from one host to another one

 

Traceback (most recent call last):
  File "/var/lib/ambari-server/resources/scripts/stack_advisor.py", line 190, in <module>
    main(sys.argv)
  File "/var/lib/ambari-server/resources/scripts/stack_advisor.py", line 122, in main
    result = stackAdvisor.validateComponentLayout(services, hosts)
  File "/var/lib/ambari-server/resources/scripts/../stacks/stack_advisor.py", line 1072, in validateComponentLayout
    validationItems = self.getComponentLayoutValidations(services, hosts)
  File "/var/lib/ambari-server/resources/scripts/../stacks/HDP/2.5/services/stack_advisor.py", line 119, in getComponentLayoutValidations
    parentItems = super(HDP25StackAdvisor, self).getComponentLayoutValidations(services, hosts)
  File "/var/lib/ambari-server/resources/scripts/../stacks/HDP/2.0.6/services/stack_advisor.py", line 114, in getComponentLayoutValidations
    items = super(HDP206StackAdvisor, self).getComponentLayoutValidations(services, hosts)
  File "/var/lib/ambari-server/resources/scripts/../stacks/stack_advisor.py", line 1095, in getComponentLayoutValidations
    items.extend(serviceAdvisor.getServiceComponentLayoutValidations(services, hosts))
  File "/var/lib/ambari-server/resources/common-services/METRON/0.7.2/service_advisor.py", line 42, in getServiceComponentLayoutValidations
    metronParsersHost = self.getHosts(componentsList, "METRON_PARSERS")[0]
IndexError: list index out of range

 

 

avatar

I changed the file

/var/lib/ambari-server/resources/common-services/METRON/0.7.2/service_advisor.py

and inserted a return before all checks and it is working as a workaround, but is not a complete solution:

image.png

 

The problem seems to be that the 'componentList' does not contain "METRON_PARSERS" key, and this gives an error, that later becomes a 500 error qhen the API is called, and later becomes a disabled "Next" button with no feedback for the user.

 

Anyone here knows from were (which file) the 'componentList' is extracted?

avatar

The component list is extracted from the configuration being made in the web, so the question would be: Why 'METRON_INDEXING', 'METRON_PARSING', 'METRON_REST', 'METRON_MANAGEMENT_UI'...  are not appearing as services?

 

The only services that appear are PCAP, PROFILER and ENRICHEMENT:

 

image.png

avatar

The real problem was the Ambari version, that is not compatible with Metron.

 

From Ambari 2.7 onwards, all this problems arise, so the maximum compatible version for now is Ambari 2.6.X