Course overview

  • First part: covered the networking part that is need to understand where our data are coming from and going
  • First part: covered the networking part that is need to understand where our data are coming from and going
  • Second part: covered the basics of cloud computing understanding which are the key feature of a cloud environment
  • First part: covered the networking part that is need to understand where our data are coming from and going
  • Second part: covered the basics of cloud computing understanding which are the key feature of a cloud environment
  • Third part: covered the basics of VMs
  • First part: covered the networking part that is need to understand where our data are coming from and going
  • Second part: covered the basics of cloud computing understanding which are the key feature of a cloud environment
  • Third part: covered the basics of VMs
  • Fourth part: This was a detour, but I found the need to reinforce the basic way of automatically start software.

Cloud Computing:

  • The concrete example of Utility Computing.
  • The natural evolution of Grid Computing.
  • A Distributed System

The temporal evolution

timeline 2006 : Amazon Elastic Compute Cloud (E2C) 2008 : Nasa Open Nebula : Google App Engine 2010 : Microsoft Azure : Open Stack 2012 : Google Compute Engine 2013 : Docker 2014 : kubernetes

What is cloud computing?

Defintion

Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.

This cloud model promotes availability and is composed of:

  • five essential characteristics
  • three service models
  • four deployment models

Characteristics

  • On-demand self-service
  • Broad network access
  • Resource pooling
  • Rapid elasticity
  • Measured service

A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider.

  • On-demand self-service
  • Broad network access
  • Resource pooling
  • Rapid elasticity
  • Measured service

Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops, and workstations).

  • On-demand self-service
  • Broad network access
  • Resource pooling
  • Rapid elasticity
  • Measured service

The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or datacenter). Examples of resources include storage, processing, memory, and network bandwidth.

  • On-demand self-service
  • Broad network access
  • Resource pooling
  • Rapid elasticity
  • Measured service

Capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time.

  • On-demand self-service
  • Broad network access
  • Resource pooling
  • Rapid elasticity
  • Measured service

Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service.

Service models

  • Infrastructure as a Service (IaaS)
    • Examples: EC2, GCE, AzureVM
  • Platform as a Service (PaaS)
  • Software as a Service (SaaS)
  • Infrastructure as a Service (IaaS)
  • Platform as a Service (PaaS)
    • Examples: GKS, ECS, ACS
  • Software as a Service (SaaS)
  • Infrastructure as a Service (IaaS)
  • Platform as a Service (PaaS)
  • Software as a Service (SaaS)
    • Examples: Goolge Apps, Microsoft 365

Infrastrucutre

  • networking
  • storage
  • Servers
  • Viurtualization

The main networking, providing Broad network access, network redunancy, physical network infrastructure (switches)etc.

ATTENTION: this is not all the networking

Infrastrucutre

  • networking
  • storage
  • Servers
  • Viurtualization

Backbone storage

  • HDD,
  • Volumes,
  • iSCASI

Infrastrucutre

  • networking
  • storage
  • Servers
  • Viurtualization

Physical hosts, usually managing power supplies, updating firmwares, etc.

Infrastrucutre

  • networking
  • storage
  • Servers
  • Viurtualization

Responsible for creating VM, ususally in the cloud you never get bare metal devices. You are often getting a VM that is very close to the hardware.

Platform

  • O/S
  • Middlewhere
  • Runtime

Operative System, linux, BSD

Platform

  • O/S
  • Middlewhere
  • Runtime

Network, storage, security, etc

Platform

  • O/S
  • Middlewhere
  • Runtime

runtime, to run containers(runc, crun, etc.), or sub virtualization

Platform

  • data
  • application

How do you manage the data? Simple files? Database?

Platform

  • data
  • application

Finally your app (written in Django probaly)

recap

Deployment model

  • Private cloud
  • Community cloud
  • Public cloud
  • Hybrid cloud

The cloud infrastructure is provisioned for exclusive use by a single organization comprising multiple consumers (e.g., business units). It may be owned, managed, and operated by the organization, a third party, or some combination of them, and it may exist on or off premises.

  • Private cloud
  • Community cloud
  • Public cloud
  • Hybrid cloud

The cloud infrastructure is provisioned for exclusive use by a specific community of consumers from organizations that have shared concerns (e.g., mission, security requirements, policy, and compliance considerations). It may be owned, managed, and operated by one or more of the organizations in the community, a third party, or some combination of them, and it may exist on or off premises.

  • Private cloud
  • Community cloud
  • Public cloud
  • Hybrid cloud

The cloud infrastructure is provisioned for open use by the general public. It may be owned, managed, and operated by a business, academic, or government organization, or some combination of them. It exists on the premises of the cloud provider.

  • Private cloud
  • Community cloud
  • Public cloud
  • Hybrid cloud

The cloud infrastructure is a composition of two or more distinct cloud infrastructures (private, community, or public) that remain unique entities, but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting for load balancing between clouds).

topics