Ibm cloud open architecture


Published on

L'architecture Cloud IBM

Published in: Technology, Business

Ibm cloud open architecture

  1. 1. © Copyright IBM Corporation 2013 TrademarksIBMs open cloud architecture Page 1 of 12IBMs open cloud architectureAngel Diaz ( President, Software Standards and CloudLabsIBMSkill Level: IntermediateDate: 27 Apr 2013(Updated 29 Apr 2013)By changing how business and society run, cloud computing is opening up hugeavenues of innovation. Developers are now combining systems of record withsystems of engagement, and a new style of cloud-based application is emerging:systems of interaction. For these applications to be sustainable, cloud computingneeds to be built on open source and open standards. This article lays thegroundwork.IntroductionCloud computing is changing the way we think about technology, and it’s no passingfad. Consumers are using the cloud to store music. Startups are turning to cloud toget up and running without huge investments. Big businesses and governments arerelying on clouds to make more data more accessible. Cloud computing is changinghow business and society run, and its opening up huge avenues of innovation. Weare looking at how developers are now combining systems of record with systems ofengagement, and we see a new style of cloud-based application emerging. Theseare systems of interaction.For these applications to be sustainable, cloud computing needs to be built on opensource and standards. Wide adoption of open source software and open standardsshould be everyones goal. It means customers won’t have to fear vendor lock-in, andorganizations can participate in a growing market that welcomes a wide variety ofcloud technology and service providers.Weve learned through our experience that open source and standards allowdevelopers to share information more quickly and easily, and at lower costs. Thisleads to greater innovation. We are at an inflection point. Were focusing theindustry on important standards for interoperability, and their open source referenceimplementations will:• Ensure that end users have a strong voice in establishing and adopting cloudcomputing paradigms
  2. 2. developerWorks® open cloud architecture Page 2 of 12• Reduce barriers of entry into cloud computing, such as development skills andfreedom of choice• Increase the long-term viability of today’s cloud investments• Prevent unnecessary architectural complexity and fragmentationIBMs open cloud architectureAt IBM Pulse, in March 2013, IBM announced its open cloud architecture and ourplans to base all of our cloud offerings on OpenStack, starting with IBM Smart CloudOrchestrator. This announcement was the culmination of over a years worth ofinvestment in product integration with OpenStack, as well as significant contributionsto the OpenStack community to help improve the ability of OpenStack to meetenterprise and cloud service provider requirements. Looking at adoption results, wesee that our efforts, as well as those of the vibrant OpenStack community as a whole,have been successful.Evolution of OpenStackTo get a sense of just how far OpenStack has come, and how it is beingleveraged in the enterprise, visit the OpenStack Slideshare and YouTubechannels.Today, with over 189 organizations and over 9,100 individuals participating,OpenStack is the largest active open source, cloud project community in the world.This massive global collaboration of developers and cloud computing technologists isworking to produce a ubiquitous Infrastructure as a Service (IaaS) open source cloudcomputing platform for public and private clouds.IBM is proud to be a highly active member of the OpenStack community and proud ofthe many community achievements reflected in the latest release, Grizzly. OpenStackis well poised to deliver massive portability and interoperability for IaaS applications.Moving up the stackWe haven’t been exclusively focused on OpenStack, however. Our open cloudarchitecture extends all the way up the stack, from IaaS, through PaaS and SaaS.In addition to all of our efforts relating to OpenStack, IBM has been hard at workexploring a wide variety of technologies relating to our open cloud architecture,particularly as it extends into the PaaS and SaaS layers, weaving together systemsof engagement, systems of record, and the Internet of things, enabling what we callsystems of interaction. We collectively call these explorations, Project ET. I’ll havemore to say on Project ET, in a bit. But first, I’d like to share some more insight intoour open cloud architecture.Today, there is significant pressure on lines of business to create new business valuebased on mobile, social, big data, and analytics capabilities. These new applicationsare fueled by the emergence of new, highly iterative development models that useservice composition, open architectures, open source components, and polyglotprogramming models to rapidly deliver solutions. Two additional trends are key
  3. 3. developerWorks®IBMs open cloud architecture Page 3 of 12enablers for this new style of applications, notably DevOps and Cloud-based PaaSofferings, such as Heroku, Cloud Foundry, and OpenShift. DevOps enables clients todeliver business outcomes in an agile, iterative, and incremental fashion: applicationsare delivered in days or weeks, rather than the typical months or years. Finally, toachieve such development efficiencies, PaaS technologies are evolving that enabledevelopers to quickly assemble substantial middleware components hosted in theCloud extremely quickly (in seconds).Multi-tenant, elastic (“cloud native”) software services are the fuel of this style ofdevelopment. We have observed the evolution and maturation of the API economyover the past decade, exemplified by over 10,000 services available to the cloud-based developer from sites such as programmableweb. Given IBM’s depth andbreadth of software-based services, specifically in the area of mobile, social, andanalytics, it is imperative that we provide implementations accessible to developers atthe click of a button.While there are certainly lots of proprietary offerings that attempt to cover variousaspects of this new style of development and operations, we have observed that theopen offerings deliver real value to the customer, and are more likely to be embracedby developers.What do we mean by "open"?So, what do we mean by "open"? Open can take on a number of meanings.One meaning of "open" is open source software (OSS), such as OpenStack, orone of the many projects hosted by the Linux, Apache, or Eclipse foundations, orsimply hosted on Github. Of course, not all OSS is created equal. It is importantthat the OSS component have an appropriately open license, such as Apache,Eclipse, or MIT, etc. and also that it have an open governance model that welcomescontributions and innovation from anyone, anywhere, without prejudice. Further, itmeans that the OSS component can be easily extended, and easily consumed andintegrated, by means of relatively stable, well-documented APIs, or that it offers apluggable architecture that allows for a wide variety of plugins or drivers.Another meaning of "open" is the implementation of open interoperability standards,such as those emerging from the W3C, IETF, OASIS, or OMG, to name a few.Of course, another form of standard is the de facto standard, which is typicallyestablished by virtue of the market embracing a particular solution, regardless ofwhether its proprietary or open. Ideally, to be open, we should avoid proprietary defacto standards under the control of (and which tend to benefit) a single party.Increasingly, a symbiotic relationship is emerging between open source and openstandards. For instance, proponents of emerging open standards often turn to opensource to implement the standards as a means of providing a reference, as well asproviding a vehicle to drive adoption. As another example, communities developing
  4. 4. developerWorks® open cloud architecture Page 4 of 12an open source project formally document their project’s APIs and/or protocols whenthey feel that things are stable.IBMs open cloud architectureSo, back to IBM’s open cloud architecture. What do we mean by this phrase? At ahigh level, it means that our cloud architecture is based solidly on a composition ofopen source components and where possible, implements open standard formats,APIs, and protocols that deliver both interoperability and value to the customer.This open architecture has a number of benefits, both to IBM, as well as to ourcustomers. For IBM, we benefit from the unparalleled innovation we find in opensource communities such as OpenStack. Additionally, we benefit from the vibrantecosystem of ISV partners that grow from these open source and open standardsinitiatives. Our customers benefit from the ability to leverage the open source andopen standards APIs and to extend them—either through third-party capability(leveraging the vibrant open source ecosystems we have chosen), or throughinnovation and extension of their own.By using the same open cloud architecture and technologies across our cloudportfolio, addressing private, public, and hybrid cloud solutions, we also benefit frominteroperability and portability, not only of workloads but of capability, between andacross these various offerings, which benefits our clients.In fact, customers who choose open standards-based cloud computing are on theright course to take advantage of new opportunities. Specifically, they will be ableto harness their interconnected data with high-value business analytics acrosstraditional and mobile devices.IBMs commitment to open cloud architectureTo help make this happen, IBM is applying its experience in supporting and validatingopen standards. From Linux, Eclipse, and Apache to cloud computing, IBM continuesto work closely with the open source community. To make an open cloud architecturea reality, IBM worked to:• Create a 400-member Cloud Standards Customer Council that grew from about50 members at launch• Drive related cloud standards, such as Open Service for Lifecycle Collaboration,Linked Data in the W3C, and TOSCA in OASIS, to enhance cloud applicationportability• Dedicate more than 500 developers on open cloud projects• Partner closely with the OpenStack Foundation, along with its over 9,100members from 87 countries and 189 corporate sponsorsLets get technicalFigure 1 highlights much of open source and open standards-based technologiesthat comprise our open cloud architecture, today. Of course, because it is open, it will
  5. 5. developerWorks®IBMs open cloud architecture Page 5 of 12evolve and be extended over time, by IBM, by the open communities that drive theopen source and open standards initiatives, by customers, and by our partners.Figure 1. Open tools and technologies in the emerging open cloud architectureOpenStackAs we announced at IBM Pulse, the foundation of our open cloud architectureis based on OpenStack, which supports a wide variety of virtualization platforms(KVM, XEN, VMware, Hyper-V, PowerVM, ZVM, etc.) as well as bare metal, andwhich itself runs on most Linux distributions. We chose OpenStack not only forits architecture (which we found compelling), but even more importantly for itsdevelopment community, open governance, and vibrant and growing ecosystem ofproviders, plugins, and add-ons.Deployment automationFor deployment automation, our offerings will typically support Chef cookbooks andrecipes. However, we also support Puppet and Juju so that clients can leverage theautomation tools they prefer, or already use. This is another key characteristic of ouropen cloud architecture: it enables customer choice. Chef, Puppet, and Juju are eachopen source initiatives of their own, and each has a growing ecosystem of recipes,manifests, and charms, which are often, themselves, open source. The openness ofthese tools, and the vibrancy of their respective ecosystems, benefit both IBM andour clients.Portable workload definition and orchestrationFor portable workload template definition, our open cloud architecture incorporatesthe OASIS TOSCA standard. TOSCA is a collaborative open standard being
  6. 6. developerWorks® open cloud architecture Page 6 of 12developed by IBM, SAP, HP, Rackspace, and many others. What is really exciting isthat many of these same companies are also collaborating on implementing supportfor OASIS TOSCA template descriptions in the OpenStack Heat project. Initially, wehave enabled our IBM pattern deployment capability to import and export the OASISTOSCA template format. Over time, we will likely see the IBM capability transition toOpenStack Heat.Linked Data and OSLCFinally, bridging the foundation software-defined environment layer with thecompositional layer above it (often referred to as PaaS), we use an emerging openstandard, which is based on the W3C’s Linked Data, called Open Services forLifecycle Collaboration (OSLC).OSLC is an open community that is working to make software lifecycle toolsinteroperable by enabling them to share data with one another. This effort coversa wide range of development, operations, and management disciplines and anequally diverse set of tools. The goal is to enable tools to be combined in a waythat connects and streamlines workflows to reduce the effort, frustration, and costthroughout the cradle-to-grave lifecycle of an application.OSLC was inspired by the way data is shared on the web and is based on W3C’sLinked Data. Linked Data is essentially a methodology for publishing structureddata on the Internet so that it can be interlinked with similar data, improving itsaccessibility and usefulness. The idea for Linked Data was first articulated by TimBerners-Lee and rests on four basic principles:1. Use URIs as names for things.2. Use HTTP URIs so that people can look up those names.3. When someone looks up a URI, provide useful information, using the standards(RDF*, SPARQL).4. Include links to other URIs, so that they can discover more things.PaaS fabricContinuing up the stack, we are exploring a number of open alternatives for the PaaSfabric, including OpenShift and Cloud Foundry. Each offers similar characteristicswhen it comes to support for a wide variety of runtime environments (including Java,JavaScript, Python, Ruby, etc.), popular frameworks (such as Node.js, Tomcat, andRuby on Rails, etc.), and a rich variety of services (NoSQL databases, queuing,messaging, caching, analytics, social media, big data, etc.) and which offer an openarchitecture for the incorporation of additional runtime environments, frameworks,and services.SocialActivity Streams is an emerging standard that provides developers with a commonvocabulary to describe business events, enabling apps that socialize data and
  7. 7. developerWorks®IBMs open cloud architecture Page 7 of 12knowledge with people in real time. Implementation with both existing and future ITarchitecture helps to simplify informational and line of business visibility across users,and supports an organization’s ability to share, comment, and collaborate.OpenSocial is a standards-based component model for cloud-based social apps.This model provides a consistent method to integrate existing applications, withthe ability to add third-party applications in a single view. This simplifies the userexperience and enables users to work in the manner that best suits them at thatmoment. Information can be integrated across email, content systems, and richmedia—all within a given context and across platforms. The project deliverscross-industry alignment through the Apache Shindig project, an open referenceimplementation of OpenSocial, and through support of leading standards likeActivityStreams and OAuth2.0.Activity Streams and OpenSocial both have the potential to help to liberate data fromtraditional information silos, through real-time information sharing.Internet of thingsAddressing the Internet of things, the MQ Telemetry Transport is a lightweightpublish/subscribe protocol with predictable bi-directional message delivery. Itsideal for applications where a small code footprint is required, or when networkbandwidth is limited. An Internet of things—sensors, network-connected appliancesand devices, smart buildings, and networked-automobiles—could all benefit from theefficiency of this protocol.The MQTT community is currently working to standardize the specification underOASIS. Additionally, there are multiple open source implementations of the MQTTprotocol, including the Eclipse Paho project and the Mosquitto project.Business applications and the SaaS layerAt the SaaS layer, our open cloud architecture addresses security and federatedidentity (TLS/SSL, OpenID, OASIS SAML, and the IETF’s OAuth2.0), payments(Google Wallet and Apple’s Passport), and user interface (W3C’s HTML5, the IETF’sJSON, Apache Cordova, and Eclipse).HTML5 is the common language for building rich Internet applications acrossplatforms, while still supporting native mobile functions without plugins. It ismanaged by the W3C and represents the evolution of HTML4 / XHTML. HTML5 alsoincorporates standards such as SVG and CSS.HTML5 greatly simplifies application development as it brings native support formultimedia across a wide range of desktop and mobile platforms. Additionally,it brings native support for advanced technologies such as offline storage andapplications, device access, geolocation, and semantic data.
  8. 8. developerWorks® open cloud architecture Page 8 of 12Apache Cordova is the open source project that makes "write once and runanywhere" hybrid applications using platform services feasible. Cordova focuseson providing device-specific code that acts as a "shim" to enable hybrid applicationaccess to native mobile functions across a wide range of devices. The communityis focused on continual maintenance and enhancements to the code that enablesupport for additional devices. Since the projects creation in 2010, IBM has beena significant contributor, adding new capabilities and improving focus on releasemanagement. Together, HTML5 and Apache Cordova are critical to the continueddevelopment of rich mobile applications.SecurityOAuth is an open protocol to allow secure authorization in a simple and standardmethod from cloud, web, mobile, and desktop applications. Specifically, it enablesauthorization and access to REST API endpoints defined within an application orinfrastructure. OAuth has become a key security technology for the integration ofREST APIs into the enterprise, as it can provide access to services both inside oroutside the firewall.Technology previewsAttendees of IBM IMPACT 2013 may have seen, or heard about, previews of thisemerging capability reflected in our open cloud architecture, that I described above.Project IcapOne of these technology previews is Project Icap. Project Icap combines anIntegrated Development Environment (IDE) that provides development tools forthe rapid, highly iterative development that is common to cloud-centric and mobileapplications. The IDE provides support for Java (WebSphere Liberty Profile) withdevelopment templates for JAX-RS, Servlet 3.0, and Spring MVC. Additionally, theIcap IDE supports JavaScript (Node.js) and mobile application development (IBMWorklight). Project ICAP is available for download as an Eclipse plugin.Another feature of ICAP is its cloud explorer that can be used to discover and shareservices.Project ICAP also provides a developer sandbox that can be run locally. The sandboxincludes a number of foundational services that can be used to create applications,such as a relational database service based on Derby, an elastic caching service(ECaaS) based on WebSphere Extreme Scale (WXS), a simple social service thatallows you to connect to social networks and social media properties such as Twitteror Sina Weibo, and sample location services that developers can integrate into theirapplications to provide location awareness for mobile apps.Project ETAnother technology preview is Project ET, which is an emerging public cloudenvironment, modeled after our successful jStart program. This public cloud
  9. 9. developerWorks®IBMs open cloud architecture Page 9 of 12environment offers many of the same services that are available through ProjectIcap’s sandbox, running on an OpenStack cloud. Presently, we are running onOpenStack Folsom, but we intend to migrate to the recent release of OpenStackGrizzly, very soon.In this environment, we are hosting one of the emerging open source PaaS platformswhere you can develop cloud-centric applications, leveraging a set of hosted servicesincluding: PostgreSQL, MySQL, Redis, blob storage, elastic caching (ECaaS),sample location services, an SMS service, simple social service, RabbitMQ, andMongoDB. We intend to deliver additional services online over time, from IBM, opensource sources and from IBM partners, in a continuous delivery mode of operations.We will be especially interested in your feedback as to what services you would liketo see.The Project ET team will be working closely with customers exploring these twopreview offerings to gather feedback, to understand what software services areimportant to them, as well as how to manage the various aspects of developing,delivering, managing, and hosting these new systems of interaction.ConclusionWe’re always interested in your feedback, so feel free let us know what you think ofour open cloud architecture.
  10. 10. developerWorks® open cloud architecture Page 10 of 12Resources• Learn more about the Cloud Standards Customer Council.• Learn more about the OpenStack Foundation.• Learn more about Open Services for Lifecycle Collaboration (OSLC).• Learn more about MQ Telemetry Transport.• Learn more about HTML5.• Learn more about Apache Cordova.• Learn more about Activity Streams.• Learn more about OpenSocial.• Learn more about OAuth.
  11. 11. developerWorks®IBMs open cloud architecture Page 11 of 12About the authorAngel DiazDr. Angel Luis Diaz is Vice President for IBM’s Software Standards andCloud Labs. Since 2009, Dr. Diaz has led his team in transforming howwork is done by software, driving new value through interoperabilityand portability, based on standards and open source. In 2013, IBM’sCloud Labs joined Dr. Diaz’s organization. Under his direction, the labscontinue to bring direct value to customers by optimizing their cloudenvironments and by providing expert solutions that address their mostcomplex challenges. When not innovating in customer environments, theCloud Labs are working to extend IBM’s capabilities across the breadthof its cloud offerings, using technologies that bring interoperability andefficiency to the cloud.Prior to this role, Dr. Diaz was Vice President of WebSphere BusinessProcess Management and Connectivity, where he expanded IBM’smiddleware footprint by cultivating consistent growth of the businesssegment. In previous leadership roles, Dr. Diaz was the Director forWebSphere Business Process development and the Web ServicesProduct Manager, where he was responsible for a range of IBMSoftware product offerings.Before joining the IBM Software Group, Dr. Diaz was a member ofIBMs Research staff and Senior Manager, where he led a range ofprojects that included technologies such as XML and web services. In1998 Dr. Diaz was co-chair and co-author of the first XML standard, theWorld Wide Web Consortium’s (W3C) Mathematical Markup Language(MathML). Dr. Diaz subsequently served on a variety of other W3Cactivities. In 2002, Dr. Diaz collaborated with the Organization for theAdvancement of Structured Information Standards (OASIS) to initiatethe first two web services standards: the Web Services For RemotePortals (WSRP) and OASIS Web Services For Interactive Applications(WSIA). As a result, Dr. Diaz was nominated to the OASIS TechnicalAdvisory Board, which set the technical direction for future OASIS work.Dr. Diaz received his Ph.D. in Computer Science (distributed computing,programming languages, and computer algebra) from RensselaerPolytechnic Institute. You can contact Angel at aldiaz at© Copyright IBM Corporation 2013(
  12. 12. developerWorks® open cloud architecture Page 12 of 12