5 ms·
> Let’s go back to first principles. To describe Cloud Native in one word, we'd choose "automatable". Most existing applications are not. This is doubly true f
by drieddust 10y ago
> Let’s go back to first principles. To describe Cloud Native in one word, we'd choose "automatable".
Most existing applications are not.
This is doubly true for Enterprise Customers. Most of them are cloud minded without understanding their applications which aren't cloud conditioned.
- user5994461 10y agoExisting applications will work in the cloud. There is no need to use the fancy cloud stuff (multi region, auto scaling...) if it's not needed [or not possible]. At the minimum, renting an instance in AWS or GCE is equivalent to renting a physical server. Applications don't care what's the brand of the server they're running on.
- zeroxfe 10y ago> At the minimum, renting an instance in AWS or GCE is equivalent to renting a physical server. Applications don't care what's the brand of the server they're running on. This frequently trips people up. Cloud instances (typically) have far lower availability than physical servers. They also have no (cheap) persistence across VM evictions. Prepare for an unpleasant surprise if you're blindly migrating applications from physical servers to cloud instances.
- williamstein 10y ago> This frequently trips people up. Cloud instances (typically) have far lower availability than physical servers. They also have no (cheap) persistence across VM evictions. This may be true for AWS but (in my experience since 2014) it is not true for Google compute engine. On GCE, VM instances automatically migrate when the host is rebooted, and VM availability and uptime is impressive. Also, on GCE, the default recommended disks are all persistent, since they are block devices mounted over the network; this wasn't the case years ago, but is now, and it is very impressive. Disclaimer: my startup is in the Google startup program.
- zeroxfe 10y agoYep. GCE VM migration and persistent storage is really amazing, and getting better with every release, however there are still limitations and caveats that can get you in trouble (especially if you have very tight latency requirements.) Glad you like it! Good luck with your startup. Disclaimer: I work on infrastructure systems at Google :-)
- user5994461 10y ago> Cloud instances (typically) have far lower availability than physical servers. This is common belief that is just plain wrong. Servers can stay online for years without issues, same things on AWS and physical servers. > They also have no (cheap) persistence across VM evictions. I don't even understand that this sentence mean. You can start by explaining what is "VM eviction"? Whatever it is. Physical servers have no soft of failover or persistence for when one server suddenly dies. People started migrating from physical servers to virtualized more than 10 years ago (i.e. VmWare). AWS/GCE are not fundamentally different.
- drieddust 10y ago> Servers can stay online for years without issues, same things on AWS and physical servers Why they don't back it up SLA promise then? Having a VM does not guarantee increased uptime. On premises virtualization can guarantee it,cloud cannot.
- zeroxfe 10y ago> This is common belief that is just plain wrong. Sorry, you'll need to back that up. Evictions are when your VM is booted off a physical machine to a different one. This usually happens when something in the the underlying infrastructure is undergoing maintenance (e.g., networking, power, kernel, physical machine, etc.) VMs have to deal with servers dying plus evictions plus control and management plane failures, which significantly reduces the availability of a single instance. So strictly speaking, cloud instances typically have lower availability than physical machines. > Physical servers have no soft of failover or persistence for when one server suddenly dies. Servers suddenly dying is not the failure mode that requires persistence -- it's evictions. This is why cloud services tend to prefer external distributed storage systems to local disk, and a multitude of ways to quickly and automatically reinstall machines on instance turnup. BTW, GCE recently started supporting VM migration (which you can opt into), where they attempt to migrate your instance to another physical machine without losing any state. There are still limitations to this, but for a lot of simple cases can work well.
- boulos 10y ago
- AlexB138 10y ago>Existing applications will work in the cloud. There is no need to use the fancy cloud stuff (multi region, auto scaling...) if it's not needed [or not possible]. I'd like to unpack this. >Existing applications will work in the cloud. They may work, but there's a good chance they will not work well. Doing a direct lift and drop of an application onto AWS can be catastrophic if you don't understand storage persistence, or VM availability. An EC2 VM is not like a physical server in that it will not continue to run indefinitely until something breaks. I would say that existing applications will likely not work well without a shift in the way you treat underlying infrastructure. There are a lot of considerations around IO and locality as well. >There is no need to use the fancy cloud stuff (multi region, auto scaling...) if it's not needed You've just said "There is no need... if it's not needed. >[or not possible] If it is not possible to use the surrounding services your application is probably a poor fit for a cloud platform. It can become prohibitively expensive to try to directly replicate your physical datacenter architecture on a cloud platform. Is it possible to just drop your existing application onto some VMs? Sure, but it's probably a bad idea.
- dmourati 10y agoOne commentator put it thus: Legacy: unreliable software on reliable hardware. Cloud: reliable software on unreliable hardware. https://twitter.com/samj/status/25208089148 https://twitter.com/samj/status/25208089148
- user5994461 10y ago> An EC2 VM is not like a physical server in that it will not continue to run indefinitely until something breaks. Sorry to contradict but an EC2 VM does run indefinitely until something breaks ;) There are differences in physical storage between local disks, SAN, NAS, Network Storage, NFS, EBS volumes and Google Volume. A sysadmin should know the characteristics of these, doesn't matter whether it's cloud tech or own tech or homelab tech. People with all this knowledge are rare and expensive, yet critical for major migrations to go well. I can understand that this is an obstacle for major migrations to the cloud (and a benefit for my payroll). > You've just said "There is no need... if it's not needed". I think it's VERY important for legacy migrations. A migration should be done starting with the fundamentals, progressing in stages. All articles and talks focus on shiny bleeding edge stuff, which is only the latest stage(s). Depending on the applications and organization, this stage may or may not be worthwhile, it should or should NOT be a goal in the first place. > If it is not possible to use the surrounding services your application is probably a poor fit for a cloud platform. It can become prohibitively expensive to try to directly replicate your physical datacenter architecture on a cloud platform. I'm talking to clients who have to run their own datacenter right now and want to migrate. It is prohibitively expensive.