6 ms·
Tsuru - open source platform as a service (written in Go)
- jstanley 14y agoIs this a parody? What actual platform is it?
- SingAlong 14y agoIt looks like an alternative to Heroku and VMware's CloudFoundry (http://www.cloudfoundry.org http://www.cloudfoundry.org, which is also opensource) I just checked the docs - http://docs.tsuru.io http://docs.tsuru.io and the git repo - https://github.com/globocom/tsuru https://github.com/globocom/tsuru Would have been nice to see screenshots of the command line tool. Would have made things simpler for commoners.
- ansible 14y agoI'd also like to see at least some kind of quick explanation of why this is being created. How does it differ than CloudFoundry, for example? What issues does it try to solve that don't work well with the existing platforms? Just a few minutes to explain the "why" question, and I might actually want to sit down and read through the installation documentation.
- goodwink 14y agoI hope that the "why" is that it's much simpler to use on a small scale. What I'd really like is a standardized engine to deploy apps of many flavors on rather than having to create new chef scripts to deploy everything I write. I essentially want something that works like heroku as far as ease of use for deployment/scaling, accommodates many different application types, and is easy for me to spin up in a 2-4 node cluster on my own VPSes. Every time I have a new app to deploy I just push it to the cluster and I'm done, adding additional VPSes as it starts to get full. I'm hoping this is such a thing, but I haven't tried it just yet, so I can't say for sure. CloudFoundry, OpenShift, etc. seem pretty heavyweight and more meant for service providers or large corporate private clouds. If they can be used like I describe too could anyone provide some links to docs/blogs about it? I haven't found it so far.
- fss 14y agoThe original motivation wasn't exactly that, but we changed it. At the first moment, we started an open source platform as a service based on Globo.com needs. That's why tsuru first supported EC2 instances. But that's pretty expensive: having 10 virtual machines for an app is not cheap, and does not fit in most company's budgets. That's why we started implementing support for application containers, and we need to work on documentation and facilitate the life of people willing to deploy tsuru. Thank you for your feedback!
- wslh 14y ago"written in Go" in the title was the trick to gain your attention?
- wheaties 14y agoI don't get it. I'd understand more if there was a service being sold or if they said you could use it to set up your own. Can anyone from the project explain the what, why, and where of it all?
- goodwink 14y agoYou can use it to set up your own, see http://docs.tsuru.io/en/latest/ http://docs.tsuru.io/en/latest/ EDIT: I'm not from the project, I just found it interesting and posted it...there probably isn't anyone from the project watching this thread.
- flaviamissi 14y agoWe're here! Preparing responses ;) We have also created some docs issues[1][2] on our repository based on some questions posted here. [1] https://github.com/globocom/tsuru/issues/367 https://github.com/globocom/tsuru/issues/367 [2] https://github.com/globocom/tsuru/issues/366 https://github.com/globocom/tsuru/issues/366
- fss 14y agoSorry for our absense. This HN entry surprised us. We're aware that we need better docs explaining what tsuru is and it compares to alternatives like OpenShift and Cloud Foundry. Currently, we're not running tsuru in any public cloud. We _hope_ that will change in the future :-)
- goodwink 14y agoSorry for the surprise HN post! ;) I'm wondering if there's any docs for deployment beyond the python example I saw. I'd like to deploy nodejs and go apps in particular. Thanks for the interesting project!
- rjsamson 14y agoThis is really interesting. It appears to be a lot easier to get started with than CloudFoundry, but it is difficult to tell at this point how well it compares. Very cool none-the-less!
- StavrosK 14y agoCan someone explain how this (or other tools like this?) work? How do they install services, ensure they start up, handle upgrades, etc? I am utterly confused by all these PaaSaaS apps.
- tombh 14y agoI think the basic concept to understand is that of the 'dyno'. Although a term from the Heroku platform, I believe it applies to most of the other platforms too. A dyno is a container (sort of like a VM but without hardware virtualisation, see LXC or OpenVZ) that isolates system resources. You can have multiple dynos on any given server and you can have lots of servers. Each dyno contains the entire environment needed by any given app, so it'll contain the specific binary version of ruby or node for example and it'll also have unique copies of all the dependencies, managed via bundler or npm for example. Scaling your app simply means having more running dynos that are load balanced by a centralised load balancer used across the entire platform. So yes, interestingly there is a lot of duplication of the code base. Services, like databases, are managed on their own separate servers/clusters and allow multiple connections and can be scaled/sharded separately from the dyno farms. Therefore they can be monitored, maintained, upgraded, etc, separately as well. I'm a small-time contributor to http://github.com/openruko http://github.com/openruko, an opensource Heroku clone.
- StavrosK 14y agoOh, that makes sense, thanks. I was under the impression this managed everything (including DBs and other services), so I was wondering how this was possible. I guess this ties in with another post I saw the other day, which was a lightweight container format you could add your environment to and deploy (and sounds like a game-changing idea). If we have a functional, standardized, self-contained container format that provides reasonable security and that you can install an environment to and just deploy to a server, it would pretty much mean that you can pick your app up and copy it to another host and be running in five minutes.
- shykes 14y ago
- zpassenger 14y agoThis is just awesome. This is what the web needed. Globo.com will be the next Google, keep an eye on it.
- lukeholder 14y agospam.
- roma1n 14y agoWill that include addons, for instance a mobile backend-as-a-service, Parse style?
- josegonzalez 14y agoYou can already use those addons outside of Parse, Heroku etc. Maybe what you want is like a library of all available addons for all services?
- fss 14y agoYes, tsuru calls that services. They're behind an API. Enabling the deployment of services without API's is already in our roadmap, but we don't know when we will get it done.
- JeremyMorgan 14y agoA pile of buzzwords, a funny sounding name that's fun to say, and "written in go" to get some HN love. Yawn. Wake me up when they do something Heroku/CloudFoundry/Appfog/Ironfoundry etc aren't doing.
- compellavi 14y agoWhy people downvote a comment just because it express criticism. While not very gentle, it was neither off-topic or irrelevant and it was a perfectly valid opinion.
- kryptiskt 14y agoThe criticism is skin-deep and isn't expressing any insight into the project, the "yawn" is a trite way of showing contempt. All in all, a shitty comment, if I could downvote it two times I would.
- Ziomislaw 14y agowhy does every such service forces you to use git? git is not a deploy tool!!
- stefantalpalaru 14y agoGit can be a deployment tool by using the post-update hook in a server-side repo. In my setups it also runs tests in a "test" repo before deciding to push into a "production" one.
- redbad 14y agogit absolutely is a deploy tool.
- fss 14y agogit works as a deployment tool, but not in all cases. It's useful to deploy code, but when writing Java or Go, you usually don't deploy the code, you deploy compiled binaries. Currently, tsuru forces you to deploy your code (you can create a git repository versioning the binaries, and do some local magic to compile your source, put it in the repository and push it - like creating a "deploy" target in your Makefile, but that's an ugly workaround). In the future, tsuru will probably support other ways of deployment.
- Matrixik 14y agoAnd when they force you to use git they always forget to also support mercurial...
- knodi 14y agoLoving all this Go news lately.
- uniclaude 14y agoThis is a good occasion to read the source code of a non-trivial piece of Go code. The documentation of the project seems rather sparse, but at least, the app has readable tests. That said, if you are looking for an open-source platform as a service, OpenShift, or as others mentioned, CloudFoundry are more mature options.
- scottmp10 14y agoI had the same impression. I have been working on a very early prototype of something very similar to this and was curious the know the general architecture of the system but there doesn't seem to be any documentation covering that. I wish that more of these projects were more general like Mesos as opposed to just replicating a service across machines.
- fss 14y agoWhen using the work-in-progress lxc provisioner, tsuru will behave like Mesos, but it's no that stable yet. First we worked on getting it working with EC2 instances, and now we are working on lxc and frontend integration.
- shykes 14y agoHey guys, want to collaborate with http://docker.io http://docker.io on the lxc provisionner? There are a bunch of "heroku-in-box" building on top of it already.
- moondowner 14y agoHow does this compare to CloudFoundry or OpenShift? I guess they all try to solve the same problem, but I'm really interested..
- Buzaga 14y agoGlobo is the media monopolist of Brazil, in case you don't know... it runs most major print and music publishers, dominates the TV space and, for good or bad, is picking the best technologists in Brazil and dominating news, sports and some vanity entertainment of the web here. While other corps are slacking they're doubling down on hiring the Agile, Ruby, Python, Go and etc guys most `traditional` techie companies here ignore and are probably making the other players eat dust in doing so..
- oscargrouch 14y agoWhy the hate? at least they are doing something.. They are hiring people and allowing them to share their work in the opensource space, whats bad about it? PS: i'm a Brazillian too
- Buzaga 14y agoI don't think I was hateful, I actually gave them credit on the tech culture it's building.. Some of the comments were from people who didn't understand where this was coming from, if it was legit or not.. Obviously, people don't pick Open Source PAAS without getting a bit of context and that was what the comment was about.
- facorreia 14y agoThat account is not factually correct. Media in general and television in particular is not a monopoly in Brazil. Globo is the largest player in the market and the one the viewers favor the most, but it's not a monopoly.
- Buzaga 14y agoIt could be argued both ways, don't you agree? every antitrust case starts with "ok, let's define what would constitute monopoly and let's see if we can agree this is or not one" but we both know we'll probably never see this case being opened around here, right? ;) But yes, my affirmation is not factually correct.
- kapilvt 14y agoBased on juju, so i assume you can use all the various charms that juju allows for.. http://jujucharms.com/charms/precise http://jujucharms.com/charms/precise
- fss 14y agoUnfortunately not. Our charms contains some custom hooks, but we want to remove them in the future. Here are the examples: https://github.com/globocom/charms/tree/master/precise https://github.com/globocom/charms/tree/master/precise (centos charms are outdate).
- flaviamissi 14y agoYou can, but in order to deploy applications you should use our own charms, it's explained in our chams repository[1]. Tsuru is based on Provisioners, our default provisioner is juju, we also have a on going development of a lxc provisioner[2]. You can also build your own provisioner (docs coming). [1] http://github.com/globocom/charms http://github.com/globocom/charms [2] https://tsuru.readthedocs.org/en/latest/lxc.html https://tsuru.readthedocs.org/en/latest/lxc.html
- robotmay 14y agoI always like seeing people use beanstalkd. It's a great bit of software which seems to have been largely overshadowed by redis these days, which is a shame.
- Lexarius 14y agoIn Japanese, "tsuru" can refer to a type of crane, which is likely related to the origami crane on the page. Depending on the kanji, it might also be a few different verbs: 吊る: to hang; to suspend (something from something); to be hanged (by the neck) 釣る: to fish; to angle; to catch; 攣る: to cramp; to be cramped; to contract
- Xanza 14y agoI'd be interested in seeing an automatic deploy script for this service to teraform a new dedicated server instance.
- fss 14y agoThis is on tsuru's roadmap. We want to make it easier to install and manage. Thanks!
- gnuvince 14y agoConfused me with Tsuru Capital [1][2], a trading company that uses Haskell as their main programming language. [1] http://www.tsurucapital.com/en/jobs.html http://www.tsurucapital.com/en/jobs.html [2] http://tomschrijvers.blogspot.ca/2012/12/haskell-tsuru-capital.html http://tomschrijvers.blogspot.ca/2012/12/haskell-tsuru-capit...
- yarapavan 14y agoAnother interesting project, Appscale (https://github.com/AppScale https://github.com/AppScale) from UCSB, is a GoogleAppEngine PaaS clone