Hi Pablo, all, > Maybe for the future you want to evaluate to option of delegating to > terraform the communication with cloud apis and rely in ansible only for > configuration.
This is certainly a good suggestion, and an option I would like to explore. Can we make an EnhanceR project out of it? :-) That said, I had been thinking of doing a similar thing but with Ansible (which has a large number of modules dedicated to provisioning), see: https://github.com/gc3-uzhent -ch/elasticluster/issues/364 >From what I understand of the Terraform website (no direct experience), this would be similar to writing a TF configuration and then applying it. The idea has been actually already implemented in TmDeploy (see [1]), a specialized deployment script that builds on ElastiCluster, and the outcome is "mixed" in my opinion. On the good side, using Ansible allowed TmDeploy to easily implement features that have been on my TO-DO list for a long time (e.g., creating and attaching additional volumes to VMs). On the bad side, there are a few inconveniences: - Error reporting is *bad*: if something goes wrong, you're left with an Ansible playbook failure which is typically very hard to debug (say, the first step is extracting an actual error message from a JSON dump...) Basically there's nothing that can be done here, since we're just calling an external program. This means, ElastiCluster would become even less user-friendly (if possible) and support requests would increase... (but maybe TF is much better in this regard, I do not know) - Infrastructure deployment is slow: by construction, Ansible playbooks are executed sequentially so you wait for one VM to come up, then start another, then another... There might be some tricks to apply here but getting too smart makes error detection and reporting even worse... (Again, it's quite possible that TF is better in this respect since it apparently compiles a dependency graph and I presume that it can effect independent changes concurrently.) Does anyone have other experiences? Suggestions? Ciao, R -- You received this message because you are subscribed to the Google Groups "elasticluster" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
