What is going on the Container Ecosystem
Five years ago it was cloud and then it was public cloud and now it is containers. It’s really too late to be a container vendor, even to provide scheduling services and clustering services. However ecosystems around containers are actually pretty weak.
We still need security, governance, management, compliance and operationalizing all this stuff; all these sorts of things which are very important to us. The tough part is not building containers but putting them into operation and running them for an extended period of time. So hopefully the container ecosystem will get better as time goes on because we’re needing a lot of these things ourselves.
What are the trends right now in the ecosystem and containers?
Containers are still new, we don’t even really consider the ecosystem. It’s not in analyst’s radar screens, people aren’t writing and speaking about it a lot, but it’s an exploding market out there.
There is a battle right now in what is called the “Cluster Manager Space” which is the layer between Infrastructure as a Service (IaaS) and Platform-as-a-Service (PaaS), where you deal with groupings of Logical Infrastructure as the Google guys call it which makes a lot of sense. Docker swarm and kubernetes of course are playing in this intermediate layer, and it seems like the balance is starting to tip in the favor of kubernetes in terms of the actual deployments that we’re seeing on the field. But there is still a lot of problems with regard to general scalability solutions, storage and networking.
Networking is a pretty big problem. You could call the state of network security and container deployments of trash fire right now, everything can talk to everything else, it’s kind of a nightmare. There are some folks working to solve this, but we’ve got a long way to go. When most of the network implementations are actually user level, this makes you a bit nervous.
Things that need to be solved to get containers in production
It’s been interesting to watch the container ecosystem evolve over the last two years since Docker really started taking off and what’s interesting is seeing the uptick in the trend of people trying to put this stuff into production. Last year or so there was a lot of Docker, containers, CI/CD and test and dev. A lot of people actually trying to put it in the fire of production now.
At first there used to be four things that need to be solved to get containers in production working, now there is an estimate of six. First comes Scheduling-so like figuring out where to put your containers is actually harder than it sounds. Composition-being able to describe a multi-container App such as connected containers. Networking, i.e. allowing your containers to talk to each other. Storage-allowing your containers to write some data to disk and then maybe get rescheduled somewhere else and have that data that they need and be able to read and write it. Then there’s obviously security, Monitoring, governance and others.
Experts are focusing on ISPs who have been asked by their customers to start deploying their SaaS (Storage as a Service) solutions on-premises, the area where micro-services meet up, where there’s a lot of interest in container technologies. But then whenever you see people wanting to convert their stack, you don’t really want to retool your stack to run on containers and then be woken up in the middle of the night.
People need a strong incentive to be able to containerize applications and we’re seeing these ISPs who were running, currently running services being asked by their customers to deploy that same solution on premise. The focus is now on that, and also operationally stable software is important, and there’s a lot of requests for that. At the same time developers are able to be flexible enough that they can use it without getting operation teams involved.
So one of the things that seems to be hindering containers right now is not the technology but its skill sets. In other words there’s people who are not probably aware of what containers can do and not able to take advantage of the season enterprises that want to get into it, they just don’t have the people around to do that.
How can we change that?
We had the same problem with cloud and it still hasn’t changed. Containers are development paradigms, architectural paradigms, they are much more complex. So how do we build good container developers, good container architects?
The thing is that you’ve got to do some stuff that’s interesting to keep people engaged and then you know it helps to do videos and example applications and speak to use-cases that are real-world like the Minecraft stuff. Containerized Minecraft is also real-world example, it is something that is continuous CI/CD.
If you are converting to containers how do you move to the CI/CD pipeline and be able to get your application deployed continuously so that you can get back to Coding and get things up and running. It’s educating around those things and all of us to be able to take what we’re doing and capture our day-to-day activities that we’re doing with containers and share it with other people. It’s really about sharing knowledge with other people that’s the tricky bit.