cloud computing - princeton joint professional chapter, acm and
TRANSCRIPT
Cloud ComputingA General State of the Union
ACM / IEEE Computer Society Meeting
Thursday, December 17
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
Presented by:
David F. Soll
Vice President and Chief Technology Officer
Omicron Consulting
•• IntroductionIntroduction
•• What is Cloud ComputingWhat is Cloud Computing
•• Evolution of ComputingEvolution of Computing
•• Benefits of Cloud ComputingBenefits of Cloud Computing
•• Enabling TechnologiesEnabling Technologies
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• High AvailabilityHigh Availability
•• Cloud SecurityCloud Security
•• Programming ChangesProgramming Changes
•• Examples of Cloud ComputingExamples of Cloud Computing
•• ConclusionsConclusions
•• Presenter: David F. SollPresenter: David F. Soll
–– Vice President and Chief Technology Officer, Vice President and Chief Technology Officer,
Omicron ConsultingOmicron Consulting
•• 21 Years with Omicron21 Years with Omicron
–– Chair, Princeton/Central NJ IEEE Computer SocietyChair, Princeton/Central NJ IEEE Computer Society
•• Senior Member of the IEEESenior Member of the IEEE
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Senior Member of the IEEESenior Member of the IEEE
•• Recipient of the IEEE Region 1 AwardRecipient of the IEEE Region 1 Award
–– Past Chair, Princeton Chapter of the ACMPast Chair, Princeton Chapter of the ACM
•• Senior Member of the ACMSenior Member of the ACM
–– Chair, TCF IT Professional ConferenceChair, TCF IT Professional Conference
–– Over 30 years in computingOver 30 years in computing
Philadelphia’s Leader in Information Technology Consulting
Founded in 1986Headquarters in Bala CynwydMarkets Served
Corporate 1000Process IndustriesFinancial ServicesManufacturingHealth & Life Sciences
Mid-size EnterprisesIndependent Software Vendors
Supporting a Local, Regional, and
Omicron Fast Facts
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
Omicron’s Best and Brightest
Supporting a Local, Regional, and International Client BaseMethodology DrivenProject Based Consulting2007 Microsoft Regional Partner of the Year
•• Well … It dependsWell … It depends
–– Each Cloud vendor seems to have their own definitionEach Cloud vendor seems to have their own definition
•• In General:In General:
–– An Internet based computing environment where you An Internet based computing environment where you
pay only for resources that you usepay only for resources that you use
–– A set of pooled computing resources delivered over A set of pooled computing resources delivered over
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
–– A set of pooled computing resources delivered over A set of pooled computing resources delivered over
the Internetthe Internet
–– Resource allocation can be adjustedResource allocation can be adjusted
•• Although: A Cloud could be built onAlthough: A Cloud could be built on--premisepremise
•• Cloud Computing is the next phase in the Cloud Computing is the next phase in the
evolution of computingevolution of computing
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
According to surveys of CIO’s and CTO’s,
Cloud Computing is going to be important,
but there is not enough understanding of
what it is to have any specific plans for it.
•• What is the difference between “hosted” and What is the difference between “hosted” and
“cloud”?“cloud”?
–– Cloud solutions may be “hosted” or can be built Cloud solutions may be “hosted” or can be built
onon--premises (depends upon your definition of premises (depends upon your definition of
cloud)cloud)
–– Not all “hosted” solutions are in a “cloud”Not all “hosted” solutions are in a “cloud”
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
–– Not all “hosted” solutions are in a “cloud”Not all “hosted” solutions are in a “cloud”
–– A “cloud” is dynamicA “cloud” is dynamic
•• Resources can be added or removed to fit the needResources can be added or removed to fit the need
–– In a traditional hosted environment, resources are In a traditional hosted environment, resources are
allocated based on peak load requirementsallocated based on peak load requirements
•• In a cloud, they can be dynamically allocatedIn a cloud, they can be dynamically allocated
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Predictable any time, anywhere access to IT Predictable any time, anywhere access to IT
resources resources
•• Flexible scaling of resources (resource Flexible scaling of resources (resource
optimization) optimization)
•• Rapid, requestRapid, request--driven provisioning driven provisioning
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Rapid, requestRapid, request--driven provisioning driven provisioning
•• Lower total cost of operationsLower total cost of operations
–– Only pay for what you use Only pay for what you use
Data Data
Processing Processing
Data Data
Processing Processing
Discreet Discreet
PurposePurpose
AppsApps
Discreet Discreet
PurposePurpose
AppsApps
Acquisition Acquisition
costcost
Acquisition Acquisition
costcost
Personal Personal
Productivity Productivity
‘Suite’ ‘Suite’
Personal Personal
Productivity Productivity
‘Suite’ ‘Suite’
Total Cost of Total Cost of
OwnershipOwnership
Total Cost of Total Cost of
OwnershipOwnership
EmailEmail--led PC/ led PC/
ProductivityProductivity
ExplosionExplosion
EmailEmail--led PC/ led PC/
ProductivityProductivity
ExplosionExplosion
SecuritySecuritySecuritySecurity
Widespread Widespread
InternetInternet
PublishingPublishing
Widespread Widespread
InternetInternet
PublishingPublishing
SelfSelf--serviceserviceSelfSelf--serviceservice
CollabCollab
beyond beyond
EE--mailmail
CollabCollab
beyond beyond
EE--mailmail
InterInter--
operabilityoperability
InterInter--
operabilityoperability
Dynamic Dynamic
InformationInformation
FlowFlow
Dynamic Dynamic
InformationInformation
FlowFlow
ConsumerConsumer--
izationization
ConsumerConsumer--
izationization
Enterprise Enterprise
CloudCloud
Enterprise Enterprise
CloudCloud
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
Processing Processing Processing Processing costcostcostcost OwnershipOwnershipOwnershipOwnershipSecuritySecuritySecuritySecurity SelfSelf--serviceserviceSelfSelf--serviceservice
operabilityoperabilityoperabilityoperability CloudCloudCloudCloud
Source: Microsoft
Dec. 8, 2009 - Microsoft announced a new Server and Cloud division that combines
Windows Azure and the Windows Server and Solutions groups. The new Server and
Cloud division is part of the Server & Tools Business headed by Bob Muglia.
•• VirtualizationVirtualization
–– Cloud Resources are typically virtualCloud Resources are typically virtual
–– Each machine can be dynamically allocated (since Each machine can be dynamically allocated (since
it is virtual)it is virtual)
•• New API’sNew API’s
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
–– Provide dynamic resource allocationProvide dynamic resource allocation
–– Abstract ResourcesAbstract Resources
•• i.e.: Database Server abstracted allows scaling of the i.e.: Database Server abstracted allows scaling of the
database layer without code changesdatabase layer without code changes
•• Claims Based Authentication ModelClaims Based Authentication Model
•• Blade ServersBlade Servers
–– Allows for highAllows for high--density of serversdensity of servers
•• SANSAN
–– Provides highProvides high--speed faultspeed fault--tolerant storage tolerant storage
solutionssolutions
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• MultiMulti--core Processorscore Processors
–– Intel just announced a 48 core processorIntel just announced a 48 core processor
•• Intended specifically for cloud environmentsIntended specifically for cloud environments
•• Cloud architectures allow for HACloud architectures allow for HA
–– Resources can be dynamically allocatedResources can be dynamically allocated
–– Clouds can contain both redundant systems as Clouds can contain both redundant systems as
well as redundant physical siteswell as redundant physical sites
–– New API’s provide resource independent accessNew API’s provide resource independent access
•• Redundant Sites ProvideRedundant Sites Provide
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Redundant Sites ProvideRedundant Sites Provide
–– Site Failure CoverageSite Failure Coverage
•• Power FailurePower Failure
•• Earthquake & Other Disaster FailuresEarthquake & Other Disaster Failures
–– Connectivity FailuresConnectivity Failures
•• Claims Based AuthenticationClaims Based Authentication
–– A trusted authority (Issuer) issues a signed security A trusted authority (Issuer) issues a signed security
token containing a set of claims (credentials) which is token containing a set of claims (credentials) which is
given to the application for validationgiven to the application for validation
–– The application will authenticate the user if the The application will authenticate the user if the
security token is valid and signed by a trusted issuersecurity token is valid and signed by a trusted issuer
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
security token is valid and signed by a trusted issuersecurity token is valid and signed by a trusted issuer
•• Scalability AbstractionScalability Abstraction
–– Server Farming only works for stateless Server Farming only works for stateless
environmentsenvironments
–– New API’s are needed to provide abstraction to New API’s are needed to provide abstraction to
database scalabilitydatabase scalability
•• Some Cloud vendors have their own database engines Some Cloud vendors have their own database engines
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Some Cloud vendors have their own database engines Some Cloud vendors have their own database engines
with the abstraction builtwith the abstraction built--in (makes applications nonin (makes applications non--
portable)portable)
•• Microsoft Azure provides a database abstraction layer Microsoft Azure provides a database abstraction layer
that is portablethat is portable
•• Types of Cloud offerings:Types of Cloud offerings:
–– Bare Operating SystemBare Operating System
–– Web or Portal InfrastructureWeb or Portal Infrastructure
–– ApplicationsApplications
–– Web ServicesWeb Services
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
–– Database ServicesDatabase Services
–– Customizable Application ServicesCustomizable Application Services
•• Bare Operating System Bare Operating System –– RackspaceCloudRackspaceCloud
–– http://www.rackspacecloud.com/ http://www.rackspacecloud.com/
–– Formerly Formerly MossoMosso, a division of , a division of RackspaceRackspace
–– Provide various Linux DistributionsProvide various Linux Distributions
–– Also support “Sites”Also support “Sites”
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Web Server, both Linux and WindowsWeb Server, both Linux and Windows
•• O/S Managed by hosting serviceO/S Managed by hosting service
•• Web or Portal Infrastructure Web or Portal Infrastructure –– MicrosoftMicrosoft
–– SharePoint OnlineSharePoint Online
–– Rich Portal CapabilitiesRich Portal Capabilities
•• Excel ServicesExcel Services
•• Forms ServicesForms Services
•• Visio ServicesVisio Services
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Visio ServicesVisio Services
•• Access ServicesAccess Services
•• Business Data ServicesBusiness Data Services
•• Search ServicesSearch Services
•• Applications Applications –– Google AppsGoogle Apps
–– http://www.google.com/ahttp://www.google.com/a
–– PrePre--built, fully functional applicationsbuilt, fully functional applications
•• MailMail
•• CalendarCalendar
•• Word ProcessingWord Processing
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Word ProcessingWord Processing
•• Dynamic Web PagesDynamic Web Pages
•• etc.etc.
•• Web Services Web Services –– AmazonAmazon
–– http://aws.amazon.com/ http://aws.amazon.com/
–– Amazon EC2 & S3Amazon EC2 & S3
•• EC2 EC2 –– Elastic Compute CloudElastic Compute Cloud
•• S3 S3 –– Simple Storage ServiceSimple Storage Service
–– Resizable Compute CapabilityResizable Compute Capability
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
–– Resizable Compute CapabilityResizable Compute Capability
•• Auto Scaling Auto Scaling –– allocate resources based on definable allocate resources based on definable conditionsconditions
–– Development Environments:Development Environments:
•• IBM IBM sMashsMash
•• JbossJboss Enterprise Application PlatformEnterprise Application Platform
•• Ruby on RailsRuby on Rails
•• Database Database -- Zoho’sZoho’s CloudSQLCloudSQL
–– http://www.zoho.comhttp://www.zoho.com
–– Cloud based relational databaseCloud based relational database
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Customizable Application Services Customizable Application Services –– force.comforce.com
–– http://www.salesforce.com/platform/http://www.salesforce.com/platform/
–– Division of Salesforce.comDivision of Salesforce.com
–– Provides services based on salesforce.com Provides services based on salesforce.com
functionalityfunctionality
–– Development EnvironmentDevelopment Environment
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
–– Development EnvironmentDevelopment Environment
•• Write “glue” code to utilize provided services as desiredWrite “glue” code to utilize provided services as desired
•• Extend services with custom codeExtend services with custom code
•• Must use force.com provided development toolsMust use force.com provided development tools
•• Applications are Applications are notnot portable to other vendor’s cloudsportable to other vendor’s clouds
•• IBM IBM –– Cloud Management ToolsCloud Management Tools
–– Cloud Services Lifecycle ManagementCloud Services Lifecycle Management
–– Cloud Security ManagementCloud Security Management
–– Cloud Storage ManagementCloud Storage Management
•• Microsoft Microsoft –– AzureAzure
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Microsoft Microsoft –– AzureAzure
–– Cloud API’sCloud API’s
–– Resource ManagementResource Management
–– Resource AbstractionResource Abstraction
–– Claims Based AuthenticationClaims Based Authentication
•• VMwareVMware
–– VMware VMware vCloudvCloud
•• Based on VMware infrastructureBased on VMware infrastructure
•• vSpherevSphere Virtual Operating SystemVirtual Operating System
–– VMware VMware vCloudvCloud ExpressExpress
•• Infrastructure as a service (Infrastructure as a service (IaaSIaaS))
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Pay as you goPay as you go
–– VMware VMware vCloudvCloud APIAPI
•• An interface for providing and consuming virtual An interface for providing and consuming virtual resources in the cloudresources in the cloud
•• Enables deploying and managing virtualized workloads Enables deploying and managing virtualized workloads in internal or external clouds as well as interoperability in internal or external clouds as well as interoperability between cloudsbetween clouds
•• 3Leaf Systems 3Leaf Systems
•• 3PAR3PAR
•• 3Tera3Tera
•• 10Gen10Gen
•• AdaptivityAdaptivity
•• AgathonAgathon GroupGroup
•• AkamaiAkamai
•• Amazon EC2Amazon EC2
•• Apache Apache HadoopHadoop
•• AppirioAppirio
•• AppistryAppistry
•• AppNexusAppNexus
•• ApprendaApprenda
•• AppzeroAppzero
•• AptanaAptana
•• ArjunaArjuna
•• AsankyaAsankya
•• AT&TAT&T
•• CohesiveFTCohesiveFT
•• CordysCordys
•• CumuluxCumulux
•• DatalineDataline
•• DellDell
•• DesktoptwoDesktoptwo
•• ElasticHostsElasticHosts
•• Elastic Compute CloudElastic Compute Cloud
•• ElastraElastra
•• EMCEMC
•• Engine YardEngine Yard
•• ENKIENKI
•• EnomalyEnomaly
•• EnomalismEnomalism
•• EucalyptusEucalyptus
•• eVapteVapt
•• EyeOSEyeOS
•• FlexiScaleFlexiScale
•• IntelIntel
•• InterouteInteroute
•• iTricityiTricity
•• JoyentJoyent
•• JumpBoxJumpBox
•• Juniper NetworksJuniper Networks
•• KaavoKaavo
•• KadientKadient
•• Keynote SystemsKeynote Systems
•• Layered TechnologiesLayered Technologies
•• LinkedInLinkedIn
•• LongJumpLongJump
•• MeezaMeeza
•• MezeoMezeo SoftwareSoftware
•• MicrosoftMicrosoft
•• Morgan StanleyMorgan Stanley
•• MorphExchangeMorphExchange
•• NetsuiteNetsuite
•• RackspaceRackspace
•• Red HatRed Hat
•• ReservoirReservoir
•• RhomobileRhomobile
•• RightScaleRightScale
•• RollbaseRollbase
•• rPathrPath
•• S3S3
•• SalesForce.comSalesForce.com
•• SavvisSavvis
•• ServePathServePath//GoGridGoGrid
•• SIMtoneSIMtone
•• SkytapSkytap
•• SLA@SOISLA@SOI
•• SmugMugSmugMug
•• SOASTASOASTA
•• StrikeIronStrikeIron IronCloudIronCloud
•• SunSun
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• AT&TAT&T
•• BluewolfBluewolf
•• BoomiBoomi
•• BoxBox--NetNet
•• Booz Allen HamiltonBooz Allen Hamilton
•• CACA
•• CallidusCallidus SoftwareSoftware
•• CassattCassatt
•• CiscoCisco
•• CitrixCitrix
•• Cloud9 AnalyticsCloud9 Analytics
•• CloudBerryCloudBerry LabLab
•• ClouderaCloudera
•• CloudscaleCloudscale
•• CloudswitchCloudswitch
•• CloudworksCloudworks
•• CogheadCoghead
•• FlexiScaleFlexiScale
•• Force.comForce.com
•• Fortress ITXFortress ITX
•• G.ho.stG.ho.st
•• GigaSpacesGigaSpaces
•• GoGridGoGrid//ServPathServPath
•• GoogleGoogle
•• gOSgOS
•• Grid DynamicsGrid Dynamics
•• HadoopHadoop
•• HerokuHeroku
•• Hosting.com Hosting.com
•• HPHP
•• HypericHyperic
•• IBMIBM
•• iCloudiCloud
•• IMODIMOD
•• NetsuiteNetsuite
•• newScalenewScale
•• NingNing
•• NirvanixNirvanix
•• NovellNovell
•• OpenNebulaOpenNebula
•• OpSourceOpSource
•• OracleOracle
•• OTOYOTOY
•• ParallelsParallels
•• ParaScaleParaScale
•• Penguin ComputingPenguin Computing
•• Platform ComputingPlatform Computing
•• QQ--layerlayer
•• QrimpQrimp
•• QuantivoQuantivo
•• QuickbaseQuickbase
•• SunSun
•• TerremarkTerremark
•• The The GridLayerGridLayer
•• ThinkGridThinkGrid
•• UnisysUnisys
•• UnivaUniva UDUD
•• vCloudvCloud
•• VerticaVertica
•• Virtual WorkspacesVirtual Workspaces
•• VMwareVMware
•• WorkXpressWorkXpress
•• Yahoo!Yahoo!
•• ZettaZetta
•• ZimoryZimory
•• ZohoZoho
•• ZuoraZuora
Source: http://cloudcomputing.sys-con.com/node/770174
•• Cloud Computing holds some strong promisesCloud Computing holds some strong promises
–– Highly ScalableHighly Scalable
–– Highly AvailableHighly Available
–– Dynamically allocate resourcesDynamically allocate resources
–– Pay only for resources that you usePay only for resources that you use
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004
•• Cloud Computing is not yet well understoodCloud Computing is not yet well understood
•• Cloud Computing is still in its infancyCloud Computing is still in its infancy
1 Bala Avenue, Suite 400
Bala Cynwyd, PA 19004