PA200 - Cloud Providers Petr Blaho April 4, 2017 More detailed in Cloud Service Deliver Models Datacenter Virtualization – oVirt IaaS – Infrastructure as a Service – OpenStack PaaS – Platform as a Servise - OpenShift SaaS – Software as a Service – Microsoft Dynamics CRM – mostly abandoned xPaaS – extended PaaS – integrates aPaaS (Application), iPaaS (Integration), dvPaaS (Data Virtualization), bpmPaaS (Business Process Management), mPaaS (Mobile) Amazon Web Services Web service backend providing libraries for majority of modern web programming languages Provides also database access and storage Features mobile platform as well REST-style HTTP, SOAP Simple Storage Service Provides API-driven Object storage Stored files are abstracted all the way to objects and are easy to represent in high-level programming languages REST-style HTTP, SOAP, BitTorrent Elastic Compute Cloud (IaaS) KVM-based Provides backend to earlier mentioned services as well as ability to sell „Virtual private cloud“ to customers OSs (Linux, OpenSolaris, Windows, NetBSD, . . . ) Elastic Beanstalk (PaaS) AWS Lambda (event-driven, serverless computing - FaaS) Glacier (storage for archives or backups) Elastic Block Store (block-level storage) SimpleDB, DynamoDB, Elastic MapReduce, . . . Rich platform exposing functionality over REST Primarily developed to support Google’s core services (search, youtube, gmail) Later extended with the business needs driven by Android, its integration with services Nowadays featuring rich set of programming frameworks, hosting services and database engines Web apps on Google’s infrastructure (PaaS) Python, Java (JVM), Go, PHP, Node.js Easy deploy, monitoring, scaling Limited languages and tools (SQL vs. GQL) IaaS Compute Engine Unit (GCEU) - abstraction of computation power at the backend kvm based IaaS for storage REST-like HTTP access compatible with Amazon S3 web service (with REST-like interface) work with Storage SQL dialect, returns JSON can be integrated via HTTP (Spreadsheets) Provider of solutions that can serve either as a private or public cloud Also provider of PaaS/xPaaS solution (OpenShift) Involved in development of cloud-oriented apps ranging from Level 1 (kernel, KVM), through management software (OpenStack, oVirt) and PaaS up to application level (Jboss Enterprise Application Platform, Data Virtualization, etc.) open source upstream for Red Hat Virtualization can manage networks, CPUs, storages with VM it can do live migration, live snapshots integrate with many open source projects (OpenStack, Foreman, ManageIQ, . . . ) Java (GWT, WildFly) REST-style HTTP API can integrate with LDAP or AD RHEL, CentOS, Fedora or Debian with KVM VDSM (Python daemon) manages resources and VMs gets commands from Engine and reports back to it open source platform for cloud computing (mainly IaaS) written in Python each Project aims to solve one part of cloud computing needs pluggable w/r/t backends and between Projects central user management and authentication service can use directory service backend (LDAP) layer on top of hypervisor(s) manages compute resources - VMs and containers manages networks and IP addresses for VMs can use SDN technologies (OpenFlow) load balancing, floating IPs, firewall, VPN, . . . Block Storage (Cinder) - many storage providers Image Storage (Glance) - images to boot from and to store snapshots of VMs to Orchestration (Heat) - used to manage deployments of applications on OS Database as a Service (Trove) Bare Metal (Ironic) - management of physical machines (PXE and IPMI as default) PaaS container based deployment and management Kubernetes with Docker images written in Go IaaS Servers (Bare Metal, Virtual) Storage (Block, File, Object, Backup) Networking (VPN, DirectLink, CDN) Management (Monitoring & Reporting, Managed Hosting) PaaS based on Cloud Foundry runs on SoftLayer supports Java, Node.js, Go, PHP, Swift, Python include OpenWhisk (similar to Amazon Lambda or Google Cloud Functions) PaaS Ruby, Java, Node.js, Scala, Clojure, Python, PHP, and Go PostgreSQL, Redis, MongoDB Connect for Salesforce PaaS Ruby, Go, Java, Node.js, Python, PHP, .NET IBM, Pivotal, HPE, GE, Huawei - certified providers not a full enumeration of subjects on market offerings are different in technologies, services and prices offerings often overlaps in a lot of parts offerings often provides some added value for allied services / products