Cloud-Native Optimization with Sylabs’s Keith Cunningham
Keith Cunnigham, vice president of strategy for Sylabs, explains why enterprise IT organizations are now employing multiple types of containers to optimize cloud-native applications running in production environments.
Transcript
This is Textron tv. Hey guys, thanks for the drill. We're here with Keith Cunningham as vice President of Strategy for Slab, and we're talking about, well, where containers are headed in 2024, because there's all kinds of fun things happening from AI to security issues, to we're deploying these things at scale and look out.
We don't know what's coming next. Hey, Keith, welcome to the show. Hey, Mike, thanks for having me.
Appreciate it. What is your sense of where are we collectively on this journey? Because it does seem like the use cases are changing.
There's a lot more containers than people ever imagined. There's even people talking about monster containers and there's a need for tiny containers that run out of the edge. What's going on?
Oh, we've been watching this for five, six years now, right? So we started off in late 2017, early 2018, launching the company in and around this container space. Uh, particularly focused in areas where there was a lot of simulation being done in bioinformatics, in areas such as that, uh, chip design, manufacturing containerization was taking off.
We continue to see that growth, um, year over year. The market, I think, started probably in 2016, around 200 million. We're seeing maybe a 25%, uh, compound annual growth year over year, maybe out to 2032.
Uh, so all metrics that we use in order to understand what's happening in the market are showing that rapid growth. Uh, we expect to continue to see that happening. Uh, areas such as AI as of lately within the last several years are driving that significant amount.
And how we would look at things previously focused largely in a high performance computing area. And there had been, uh, traditional market segment segmentations there. So there's HPC where we focused, and then there was infrastructure management where Kubernetes Docker had had been running.
Those two worlds have collapsed two separate markets previously. We're seeing them as as one market now. And that one market is driving the, the rapid growth, um, a across the board.
So again, we expect to see that 25% growth. It's impacting the way we do business. Um, our business is growing as a result of that, and we look to what's happening as guidance for what the next things are that we, we develop our customers, our partners, uh, the open source community influences, uh, and inspires what we do.
And these kinds of things are telling us, uh, where we need to be, what we need to pay attention to. Um, kind of reading the tea leaves here, if you will, To that end, I know you guys got started in the HPC space, but a lot of folks would say this AI use case is really just a form of HPC, and, but it needs different types of containers who were built for that kinda level of robust data. So what's your take?
We're seeing the change in the, the container type and the size of the containers going from, as you mentioned, uh, small and efficient to very large, which can includes LLMs large language models and, and data sets. So we're dealing with things that we necessarily didn't see previously, and we're trying to adjust, uh, the way we approach our customers with the technology to help them in that sense. So the container is, is changing the use cases largely driven by ai, but as you said, this is really about a high performance computing types of environments anyway, where you might be using dense clusters of computers in order to deal with the amount of data you're trying to analyze and or process.
Certainly machine learning and AI has, has a lot to do with that. So the use case adapted into these environments really easily, in the sense maybe some technology change. So minor technology changes, but for the most part, AI is driving that adoption and it fits quite nicely within the market that we've been so far.
The challenge has been there's all tool, all these different tool sets that are out there, and customers come to us and say, Hey, how do we simplify what we're doing today? Instead of having a variety of tools to use, can we simplify for our users and for our administrative teams in order to use this technology and kind of take away the complex on-ramp and make it easier for someone who's not super technically savvy to have access to the types of computing that they want to do. For example, in research, in an academia, uh, being able to provide access to systems and technologies for those who are not system administrators, they're really scientists more than anything else.
They want to access the systems. They're not experts in it. How do we remove the complexity of the on-ramp for them to easily do the work that they do and solve some of humanities largest problems?
We also hear a lot more about performance issues. And do you think more developers are kind of encountering this as we deploy cloud native applications, they start to get deployed in production environments, they start to scale and people suddenly have an uhoh moment. Uh, performance portability is this area, uh, as we, and, and it, it influences not just the end users, those researcher scientists, it influences those who architect build and design the environments for that computing infrastructure.
So we see the complexity in in IT influencing, uh, those areas. Uh, the container types itself, the types of technologies that, that are being used have an impact across the board. Uh, the way AI is implemented today, uh, we're in large environments where tons of data is coming out of just the system itself.
Um, we need to use DevOps needs to use AI in order to help go through the mountains of data that are being created. So it, it's been interesting for us to see what's, what's causing the changes in the environment and how we respond to those changes. When you kind of put this all together, do you think that people are appreciating the fact that, you know, it used to be containers was synonymous with the word docker, but it seems like we have multiple containers now and people are getting used to this idea that there are different container types optimized for different use cases.
Are we there yet? Uh, we, we have been, um, Docker did a a great job technologically speaking, 20 15, 20 16, in helping to relaunch the concept of containerization. It was a nice way for our influences where the researchers and scientists were packaging their applications, their scripts, and maybe even small data sets in, in, uh, in their, in their container in order to not just, you know, develop it and run it on a laptop, but to deploy it wherever they see fit.
So it is been an interesting case for us because it's about build anywhere, deploy anywhere. And how do you, going back to your question about performance portability, bring that in line with that complexity. How do you ensure that whatever is being built is running well and as expected, uh, for both those who build the systems and for those who use the systems?
Um, so we see it as a, a, a complex challenge. Uh, we believe that being able to minimize the amount of tool sets in these environments reduces the complexibility for both the designers, builders and architects and, and the users. We, we look at it across the board, how do we make the technology easier for all in in these cases?
How easy is it to move from one container type to another? And I asked the question because in my experience, developers will build something on their laptop and, you know, eventually it makes it into production. And that's when we run into all these different issues.
So, can I see a world where developers may continue to build with whatever containers, docker or whatever it may be on their notebook or whatever they have, but it's the IT operations team that's gonna look at this and say, yeah, we need something slightly different here, and then make the transition That that's where we, we stepped into the picture with what we were doing. Docker, we, we will reference it as docker, right? For open container initiative and the types of work that had been done there, there has been a large investment done in that space, right?
Both, uh, technologically speaking and in, in training of people. There are large portfolios of existing docker containers that are leveraged to build applications, whether it's AI simulation, wherever it may be in high performance computing or quantum computing. There's a large library that a lot of people leverage.
And having the ability to take those docker based containers and convert them into another format that you use, whether it's a, a singularity sip image, uh, that we work with quite often, or another format or new formats that are coming around, right? Having a source to be able to take from and be able to build new containers to deploy in whatever environments you need to is absolutely necessary. It's part of the ecosystem you have to depend on, on it.
And that's why interoperability is so important. So being able to take a, a CI based container, rebuild it, uh, as a source, but tune it into the performance requirements of, of a new chip set that's come out, uh, some AI specific chip set or AI specific technology. Use that base image, build it into a new image, run it wherever you need.
And that's where we see the interoperability part playing a large role. We've been able to do it by taking, uh, OCI based container containers and converting 'em into sif. We also leverage OCI based infrastructure in order to make sure containers can run out in that environment.
So as we go along, is there, or is there, or has, uh, anything emerged that feels like, you know, a set of best DevOps practices for managing containers specifically in production environments? Is that something we need or do we already have that just people don't know it exists. It, it is certainly being built now.
A AIOps is a very important aspect of building this infrastructure and managing the infrastructure, building it so that when someone wants to run a container, they know exactly how to build it that will perform and operate as expected in a certain environment. AIOps is, to me, a significant part. The next step of DevOps, as we've talked about, the mountains of data that starts coming out of these systems from an observability perspective, how do I monitor and maintain my systems?
That's through the observability aspects. Lots of data is being created. How do you go through that data sets, uh, when it's almost humanly impossible to go through them?
The AI ops aspect provides the tooling and the technology in order to be able to manage, heal, and ensure that consumers, customers that come in to use that platform are getting what they expect. It's absolute significant part. And these are the kinds of questions that we're asked quite often.
How do you take, uh, uh, an application, build it into a container that is performant on a specific system, but at the same time, they also want to build containers that may run anywhere. How do you deal with these complexities? Uh, what container formats work well in these environments?
What kinds of tagging management do we have to implement that'll help manage the flows of these containers? So it's an exciting area for us. 'cause it is that piece that influences how we develop our technology and where we go reducing complexity, making it more simple and driving portability.
Um, it's an issue that has existed for a long time. More so now as that AI specific technologies and chip sets are coming out, Do you see platform engineering teams kind of stepping into the middle of this to provide the quote unquote adult supervision that might be required to kind of make all this work? Per perfect segue, I platform engineering.
I, I think is that combination of DevOps and product management that come together and, and allow the work that's being done to have the end user in mind. Because it's not just about, uh, DevOps being able to build the systems and build it well, it's about how it's being presented to and used by those who are doing the scientific endeavors. So DevOps is significant in this sense.
AIOps will help influence it and, uh, this is an area that we, we get excited about because it, it tells us that the technology is continuing to grow, adoption is continuing to grow, and some of the things that we've done at least are, uh, in line with the needs of the consumers. What are you see is that one thing that organizations are doing as they embrace containers that maybe is suboptimal that thing that kind of makes you just shake your head and go, folks, we're better than this Container organization is a nice tool set. Uh, you can't necessarily stuff as much into a container that you want.
Portability, uh, networking, transferring, uh, that data is still a problem. Uh, so having containers that are over 200 gig in size, for example, or 150 gig in size, uh, becomes quite challenging to, uh, get from one place to another. Um, uh, we're certainly improving the speeds of networks, but not everybody has access to the absolute highest speed network.
So transferring large data sets has been a problem. No doubt. All right, folks, you heard it here.
The good news is containers are everywhere. Bad news containers are everywhere, and they're just getting bigger and more challenging to deal with. Hey Keith, thanks for being on the show, Mike.
Appreciate the time. Thank you. All right, back to you guys in the studio.