Live data from Hacker News

Software Infrastructure 2.0: A Wishlist

erikbern.com

181–190 of 202 posts

Re: Software Infrastructure 2.0: A Wishlist

#181

This is a lot harder than the author wants to realize. Elastic infrastructure deployment in sub second latency is not likely to ever happen. The problem is simply a lot harder than serving http requests. It's not receive some bytes of text, send back some bytes of text. VMs are just files and can be resized, but optimal resource allocation on multitenant systems is effectively solving the knapsack problem. It's NP ha…

> The vendor claimed this could only happen one a million times, so they didn't consider it a bug. Guess how often one in a million times happens when you're routing a hundred million packets a second?

This reminds of people on HN who claim BGP is outdated and should be replaced.

They have no idea how mind boggling large and complex the global internet routing is. I would even argue that BGP in the default free zone (aka, the public internet) is the largest distributed system in the world.

> VMs are just files and can be resized, but optimal resource allocation on multitenant systems is effectively solving the knapsack problem.

as someone who works in a datacenter/cloud enviroment. Having optimal resource distribution is simply impossible to get 100% correct. Their is always some waste or over/underallocation. The same goes for large scale networks aswell.

Re: Software Infrastructure 2.0: A Wishlist

#182
post #81

This is a lot harder than the author wants to realize. Elastic infrastructure deployment in sub second latency is not likely to ever happen. The problem is simply a lot harder than serving http requests. It's not receive some bytes of text, send back some bytes of text. VMs are just files and can be resized, but optimal resource allocation on multitenant systems is effectively solving the knapsack problem. It's NP ha…

It’s true that we’ve made a ton of progress. But I LOVE it when developers demand more and I will bet good money that it’s only a matter of time when what the author describes will actually happen. We’ve been making tremendous strides in making production software systems easy and accessible for developers (and not sysadmins) to understand and operate. We’re currently in the stage where the devops principle has been…

> We’ve been making tremendous strides in making production software systems easy and accessible for developers (and not sysadmins) to understand and operate.

in my experience developers are terrible at doing operations. (for good reason mind you).

Devops only really became possible because a lot of operational problems have been outsourced to cloud providers, but they still persist. Or do developers also want to build the networks which provide fault tolerance, redundancy and scalability while also building software?

Running a large, multi tenant system for different workloads takes a mind boggling amount of work and skill, not to mention deep understanding of how networks and systems operate in detail and at scale.

Re: Software Infrastructure 2.0: A Wishlist

#183
post #178

Earlier quoted context omitted.

OnTAP Cloud? That's what their system was called.

Yup, we were beta testers or something the time

I still have the 8.1 manuals laying around here. Nifty technology but pricey, indeed.

Re: Software Infrastructure 2.0: A Wishlist

#184
post #144

Earlier quoted context omitted.

> edit actually, according to your wording, you are correct. That’s uhh... why I chose that wording. > Use AWS enough and you will run into this weekly. I _really_ wish you understood how amusing this exhortation is. I’m under no illusion about the reliability of AWS APIs - much less Azure or any of the other major public clouds. The easiest way to reduce drift is to prevent read/write access via anything except a de…

Been there. If Mitchell or anyone else on the core team doesn't want a feature to work a certain way, or feels that a bug isn't a bug , or maybe they want to wait until the next big release to look at something, tough luck for us. I suppose I have to become a Terraform developer in my spare time, and then I only need to spend years fighting the corporation that owns it over how to design it to actually function the w…

> Terraform doesn't look for existing resources.

This is 100% at odds with your stated goal of predictability.

> It doesn't make a best effort to fix things even when it clearly can detect what the solution or user's intent is.

As is this.

> It can't auto import resources, even when it knows that something already exists, and it won't remove something in its own state when you're trying to import it, even though you clearly want to replace what's in state with what you're importing.

I’m noticing a pattern with your stated desires being at odds with your stated goals.

FWIW, I manage dozens of accounts which no one touches outside of TF (or other similar tools) and have worked this way since 2016 with basically no issues.

Re: Software Infrastructure 2.0: A Wishlist

#185

I'm so happy to just develop desktop apps in C++ / Qt. I commit, I tag a release, this generates mac / windows / linux binaries, users download them, the end.

I want to live in that world again. It ended for me about 19 years ago when I left my last "desktop software" job. How do you manage to avoid "web stacks" in this day and age?

Re: Software Infrastructure 2.0: A Wishlist

#187
post #136

Earlier quoted context omitted.

Agreed. Operating systems abstract resources, the fact that we needed containers and VMs point to the fact that the first set of implementations weren't optimal and needs to be refactored. For VMs, security is the one concern, the others would be more direct access to lower levels and greater access to the hardware and internals than just a driver model. For containers I'd say that the abstraction/interface presented…

> one could write a program in Unikernel style, as well as have normal programs look more container-like. Projects similar to this exist today with https://nanos.org/ . You can run any typical web app (without having to re-write it) in a POSIX compliant Unikernel on most major cloud providers and bare metal. Each service runs in its own Unikernel. I had its creator on my podcast the other day at: https://runninginpro…

Cool. Thanks for the Nanos pointer!

Sadly, two generations of programmers probably need to die first, before we adopt the RnD that's been done in the last decade or three, or for what's been done the systems that languish in the shade of UNIX to be done again in the mainstream.

Re: Software Infrastructure 2.0: A Wishlist

#188

Earlier quoted context omitted.

(I'm not holding my breath for the refactor though... We're stuck at a local maximum and we're better at adding stuff,rather than removing/refactoring them. Also- just about EVERYTHING is built on top of these current layers)

Genode is a project in Germany I've been watching for a while... right now I think they are the best chance of getting there. They've been making it closer and closer to the point where I can latch onto it and start using it. There has to be a microkernel at the bottom of everything, which rules out anything Linux based. Genode does use Linux drivers though, in a contained way.

Yeah, Genode looks awesome, I've been rooting for it for a while.

I love their approach to hierarchical distribution of resources.

I'm embarrassed to admit that I haven't actually booted and played with it yet.

Re: Software Infrastructure 2.0: A Wishlist

#189

Earlier quoted context omitted.

(I'm not holding my breath for the refactor though... We're stuck at a local maximum and we're better at adding stuff,rather than removing/refactoring them. Also- just about EVERYTHING is built on top of these current layers)

You just subsume layers. Maybe as simple as Xen++ with a containerd frontend.

Yeah, sounds like a good approach.

I liked the direction Joyent was taking with Iluminos and Triton.

Problem is the fact that the tech is tied to a market, which has different rules and rates of evolution.

Best bet for a refactor is with a new market/platform.

Re: Software Infrastructure 2.0: A Wishlist

#190

Earlier quoted context omitted.

Your home network and a cloud datacenter aren’t comparable. Many clouds have host level firewall policies as a core feature, and anyone competent is managing them profile-style using Terraform or an equivalent. It’s really quite easy from that perspective.

> Your home network and a cloud datacenter aren’t comparable. Of course they are. I didn't need to think about firewall automation before, and now I do. For what gain? > anyone competent Not an option for most people. Let's make networking and security things more foolproof, not less, okay?

You really are refusing to listen to what people are telling you.

I have an Internet router, which uses NAT for IPv4, same as everyone else. If I want to punch a hole through for something like RDP or SSH, I have to use unique port numbers because I only have one Internet-facing IP address. Because there are only 3 billion IPv4 addresses for the whole World, all of them are regularly scanned by Bad People for open ports, making this RISKY.

I also have IPv6 enabled on it. No NAT. If I want to punch a hole through for RDP or SSH, I can use the standard ports because each device has a unique Internet-facing IP address. My router alone has 2^64 (millions of trillions) of unique addresses, of which a random 5 or 6 have been allocated. There is no way anyone ever is going to be able to scan these. I can SAFELY open standard port numbers and not have to worry about drive-by attacks.

THERE IS NO OTHER DIFFERENCE.

The router works the same, the firewall works the same, the Internet works the same, the GUI is the same. IT IS ALL THE SAME!

NAT is not magic. It is not a firewall. It is not necessary. It is not beneficial.

Post reply on HN