[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-12-12 Thread ottobackwards
Github user ottobackwards commented on the issue:

https://github.com/apache/metron/pull/834
  
I'm good +1


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-12-12 Thread cestella
Github user cestella commented on the issue:

https://github.com/apache/metron/pull/834
  
As far as THIS PR, I think it has the 2 +1s that I was waiting for.  As for 
a long-range fix, I think it's going to happen outside of this PR.  Did I miss 
anything?


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-12-12 Thread ottobackwards
Github user ottobackwards commented on the issue:

https://github.com/apache/metron/pull/834
  
I expect to address this in the "777" feature branch/ parser effort.


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-12-12 Thread merrimanr
Github user merrimanr commented on the issue:

https://github.com/apache/metron/pull/834
  
After reading this whole thread I agree with @ottobackwards.  If we 
installed and started all services and THEN installed our parsers separately 
this whole issue goes away.  If a parser's template doesn't exist or isn't 
installed correctly, it fails and hopefully we know exactly why.  That is 
obviously a major architectural change and won't be solved in this PR.  

Since we're in a situation where we do include default parsers as part of 
the installation, I think they should work out of the box and fail fast if 
there are not installed correctly.  Would some of the concerns be alleviated 
with https://github.com/apache/metron/pull/831?  

+1 from me either way.  


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-12-12 Thread ottobackwards
Github user ottobackwards commented on the issue:

https://github.com/apache/metron/pull/834
  
Where are we at with this?


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread ottobackwards
Github user ottobackwards commented on the issue:

https://github.com/apache/metron/pull/834
  
  My comment is more 'big picture'.  I don't think it nec. applies to how 
this PR is resolved.


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread mmiklavc
Github user mmiklavc commented on the issue:

https://github.com/apache/metron/pull/834
  
@ottobackwards I need to think through the use cases and implications more 
(e.g. what about a non-ES situation?), but I think your points are valid.


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread ottobackwards
Github user ottobackwards commented on the issue:

https://github.com/apache/metron/pull/834
  
my comment was re: "It appears to me that we cannot add new templates via 
the current Ambari mechanism without modifying a release/MPack"


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread ottobackwards
Github user ottobackwards commented on the issue:

https://github.com/apache/metron/pull/834
  
This is why I put the templates with the parsers in 777.  Although I did 
not have the templates installing from there because list discussion was tough, 
mainly because talking about this in the abstract is hard.  The idea was that 
in the end we would install with the parsers.  Possibly after the ambari flow.

- we should be able to install metron without installing and configuring 
any 'demo' system or parsers at all
- we should be able to manage and install templates 
- templates are part of any parser configuration and should be managed and 
deployed with the parsers ( ie. 'create an deploy an es template is on the list 
of what you need to do for a production parser so it goes with the parser 
workflow')
- we shouldn't lay down default configurations for the 'demo' parsers
- the demo system should be managed outside main code ( ie. the bro.json 
files configured with the geo enrichments etc should be separate than what is 
installed by default)
- the demo system should be a separate installable option
- all the ES/KIBANA/SOLR issues with mpack etc





---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread mmiklavc
Github user mmiklavc commented on the issue:

https://github.com/apache/metron/pull/834
  
@nickwallen and @cestella you both make some good points here. The upshot 
is that this part of our architecture is inextricably tied to ES and in reality 
we should have another abstraction here. It appears to me that we cannot add 
new templates via the current Ambari mechanism without modifying a 
release/MPack. It's fine for managed sensors (bro, yaf, snort, other potential 
future default sensors), but if a user wants to add new templates, you'd have 
to manage them outside of Ambari. It's clear to me now that the back and forth 
on the right way to manage the error handling is because we have a code smell 
that needs some additional work.


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread cestella
Github user cestella commented on the issue:

https://github.com/apache/metron/pull/834
  
I ran this up in full-dev and index start functions fine and data is 
written to the indices.


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread cestella
Github user cestella commented on the issue:

https://github.com/apache/metron/pull/834
  
Nick's points are spot-on, I think.  I think the core abstraction issue is 
that we're doing ES-specific things in the indexing section.  We probably want 
to decouple indexing from ES a bit and have a separate component for ES 
configuration installation.  This also might not be something we want to do as 
part of ambari, but rather the installation of templates might should be done 
upon parser start time.  This might bear rethinking is what I'm saying.

That being said, I think I'm still more uncomfortable with a masked failure 
like we have it now.


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread cestella
Github user cestella commented on the issue:

https://github.com/apache/metron/pull/834
  
Ok, so a couple of things here.  I wanted to have a vigorous discussion, 
because this change has some pros and cons.

At the moment, as Nick alluded, we do template install upon index topology 
start.  The problem is that we cannot depend on ES starting prior to the 
indexing topology due to us not having a hard dependency listed there in the 
[role_command_order.json](https://github.com/cestella/incubator-metron/blob/e83390a39910903ccba313a7a1b00433bf347058/metron-deployment/packaging/ambari/metron-mpack/src/main/resources/addon-services/METRON/CURRENT/role_command_order.json).
  The reason why, I believe, is because we don't assume that users are using ES 
managed via ambari necessarily.

All this to say that there may be a failure to start the indexing topology 
upon startup, which would necessitate a restart of the indexing topology to 
retry template install.  The downside to what we are doing currently, though, 
is that a warning is hidden in logs that users probably wont' see.  They will 
see green lights and the UI may or may not work (probably not).  This will get 
worse in ES 5, because without those templates, tuples will fail.

So, my question to you guys, is there sufficient value in failing fast here 
given the broader context.  I think so, but I want everyone to realize that we 
may end up in a situation where indexing fails to start becuase of an ordering 
problem with ES.

I will not push this through without discussion, so I'd like at least 2 
+1's from committers and a week of discussion before a commit happens.  
Thoughts?


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread nickwallen
Github user nickwallen commented on the issue:

https://github.com/apache/metron/pull/834
  
And for the record @anandsubbu did implement this as "fail fast" in his 
original PR.  So I think he is all for this. I was the one who talked him out 
of failing fast here.  I was wary of introducing a hard dependency between 
Indexing and ES and didn't think that the "Install Index Templates" step would 
fail often enough for this to be a problem.  


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread nickwallen
Github user nickwallen commented on the issue:

https://github.com/apache/metron/pull/834
  
I clearly see the advantages of failing fast here, but I do have a 
hesitation.   I haven't even totally convinced myself of this.   Maybe you guys 
can help me think down this line of thought and make sure it is a non-issue.

This seems like we are introducing a hard dependency between Indexing and 
Elasticsearch.  If Elasticsearch is not running, then I cannot start the 
Indexing topology.  What if I am not using ES, but just want to index into HDFS 
(or Solr, ha)?  Or what if I am need to customize my templates?  Does this 
introduce any pain points that we are not anticipating?



---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread mmiklavc
Github user mmiklavc commented on the issue:

https://github.com/apache/metron/pull/834
  
This is good. +1 by inspection.


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread cestella
Github user cestella commented on the issue:

https://github.com/apache/metron/pull/834
  
Ah, yes, sorry, I should be more clear here.  Starting the indexing 
topology should fail if the indexing templates are not installed.


---


[GitHub] metron issue #834: METRON-1306: When index template install fails, we should...

2017-11-07 Thread nickwallen
Github user nickwallen commented on the issue:

https://github.com/apache/metron/pull/834
  
Just a comment on the description of the JIRA, not the code change itself.  
Index templates can only be installed when starting the Indexing topology, not 
during install. During install, Elasticsearch is most likely not running yet.  
That being said, I think the ask here is that starting the indexing topology 
should fail, if the index templates fail to install.  And this is what you have 
with your PR.


---