4 ms·
Agreed - primary motivation weren't savings, but much smoother UX with Kubernetes on Google. We're adopting container-based approach to development (and DevOps)
by tzaman 10y ago
Agreed - primary motivation weren't savings, but much smoother UX with Kubernetes on Google. We're adopting container-based approach to development (and DevOps), so we explored alternatives, and chose Google Cloud.
- ignoramous 10y agoThanks for sharing your experience. Why, acc to you, is Kubernetes on AWS a non-starter? Is it too difficult to setup? Or maintain? Or simply isn't the first class citizen, like it's on GCP? Or does it just make sense to stick with GCP since K8s has Google's blessing? Or...
- tzaman 10y agoTwo reasons really, the first is that AWS has become this bloated mess of "stuff", making it increasingly harder to use, because so much time is needed to either constantly look at it to see what's new/changed or vigilantly document everything. GKE, based on my experience, uses more "convention over configuration" approach, so the UI is much less cluttered, easier to understand, and comes with good defaults out of the box. And yes, K8s is a first class citizen on GKE and it overall fits nicely in the google compute engine environment. The only downside is that Google Cloud doesn't have a hosted DB offering for PostgreSQL, like AWS RDS, so it took me a while to set up everything properly. Finally, from a purely subjective point of view, Google's Material design is easy on the eyes. This is roughly what we ended up with for our stack: https://cl.ly/1z141g0e1w38 https://cl.ly/1z141g0e1w38 (The top three instances are K8S, then two GlusterFS instances which hold persistent volumes for pods and finally three PSQL instances that also run Redis Sentinels with a quorum of 2 - Redis itself is on Kubernetes as a DaemonSet)
- ignoramous 10y agoThanks a lot for taking time to respond. I've a couple of clarifying questions: > Two reasons really, the first is that AWS has become this bloated mess of "stuff", making it increasingly harder to use Are you referring to any specific offerings: CodeDeploy/Beanstalk/EC2? Or generally the entirety of AWS catalog? I agree that the sheer amount of configurations and the breath of offerings might appear bloated and there are parts where AWS looks its age, not necessarily a bad thing, though. > because so much time is needed to either constantly look at it to see what's new/changed or vigilantly document everything I am not able to relate to this. AWS is pretty serious abt backwards compatibility and making transitions smooth unless there's a serious security risk. Re: Console: This complaint comes up often on HN. Thanks for pointing it out. Re: Convention over configuration: K8s seems to be a great piece of software from what I keep reading abt it. I can understand why anyone would choose to use it. I am left wondering why it isn't as easily usable on AWS infrastructure... I guess I must try it out myself, someday.
- tzaman 10y agoI'm not referring to any specific offering, but just the sheer amount of ways to accomplish things on AWS - and the docs don't help, I urge you to compare (or even time) the process of following the docs in setting up AWS versus GKE clusters. You'll notice the process is much faster with GKE, especially because the docs include at least some real-world examples, compared to AWS where the documentation is almost completely abstract. And as a "very" curious developer, I always get pulled into analysis paralysis. Not so with GKE. There's one way to accomplish a particular thing, the only choice is UI versus CLI - and since most of us have Google accounts anyway, gettings started with GKE is maybe a couple of commands and you have a cluster up and running. Try googling how to set up Jenkins/WordPress on AWS/GKE. A VERY real world examples and Google provides docs, AWS does not - I'm not interested in high-level overviews, I want to solve a particular problem. What AWS needs first and foremost is a competent UX team.
- ranman 10y agoIs something like this useful for you? https://aws.amazon.com/getting-started/tutorials/ https://aws.amazon.com/getting-started/tutorials/
- tzaman 10y agoNope, but it illustrates my points perfectly. A company like Amazon should have hundreds of those, with real use cases that developers (or DevOps) care about. For instance, I have a Rails/Node/Go/whatever app. How do I deploy it using any of the available services? Which one is preferred? Why? What about the connecting services, like Postgres+Redis? (I know there's an offering for everything, I'd like to know how it all fits together, best practices, etc)
- ignoramous 10y agoMakes sense. Thanks once again. :)
- mbrukman 10y agoThanks for the feedback on Cloud SQL! Will pass it on to the team. I am a Google Cloud PM, though not on Cloud SQL itself.