The traditional IT approach to application development focused heavily on the underlying computing stack. Networked resources, capacity planning, patching, and other considerations dictated coding procedures required by an “infrastructure-up” development environment. Intel IT first adopted enterprise-level private cloud solutions in 2010. The investment paid off quickly, resulting in cloud service upgrades for approximately 350 applications.
A paradigm shift is now taking shape. Cloud-based resources and services have transformed that traditional programming model to one which takes an “application down” approach. Developers no longer bog down evaluating hands-on networking and storage options for their coding projects.
With hybrid cloud solutions, Intel developers can focus on developing, rather than the underlying infrastructure.
Beyond hard cost savings, Intel IT anticipates additional ROI from cloud-capable apps. First, for applications leveraging cloud-based containers, the workload can seamlessly transition to another data center in the event of a system failure, minimizing potential business disruption. With cloud-hosted apps, users may have no awareness an outage even occurred. Secondly, developers have the freedom to create infrastructure-independent code optimizing workload placements.
Additionally, leveraging multiple clouds – public and private – helps Intel deliver a more globally-consistent user experience using cloud-native applications. The cloud-based stack also facilitates faster app development and simplified portability of resulting applications.
Under the magnifying glass
Chris Sellers, Director of Intel IT’s software defined infrastructure group, notes that most applications in use at Intel center around five main organizational “pillars”: engineering, office and enterprise, manufacturing, labs, and externally facing apps connecting Intel with partners and customers.
Each application at Intel is scrutinized to determine the “right” hosting mechanism offering the highest efficiency and usability. Most modernized applications can take advantage of cloud-based service benefits, simplifying the coding process, and providing increased design flexibility for developers.
For Intel IT, an in-house infrastructure model remains ideal for a handful of legacy applications. Sellers elaborates. “For our workloads requiring high utilization and data bandwidth, public cloud is not an ideal solution. For instance, our high-performance computing (HPC) silicon design workloads on our enterprise private cloud prove optimal.”
For a corporation the size of Intel, hundreds of applications are tapped each day to serve business needs. Turning an enormous ship toward a new app hosting and service approach requires significant planning upfront.
Sellers sums up the endeavor’s scale. “We have developed a process for application rationalization – also referred to as application portfolio management – that examines each application from a business need perspective as well as from a workload placement perspective.” If an app can be independent from physical infrastructure, multiple, geographically diverse public clouds can host it.
The initial step for Sellers’ team involved an “application profiling” tool developed in-house. The profiling process combed through over 2,000 applications currently in use across the organization, evaluating each against two straightforward criteria. First, is the app still providing business value to the company?
Secondly, is it making the best use of the resources assigned to it, or can efficiency be improved? Those applications not reaching the first bar – necessitating preservation or modernization – are flagged for phase-out and inevitable end-of- life. Those apps which remain mission-critical move up to the next branch on the decision tree for further scrutiny.
Each application must then be evaluated to determine if no-compromise criteria like security, performance, or governance influence hosting parameters. To accomplish this, Principal Engineers within IT must take a close look at every application from a platform perspective to determine its ideal residence, be that on-premises, or within a cloud-based solution.
Those apps which cannot host in a cloud environment stay where they are. Applications that can benefit from a cloud-makeover are re- assessed. Depending on the application, Infrastructure-as-a-Service (IaaS), Software-as- a-Service (Saas), Container-as- a-Service (CaaS), or Platform-as- a-Service (PaaS) may present a beneficial re-architecting opportunity for the software.Sellers elaborates, “For those apps already hosted in the ‘right place,’ maintenance is our only focus. However, for apps in the ‘wrong place,’ we form a plan to move it.
Physical server infrastructure requires hardware investment, ongoing maintenance, and system redundancies for potential failover. If a cloud service-based solution can eliminate those expenses and improve end-user experience, we want to re-architect the application for long-term corporate benefit.”
For developers who have spent decades designing applications for in-house networking scenarios, a paradigm shift to programming models utilizing Anything-as-a-Service (XaaS) is a big step. Sellers describes the nature of the challenge.
“We needed to change how we created applications completely. Many of our developers did not have exposure to the nuances of modern cloud-native application creation, so we first focused on getting our team the training needed to turn the corner. Everyone embraces the new approach once they understand the benefits of cloud-native applications.”
Developer training emphasized many topics, starting with development languages for cloud-native apps, plus related tools and methodologies. The learning process also included emphasis on public, private and hybrid cloud security for app compliance scenarios. Big data considerations also weigh into the equation, since many apps today require proficiency with advanced analytics and in-memory databases.
Supplementing the training programs, Intel also took the step of deploying a private cloud Database-as-a-Service (DBaaS), empowering developers to create the most capable applications, implement development standards across the organization, offer failover redundancy, and enable disaster recovery, automatically. Currently, the DBaaS system supports 900 applications, inevitably with more to come.
Cloud transition planning
Intel IT has completed the first step in a three-year app optimization plan. Now complete, phase one involved the aforementioned application evaluation across the company to determine ideal workload hosting. The second phase surrounds re-platforming and re-purposing apps, delivering cloud-native and mobilized applications optimized and ready for immediate business value.
The third step, requiring approximately a year, begins soon. In the coming months, Intel IT will determine the appropriate hosting provider for each application’s workload, be it on premises, or via a cloud-based service.
Sellers sees his team’s effort as ongoing. The current process of app evaluation and re-architecture is not a one-stop destination; it is part of the app lifecycle journey. A given app may reside in the ideal hosting environment now, but because new cloud service options might benefit it in the future, the evaluation and re-architecting process must occur on a regular cycle.
Given all the significant technology shifts influencing the app development process and associated hosting environments, Sellers sees even more changes on the long-term horizon as hybrid cloud solutions continue their maturation path.
“The next step will be moving up another layer where we break a larger application down into functions. We can start consuming those functions, whether they are exposed in a public or private cloud, and put them together based on needs from an application.This anticipated shift represents the next step in maturity from an industry standpoint, and which we are looking at from an Intel perspective.”