The thing that I saw is missing and is blocking a lot of this adoption is that because there isn't a consistent baseline, everybody does it differently, everybody has to troubleshoot it. They can't help each other. Software defined networking makes it even more complex because it's very sensitive to the networking topology and the node topology and how you configure the agents on the systems.
Art Fewell: Race conditions were really, really hard when we thought of networking in isolation. As it becomes more and more integrated, it's a challenge.
Rob Hirschfeld: It's crazy. There's a change. I think there's a real change that people are going to look at SDN and basically unplug it and throw it out. Here's the scenario, I'm an operator and let's take public cloud 'cause public cloud actually needs this layer for tenant isolation. I'm a private cloud person who's running mountains of workloads. I'm trying to use software defined networking because I'm supposed to and it has some benefits. It's a good thing.
Somebody calls me up and say, "Virtual Machine A can't talk to VM-B." All of sudden the operator is, "Okay. Let me check that. No, that's not working. Let me look at the virtualized layer on the host. Let me look at the physical layer on that host. Let me look at the top of rack topology. Let me look at my switch fab or backbone. Let me look at my next switch."
By the time they've gone through this whole list of things to figure out what's going on, they're just going to say, "Screw this. I'm tired." The first time they'll troubleshoot it, they second time they're going to toss it, they're going to turn it off and just say, "I'm going back to flat networking or I'm going to switch to IPV6 and just do point to point IPV6 with encryption."
This is what happens, developers don't think about the complexity of maintaining ops and they don't worry about the support calls in the middle of the night when things are breaking.
At the end of the day the operators have to deliver a working service and if the service gets too complex with too many layers of abstraction in it and too many things that knobs turn, they're going to get frustrated. That becomes a real cost.
A lot of times we overlook the deployment and complexity and maintenance cost in the equation. I think that's going on in the Docker environment quite a bit. The developers love it, some use docker every day. It's amazing and it helps me do my development faster. That's a good thing. It doesn't necessarily help me operate a datacenter better. It could actually make it more problematic if it's not done right.
Sign up for CIO Asia eNewsletters.