TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Introducing SmartStack: Service Discovery in the Cloud

94 pointsby _harryover 11 years ago

10 comments

chris_vaover 11 years ago
I&#x27;m glad to see more cluster management software getting open sourced, and this is sort of on the right track.<p>However, looking at the design, this still has a long way to go. There are a lot of failure modes you guys haven&#x27;t encountered yet, which will result in a few design tweaks. For example, what happens if your health checkers decide to start reporting garbage data (e.g. maybe they are too overloaded to properly perform health checks)? Or when you have a query of death being issued? Also, things like traffic sloshing can very quickly build resonant failures in a system like this.<p>(Source: many years working on Google infrastructure, including causing outages related to load balancing code)
评论 #6602150 未加载
igor47over 11 years ago
Hi guys! I&#x27;m one of the primary authors of SmartStack. Happy to answer any questions that aren&#x27;t covered in the blog post.<p>We&#x27;re also doing a Tech Talk on SmartStack today at Airbnb HQ; stop by if you&#x27;re in SF: <a href="https://www.airbnb.com/meetups/33925h2sx-tech-talk-smartstack-scaling-airbnb" rel="nofollow">https:&#x2F;&#x2F;www.airbnb.com&#x2F;meetups&#x2F;33925h2sx-tech-talk-smartstac...</a>
评论 #6605527 未加载
hkarthikover 11 years ago
Great post. This is interesting due to similar discussions we&#x27;re having at work about moving from a monolithic Rails app architecture to an SOA.<p>I&#x27;m curious though, what does the local developer environment look like when you run an SOA of this complexity? Does everyone needs to run a series of Vagrant VMs&#x2F;Docker containers to have a fully functional local version of the application running?
评论 #6603432 未加载
评论 #6602127 未加载
评论 #6602122 未加载
评论 #6604330 未加载
ceejayozover 11 years ago
&gt; On AWS, you might be tempted to use ELB, but ELBs are terrible at internal load balancing because they only have public IPs.<p>Yet another reason to run in a VPC, which includes internal-only ELBs as a very useful feature.
devonbleakover 11 years ago
ELB will actually do internal load balancing in a VPC using your own custom security groups. Doesn&#x27;t help if you&#x27;re not in a VPC, but nowadays the default is for everything to go in a VPC.
评论 #6601808 未加载
eliwjonesover 11 years ago
I don&#x27;t know... sounds like they just shifted the &#x27;single point of failure&#x27; to the Zookeeper cluster. Is it somehow sexier to have your SPOF be things running Zookeeper instead of things running loadbalancer or DNS software?:<p>&quot;The achilles heel of SmartStack is Zookeeper. Currently, the failure of our Zookeeper cluster will take out our entire infrastructure. Also, because of edge cases in the zk library we use, we may not even be handling the failure of a single ZK node properly at the moment.&quot;
评论 #6604870 未加载
druiidover 11 years ago
Cool stuff I think though that much of this can be handled with other ways of doing things (although obviously there is never one right way of doing these kinds of things). This application kit is one way of orchestrating service&#x2F;server discovery. Another way, which I have implemented personally is to use a combination of mcollective and puppet (with puppet facts enabled). This allows you to defined roles for specific systems and run tasks against servers of that specific role type, keep track of which servers are that role type, connect them to a &#x27;central&#x27; load-balancer and many other things.<p>This serves to solve most of the issues that this toolkit provides for, but likely would not be the good option for everyone. Just some info on at least one other way to deal with this stuff!
评论 #6602017 未加载
mattjover 11 years ago
I&#x27;ve been hearing good stuff about this for a while - it&#x27;s awesome to see it open sourced! Setting up a local haproxy to handle service failover &#x2F; discovery is a really clever solution, and is an awesome approach to encapsulating a bunch of really messy logic.
nlover 11 years ago
So.. SOA.<p>Everyone is doing it, but I never see details about how the services are wired together.<p>Do people use ESBs, or directly wire up services to each other?
评论 #6604698 未加载
BaconJuiceover 11 years ago
Can someone explain to me what this really is? I don&#x27;t follow and yes I read the intro.
评论 #6601978 未加载
评论 #6601789 未加载