Paradigm Shift: Leveraging Private Cloud to Encourage Scale and Resiliency at the App Layer Sridhar Basam, Rick Melick, Andrew Mitry Walmart Cloud Computing Platform United States of America 1 Scaling Out - Horizontal • Adding additional units and have them act in concert • Splitting workloads across Units • Offers promise of linear, infinite scale • Start with the easy parts of an app, then work on the hard (web/app vs DB tiers) • Scalable, Commodity Block and Object Storage 2 Elasticity • Build more reliable and resilient products • Dynamically scale to meet high demand • Offers promise of linear, infinite scale • Self healing applications over reliable infrastructure • Plan for failure! 3 Case Study: Project: Comcast X1 Apps developed a new app for the Winter Olympics: • Scaling as demand increases. 2X growth by year end. Performance (time to market): • Went from conception to production in under a month! • (We've provisioned capacity for 1M more X1 STBs!) Innovation: • X1 built an internal tool leveraging jClouds to orchestrate OpenStack and was then extended to bring elasticity to VMware too. Costs: • Time means money! 4 Migrating to Cloud-Native • Walmart.com in United States nearly 100% cloud-native. • Site re-written while ramping up cloud capabilities. • Not typical across the enterprise, and the roadmap is non-trivial. • Transformation is an iterative process. As in nature, migration is a journey. • Options?... Example…? 5 The ACME Club • ACME Club is fictional, but story based on real life. • 5+ year old, ATG eCommerce, site for members; bare metal, Solaris SPARC. • Migrate, 35, traditional, n-tier, monolithic, enterprise applications to x86 (RHEL). Put site on private cloud. Start aligning to Cloud-Native. • Business goals: – 25% increase in operational efficiency (hours vs. weeks) – 50% increase in site performance (page response; checkout) – 75% decrease in hardware and data center costs 6 Constraints • The engineering architects had a couple of constraints when migrating: 7 1. All VMs were ephemeral in the company’s Private Cloud. 2. “Block Storage,” was a cloud capability ACME Club chose not to invest in at this time. Approach • Fully leverage OpenStack, along with OneOps, to transition and start transforming to Cloud-Native. (Will discuss OneOps in a moment.) • Create a new VLAN in each data center for the ACME eCommerce site. • Put every application behind a VIP like a service. No host-to-host communications! • Deploy all applications across two cloud regions in two data centers. – Minimum 8 VMs per application. Best Practice: Slightly over-provision non-native cloud applications in you Private Cloud to force the problem of infrastructure stability up higher into the application stack. 8 Challenges • Apps requiring a single instance were not put onto the cloud. (2 of 30) – With Block Storage, one additional application could have migrated. Active/Passive configuration. Leverage dedicated Hypervisors using host aggregates in OpenStack. • eStore application used, “Sticky Sessions,” on the local VM. – Compromise: Iff VM dies customer has to re-login. The business accepted this risk for the short-term. Best Practice: Developers must move session management outside of the local VMs - which are ephemeral. – Options: Cassandra, Couchbase, etc. 9 Crawl before walk: Incremental Wins for ACME Club • Solaris to Linux; Physical to Virtual; self-service Agile Infrastructure; cloud platform with application and service abstraction Fewer assumptions made about environments. Thinking more elastic / ephemeral. Horizontally scalable now vs. not before. 400% site availability improvement. Decompose site into services which can be deployed and scaled independently, while building new business capabilities as micro-services. Design patterns to decouple the new from the old; creating API contracts that make the legacy look like other micro-services. Create a system around the edges; growing slowly, until the old can be retired. Leverage existing services developed elsewhere in company’s private cloud for business capabilities required by ACME eCommerce going forward. DevOps culture; cross-functional, business capability teams that own the entire development-to-operations lifecycle of their applications. • • • • • • 10 OneOps 11 Overview • OneOps delivers continuous, cloud-based, application lifecycles and empowers the enterprise to take on new projects and drive growth. – OneOps is collaborative and visual. – OneOps is model-driven. – OneOps is a library of best-practices. – OneOps is cloud platform abstraction. • OneOps is Self-Service Agile Infrastructure: A platform for rapid, repeatable, and consistent provisioning of app environments and backing services. • OneOps enables continuous lifecycle management of complex, businesscritical application workloads on any cloud-based infrastructure. 12 Lifecycle • Define application workloads based on architectural and application requirements. • Provision environments by mapping the design output against operational requirements. • Monitor and control environments to maintain the required operational levels. 13 Workloads • OneOps provides design catalogs for applications. Create custom designs and then save them in a private catalog. Share those designs to drive architectural consistency within the enterprise. Share them with the open source community. OneOps provides operational best practices for many popular development platforms, relational SQL databases, distributed NoSQL databases, messaging systems, and many others. Create custom packs. Streamline operational policies across the enterprise and share with the open source community. OneOps provides a library of components. The components encapsulate lifecycle management for many infrastructure resources (ex. servers, storage), software artifacts (ex. OS packages, SCM repositories) and many others. In addition, create and package custom components. Integrate with many cloud services, and share custom components with the open source community. • • 14 Portability • Out of the box, OneOps supports many cloud platforms and providers – public, private and local (single server). Examples: – OpenStack™ cloud provider(s), of course! – Microsoft® Azure™ – Amazon® AWS™ – ?... (let’s see where the community takes it) 15 Release Date HOLIDAY 2015 OneOps.com 16 About Walmart • Divisions – – – – – – – – – – 17 Walmart U.S. Walmart International Walmart Canada Walmart Mexico Walmart Chile Walmart Supercenter Walmart Discount Stores Walmart Express Walmart Neighborhood Market Supermercado de Walmart • Subsidiaries – – – – – – – – – – – – – ASDA Sam's Club Vudu Seiyu Group (Japan) Yihaodian Walmart de México y Centroamérica @WalmartLabs Walmart eCommerce Walmart Neighborhood Market Amigo Supermarkets Massmart Bompreço Líder Vital Statistics Number of retail locations Area served Products Revenue Number of employees 18 11,505 (October 7, 2015) Worldwide Apparel and footwear electronics,specialty, cash & carry,warehouse club, discount store,hypermarket, supercenter, superstore,supermarket, eCommerce US $485.651 Billion (2014) 2.2 million worldwide (2015) Make Walmart Your Walmart Looking to explore your options? • Walmart will be the first to deliver a seamless shopping experience at scale for 260 million customers around the world. • We are uniquely able to combine physical, online and mobile in a seamless way that helps our customers save time while taking advantage of our everyday low prices. • Private Cloud is integral to empowering all of that, and we're looking for technologists just like you. We are hiring! 19 Thank you! • Sridhar Basam Sridhar.Basam@walmart.com • Rick Melick RMelick@walmart.com • Andrew Mitry Andrew.Mitry@walmart.com / @amitry Link to free book recommended in the session: • http://pivotal.io/platform/migrating-to-cloud-native-applicationarchitectures-ebook 20