By Das Kamhout, Principal Engineer
Director of Solutions Engineering, Software Defined Infrastructure Group
Intel, Cloud Platforms Group
When it comes to the cloud, there is no single answer to the question of how to ensure the optimal performance, scalability, and portability of workloads. There are, in fact, many answers, and they are all tied to the interrelated layers of the software-defined infrastructure (SDI) stack. The recently announced Intel Cloud for All Initiative is focused directly at working with cloud software vendors and the community to deliver fully optimized SDI stacks that can serve a wide array of apps and data. To better understand the underlying strategy driving the Cloud for All Initiative, it’s important to see the relationships between each layer of the SDI stack.
In this post, we will walk through the layers of the SDI stack, as shown here.
The foundation: The foundation of Software Defined Infrastructure is the creation of infrastructure resource pools establishing compute, storage and network services. These resource pools utilize the performance and platform capabilities of Intel architecture, to enable applications to understand and then control what they utilize. Our work with the infrastructure ecosystem is focused on ensuring that the infrastructure powering the resource pools is always optimized for a wide array of SDI stacks.
The OS layer: At the operating system level, the stack includes commonly used operating systems and software libraries that allow applications to achieve optimum performance while enabling portability from one environment to another. Intel has a long history of engineering with both OS vendors and the community, and has extended this work to extend to light weight OS that provide greater efficiency for cloud native workloads.
The Virtualization layer: Moving up the stack, we have the virtualization layer, which is essential to software-defined infrastructure. Without virtualization, SDI would not be possible. But in this context, virtualization can include more than just typical hypervisors. In order to establish resources pools the infrastructure components of compute, storage, and network are virtualized through various means. The most optimum resource pools are those that can continue to scale out to meet the growing needs of their consumers. Last but not least, the performance isolation provided by containers can be considered OS virtualization which has enabled a whole new set of design patterns for developers to use. For both containers and hypervisors, Intel is working with software providers to fully utilize the capabilities of Intel® Virtualization Technology (Intel® VT) to drastically reduce performance overhead and increase security isolation. For both storage and network, we have additional libraries and instruction sets that help deliver the best performance possible for this wide array of infrastructure services.
The Orchestration layer: There are numerous orchestration layers and schedulers available, however for this discussion we will focus on those being built in the open; OpenStack, Apache Mesos, and Kubernetes. This layer provides central oversight of the status of the infrastructure, what is allocated and what is consumed, how applications or tenants are deployed, and how to best meet the goals of most DC infrastructure teams…. Increase utilization while maintaining performance. Intel’s engagement within the orchestration layer focuses on working with the industry to both harden this layer as well as bring in advanced algorithms that can help all DC’s become more efficient. Some examples are our work in the OpenStack community to improve the availability of the cloud services themselves, and to provide rolling upgrades so that the cloud and tenants are always on. In Mesos, we are working to help users of this technology use all available computing slack so they can improve their TCO.
The Developer environment: The entire SDI infrastructure is really built to power the developers code and data which all of us as consumers use every day of our life. Intel has a long history of helping improve debugging tools, making it easier for developers to move to new design patterns like multi-threaded, and now distributed systems, and helping developers get the most performance out of their code. We will continue to increase our focus here to make sure that developers can focus on making the best SW, and let the tools help them build always on highly performant apps and services.
I’m looking forward to sharing more about Intel’s plans to work with the industry on optimization of SDI stacks at OpenStack Silicon Valley. This event offers a unique experience for end users to come together with the OpenStack community to discuss readiness of the OpenStack platform for broad deployment and prioritization of new code development to best deliver the full value of cloud to the data center.
Photo by The Preiser Project.