<i>Run Deploy Agents on each host through your provisioning process</i><p>If that's the requirement, a serious question might be: why not just deploy code through your provisioning process?<p>My personal impression is that the key issue with most systems in this area is that they whitewash, ignore or blur the reality that network topology, security, service codependencies, data security, build and deployment pipelines and so forth need to be managed at some level, may not be the same across all infrastructure, and requirements in these spaces can frequently be nontrivial with competing concerns. Thus, individual solutions typically only function for a subset of cases while ignoring the fact that others exist.<p>A clear description of the limitations of the approach of the tool would be useful.<p>Corosync/pacemaker is one mature solution in this area with a focus on HA and the capacity to navigate logical topology changes (due to faults, errors, etc.) in real time to resolve service interdependencies towards a defined 'goal state'. Extremely powerful, with a huge library of 'OCF resource agents' (service definitions) already written.[0] However, it also uses the 'agent on each machine' architecture. Where a small number of services are deployed at large scale in a parallel configuration I believe an agentless configuration methodology with PXE and IPMI power control is a more efficient node management path, though it obviously negatively impacts HA.<p>PS. 'Features' like rollback and 'hotfix' are arguably negligible if you have a reasonable service build process incorporating versioning.<p>[0] <a href="https://github.com/ClusterLabs/resource-agents" rel="nofollow">https://github.com/ClusterLabs/resource-agents</a>
Here's the latest blog post, which includes the link to the code: <a href="https://engineering.pinterest.com/blog/open-sourcing-teletraan-code-deployment-system" rel="nofollow">https://engineering.pinterest.com/blog/open-sourcing-teletra...</a>
<i>We use Teletraan heavily. Currently we have about 500 deploys per day, including the auto deploys.</i><p>Slightly off topic, I'm a big fan of continuous deployments, but 500 deployments a day seems excessive. Assuming an 8 hour work day, thats more than 1 deploy every minute. Its great that this system works that seamlessly, but are there really benefits with deploying that frequently?
Nice name. If people don't get the reference, Teletraan was the name of a series of computers from the Transformers series: <a href="http://tfwiki.net/wiki/Teletraan_I_%28G1%29" rel="nofollow">http://tfwiki.net/wiki/Teletraan_I_%28G1%29</a>
Title is a bit misleading, should be more like "Pinterest announces intent to open-source Teletraan, a tool for code deployments"<p>EDIT: Xeroday helpfully pointed out that there IS a link to code in another blog post in the same series.
What does a "host" mean in context of deployment with this tool? Does it mean that you spin up instances and then deploy over and over on the same set?