 From around the globe, it's theCUBE with coverage of KubeCon and CloudNativeCon Europe 2020 virtual brought to you by Red Hat, the CloudNative Computing Foundation and ecosystem partners. Hi, I'm Stu Miniman and welcome back to theCUBE's coverage of KubeCon, CloudNativeCon Europe for 2020. Get to talk to the participants in this great community and ecosystem where they are around the globe. And when you think back to the early days of containers, it was containers that they're lightweight, they're small. Going to obliterate virtualization is often the headline that we had. Of course, we know everything in IT tends to be additive. And here we are in 2020 and containers and virtual machines living side by side. And often we'll see the back and forth that happens when we talk about virtualization in containers. To talk about that topic specifically, happy to welcome to the program. First time guest, Steve Gordon. He's the director of product management at Red Hat. Steve, thanks so much for joining us. Thanks for having me, Stu, it's great to be on. All right, as I teed up, of course, virtualization was a wave that swept through the data center. It is a major piece, not only of what's in the data center, but even if you look at the public clouds, often it was virtualization underneath there. Certain companies like Google, of course, really drove a container adoption. And often you hear when people talk about, I built something cloud native, that underlying piece of being containerized and then using an orchestration layer like Kubernetes is what they talk about. So maybe start for a sec. Red Hat, of course, heavily involved in virtualization and containers, how you see that landscape and what's the general conversation you have with customers as to how they make the choice and how the lines blur between those worlds. Yeah, so at Red Hat, I think we've been working on certainly the current iteration of Linux virtualization with KBM for around 12 years and myself a large portion of that. I think one thing that's always been constant is while from the outside in virtualization looks like it's been a fairly stable marketplace, it's always changing, it's always evolving. And what we're seeing right now is as people are adopting containers and even constructs built on top of containers into their workflows, there is more interest and more desire around how can I combine these things, recognizing that still an enormous percentage of my workloads are out there running in virtual machines today, but I'm building new things around them that need to be able to interact with them and kind of springboard off of that. So I think of the last couple of years, I'm sure you yourself have seen a number of different projects pop up in the open source community around this kind of intersection of containers and virtualization and how can these technologies complement each other? And certainly Qvert is one of the projects that we've started in this space in reaction to both that general interest but also the real customer problems that people have as they try and meld these two worlds. Right, so Steve at Red Hat Summit earlier this year, there was a lot of talk around container native virtualization. If you could just explain what that means, how that might be different from just virtualization in general and we'll go from there. Sure, so back in I think early 2017, late 2016, we started kind of playing around with this idea. We'd already seen the momentum around Kubernetes and a result kind of the way we architected OpenShift 3 at the time around how Kubernetes has this strength as an orchestration platform but also a shared provider of storage, networking, et cetera, resources. And really thinking about when we look at virtualization and containers, some of these problems are very common regardless of what footprint the workload happens to fit into. So leveraging that strength of Kubernetes as an orchestration platform, we started looking at what would it look like to orchestrate virtual machines on that same platform right next to our application containers and kind of the extension of that, the Qvert project and what has ultimately become OpenShift Virtualization is based around that core idea of how can I make a traditional virtual machine so a full operating system interact with and look exactly like a Kubernetes native construct that I can use from the same platform. I can manage it using the same constructs. I can interact with it using the same console, all of these kind of ideas. And then on top of that, not just bring in workloads kind of as they lie but enable really powerful workflows for people who are building a new application in containers that still needs some back-end components, say a database that's sitting in a VM or also trying to integrate those virtual machines into new constructs, whether it's something like a pipeline or a service mesh, we're hearing a lot of questions around those things these days where people don't want to just apply those things to brand new workloads, but figure out how do they apply those constructs to the broader majority of their fleet of workloads that exist today. All right, so I believe back at Red Hat Summit, OpenShift virtualization was in beta. Where's the product and solution set today? Right, so at this year's KubeCon, we're happy to announce that OpenShift virtualization is moving to general availability. So it will be a fully supported part of OpenShift. And what that means is, you as a subscriber to OpenShift, the platform get virtualization is just an additional capability of that platform that you can enable as an operator from the operator hub, which is really a powerful thing for admins to be able to do that. But also it's just really powerful in terms of the user experience, like once that operator is enabled on your cluster, the little tab shows up that shows that you can now go and create a virtual machine, but you also still get all of the metrics and the shared networking and so on that goes with that cluster that underlies it all. And you can again do some really powerful things in terms of combining those constructs for both virtual machines and containers. Yeah, when you talk about that line between virtualization and containers, a big question is what does this mean for developers? How is it different from what they were using before? How do they engage and interact with their infrastructure today? Sure, so I think the way a lot of this current wave of technology got started for people was whether it was with Kubernetes or Docker before that, people would go and grab, the easiest way they could grab computer capacity was go to their virtual machine farm, whether that was their local virtualization estate at their company, or whether that was taking a credit card to public cloud, getting a virtual machine and spinning up a container platform on top of that. What we're now seeing is as that's transitioning into people building their workloads almost entirely around these container constructs, in some case, when they're starting from scratch, there is more interest in how do I leverage that platform directly? How do I, as my application group, have more control over that platform? And in some cases, depending on the use case, like if they have demand for GPUs, for example, or other high-performance devices, that question of whether the virtualization layer between my physical host and my container is adding that much value, but then still wanting to bring in the traditional workloads they have as well. So I think we've seen this gradual transition where there is a growing interest in reevaluating how do we start with container-based architectures to kind of, okay, how was we transitioned towards more production scenarios and the growth in production scenarios? Like what tweaks do we make to that architecture? Does it still make sense to run all of that on top of virtual machines, or does it make more sense to almost flip that equation as my workload mix gradually starts changing? Yeah, two thoughts come to mind on that. Number one is, you know, are there specific applications out there or I think about traditionally VMs, often that's Windows environment that we have there. Is that some of the use case to bring them over to containers? And then also, once I've gotten it into the container environment, what are the steps to move forward? Because I have to expect that there's going to be some refactoring, some modernization to take advantage of the innovation and pace of change, not just to take it, containerize it and leave it. Yeah, so certainly there is an enormous amount of potential out there in terms of Windows workloads. And people are definitely trying to work out how do they leverage those workloads in the context of OpenShift and a Kubernetes-based environment. And Windows containers obviously is one way to address that and certainly that is very powerful in and of itself for bringing those workloads to OpenShift and Kubernetes, but does have some constraints in terms of needing to be on a relatively recent version of Windows Server and so on for those workloads to run in that construct. So where OpenShift virtualization helps with that is we can actually take an existing virtual machine workload, bring that across, even if it's say, Windows Server 2012, run it on top of the OpenShift virtualization platform as a VM and then if or when you start modernizing more of that application, you can start teasing that out into actual containers. And that's actually something, it was one of our very early demos at Red Hat Summit 2018, I think was kind of how you would go about doing that. And primarily we did that because it is a very powerful thing for customers to see how they can bring those old applications into this mix. And the other aspect of that I'll mention is one of our financial services customers who we've been working with, basically since that demo, they saw it from all the way at Red Hat Summit and came and said, hey, we wanna talk to you guys about that. One of their primary workloads is a Windows 10 style environment that they happen to be bringing in as well. And that's more in that construct of treating OpenShift almost as a pool of compute, which you can use for many different workload types with the Windows 10 being just one aspect of that. And the other thing I'll say in terms of, the second part of the question, what do I need to do in terms of refactoring? So we are very conscious of the fact that, if this to provide value, you have to be able to bring in existing virtual machines with as minimal change as possible. So we do have a migration solution set that we've had for a number of years for bringing virtual machines to Linux virtualization stacks. We're expanding that to include OpenShift virtualization as a target to help you bring in those existing virtual machine images. Where things do change a little bit is in terms of the operational approaches. Obviously admin console now is OpenShift for those virtual machines that does right now present a change. But we think it is a very powerful opportunity in terms of as people get more and more production workloads into containers, for example, it's gonna become a lot more appealing to have a backup solution, for example, that can cater to both the virtual machine workloads as well as any stateful container workloads you may have, which do exist in increasing numbers. Well, I'm glad you brought up a stateful discussion because as an industry, we've spent a long time making sure that virtual machines have storage and have networking that is reliable and perform it and the like. What should customers be thinking about and operators when they move the containers? Are there things that are different that you manage bringing into? This brings them into the OpenShift management plane. So what else should I be thinking about? What do I need to do differently when I've embraced this? Yeah, so I think in terms of the things that virtual machine expects, the two big ones that come to mind to me networking and storage. The compute piece is still there obviously, but I think it's a little less complicated to solve just because the OpenShift and broader Kubernetes community have done such a great job of addressing that piece and that's really what attracted us to it in the first place. But on the networking side, certainly the expectations of a traditional virtual machine are a little bit different to the networking model of Kubernetes by default. But again, we've seen a lot of growth in container-based applications, particularly in the context of cloud-native network functions that have been pushing the boundaries of Kubernetes networking as well. That's resulted in projects like Maltis, which allow us to give a virtual machine the layer 2 networking interface that it expects, but also give it the option of using the pod networking natively for some of those more powerful constructs that are native to Kubernetes. So that's one of those areas where you've kind of got a mix of options depending on how far you want to go from a modernization perspective versus do I just want to bring this workload in and run it kind of as it is and my modernization is more built around it in terms of other container-based things. Then similarly in storage, it's an area where obviously at Red Hat we've been working closely with the OpenShift Container Storage team, but we also work with a number of ecosystem partners on not just how do we certify their storage plugins and make sure they work well both for containers and virtual machines, but also how do we push forward upstream efforts around things like the container storage interface specification to allow for these more powerful capabilities like snapshots cloning and so on, which we need for virtual machines but are also very valuable for container-based workloads as well. Steve, you've mentioned some of the reasons why customers were moving towards this environment. Now that you're GA, what learnings did you have during beta? Are there any other customer stories you could share that you've learned along this journey? Yeah, so I think one of the things I'll say is that there's no feedback like direct product in the hands of customer feedback and it's really been interesting to see the different ways that people have applied it, not necessarily having set out to apply it but having gotten partway through their journey and realized, hey, I need this capability. You have something there that looks pretty handy and then having success with it. So in particular, in the telecommunications vertical, we've been working closely with a number of providers around their 5G rollouts and their 5G core in particular, where they've been focused on cloud-native network functions and really what I mean by that is the wave of technology and the push they're making around 5G is to take what they started with network function virtualization a step further and build that next generation network around cloud-native technologies including Kubernetes and OpenShift. And as they've been doing that, they have been finding that some of their vendors are more or less prepared for that transition and that's where, while they've been able to leverage the power of containers for those applications that are ready, they're also able to leverage OpenShift virtualization as a transitionary step as they modernize the pieces that are taking a little bit longer and that's where we've been able to run some applications in terms of a load balancer, in terms of a carrier grade database on top of OpenShift virtualization, which we probably wouldn't have set out to do this early in terms of our plan but we were really able to react quickly to that customer demand and help them get that across the line. And I think that's a really powerful example where the end state may not necessarily be to run everything as a virtual machine forever but they're still able to leverage the technology as a powerful tool in the context of a broader modernization effort. All right, well, Steve, thank you so much for giving us the updates. Congratulations on going GA for this solution. Definitely look forward to hearing more from the customers as they come. All right, thanks so much, Steve, appreciate it. All right, stay tuned for more coverage of KubeCon, CloudNativeCon, EU 2020, the virtual edition. I'm Stu Miniman and thank you for watching theCUBE.