I realise that with NiFi, as their doc defines it, "Continuous improvement occurs in production". So this doesn’t lend itself to be used as a traditional development tool. However for the project I’m working on it’s been decided that this is the tool we’ll be using, so I'd rather not debate the merits of this as I realise there are going to be some issues. For example if push changes into an existing environment (staging->production) and there were live edits in the destination, they are going to get overwritten. So my question is if anyone knows of, or has come up with a list of best practices, for using NiFi as part of the development life cycle. For example:
- How do you manage versioning changes? I’m assuming you could export your entire configuration as a template and check that into version control?
- How do you mange deploying to different environment that might have different configuration? Would you update the template XML file? Pull it in dynamically from something like Zookeeper?
- How do you deploy server? Can you just deploy a stock NiFi deployment and then update it from your exported template (as mentioned above) using the NiFi REST API?
- If there are multiple developers is it better, to work off of a single developer server or have everyone develop using their own and merge the changes (merge exported xml template files). I’m guessing merging any significant changes could be difficult but have not attempted it.
Any suggestions or references to addition resources would be greatly appreciated. Thanks.
Aucun commentaire:
Enregistrer un commentaire