Introduction to cloud computing (Lecture 2) Flashcards
what is cloud computing?
delivery of computing services
- storage
- servers
- databases
over the internet
Benefits of cloud computing
scalability
cost-effective
flexibility
reliability
collaboration -> better for team-work
Types of clouds
Public cloud
-> cloud owned by a third party cloud service providers
–> Google cloud
private cloud
-> refers to cloud computing ressources used exclusivley by a single business (good for sensitive data)
–> LRZ @ TUM
hybrid cloud
-> balance between rent & ownership
–> best of both worlds
Types of cloud services
Infrastructure as a service (IaaS)
-> provides virtualized computing ressources
–> exposes server, storage, network
Platform as a service (PaaS)
-> provides a platform for application development & deployment
–> fine with default settings
Software as a Service (SaaS)
-> provides Software applications over the internet
–> you are the enduser
TUM online:
user : SaaS
devs: on-site (everything is presented)
Wie sind Clouds physisch aufgebaut?
- mehrere serverblades (highperformance & teure Computer sind (aufeinander) gestapelt und bilden einen rack.
- diese blades sind über ein Netzwerk Kabel verbunden und anschließend wird der ganze rack mit einem switch verbunden
- falls es mehrere Racks gibt, werden diese auch durch einen switch verbunden
Was bedeutet Virtualisation auf einem Server blade?
Virtualization ist die Fähigkeit mehrere Virtuelle Maschinen auf einem Serverblade laufen zu lassen, um auf einem Computer mehrere Computer zu haben und die Illusion für den user zu kreieren, man sei der einzige auf der Maschine
Arten von Virtualization (Vorteile und Nachteile)
Virtual Machine - based Virtualization of a phsical Machine
- realisiert durch den Hypervisor, der Mehrere VMs auf dem Serverblade laufen lässt
–> OS wird exposed
+: flexibilität
-: teuer
Container - based Virtualization of a phsical Machine
- läuft grundlegend auf dem selben OS und wird dann verwaltet durch eine Conatiner engine
+: easy to use, gute performance
-: less secure, less flexibility
Network Virtualization
- combines all network resources to create Virtual Private Cloud (VPC)
Storage Virtualization
- create the Illusion of your own storage
- object storage
– docs, images, videos
- Block storage
– databases, application
Distributed Software System
Digitale Endgeräte als Knoten, dann Verbreitung des Programmablaufs über mehrere Maschinen (die man selber nichtmal kennt??!)
Why Distributed Software Systems?
- Maschinen sind von hausaus schon verteilt (Messenger)
- ein fail richtet für den einzelnen nicht so viel schaden an
- Art von Teamwork -> solving bigger Problems
Challenge for Distributed Software Systems
- fault tolerance, Recovery
- Availability
- Scalability
- Secrurity
RPCs
Remote Procedure Calls
-> you (as a clientr ) call a procedure remotely (on a server), who returns the values for you
Software deployment models (Vortele, Challanges, use cases) –> Baremetal & VMs
- Baremetal
- you manage: a physical machine + OS + Application
-> you basically own everything
+:
- full control
- no noisy neighbours
- better security
Challenges:
- complex setup
- limited scalability (cost?)
- physical space
use Cases:
- High performance
- Data sensitive
- Virtual Machines
- you manage: OS + Application
+:
- multiple application on one machine
- scalability
Challenges
- overhead from transition from physical into hardware
use Cases:
- running old application on new Hardware
- web applications
- SaaS providers
Software deployment models (Vortele, Challanges, use cases) –> Conatiners & Serverless
- Containters
you manage: Application
+:
- consistent
- scalable
Challanges:
- complex working with comtainers
- limited access to host resources
use- cases:
- Microservers -> spawn multiple of them
same core technology
- Serverless
you manage: Application Image
+: already managed Infrastructure
Challenges:
- limited control
- cold start issues
use- cases
events