part 1 Flashcards
(35 cards)
cloud computing
using a network of remote servers hosted on the Internet to store, manage and process data rather than local server or personal computer
dedicated server
one physical machine dedicated to a single business - very expensive, high maintenance but high security
virtual private server
one physical machine dedicated to a single business. But physical machine is virtualised into sub-machines to run multiple web-apps/sites
shared hosting
one physical machine, shared by hundreds of businesses. relies on most tenants under-utilising their resources. cheap and many limitations
cloud hosting
multiple physical machines acting as one system. abstracted into multiple cloud services: flexible, scalable, secure, cost effective and highly configurable
most common cloud services for IaaS
Compute, storage, networking, databases
benefits of cloud computing
cost effective: pay for what you consume, no up front cost.
global: launch workloads anywhere in the world, just choose a region
secure: cloud provider takes care of physical security. Can be secure by default or can configure access down to granular level
reliable: data backup, disaster recovery, data replication and fault tolerance
scalable: increase/decrease resources and services based on demand
elastic: automatic scaling during spikes and drop in demand
current: underlying hardware + software is patched, upgraded and replaced by cloud provider without interruption
types of cloud computing
SaaS, PaaS, IaaS
SaaS
Product run and managed by the service provider - don’t worry about how service is maintained - it just works and remains available (for customers)
PaaS
Focus on deployment and management of apps - not provisioning, configuring or understanding hardware or OS (for developers)
IaaS
Provides access to networking features, computers and data storage space (don’t worry about IT staff, data centres etc) for administrators
Cloud computing responsibilities
SaaS - CSP responsible for all
PaaS - CSP responsible for all except data and applications
IaaS - CSP responsible for Virtualisation, servers, storage and networking. Customer responsible for Applications -> OS
On Premise - Customer responsible for all
Azure’s deployment models
Public cloud, private cloud, hybrid
Public cloud + adv and disadv
aka cloud native - everything built on cloud provider. Have a network in azure, have a VM and a database running within this
adv - cost effective, security controls by default, no need for in depth knowledge of infrastructure
disadv - might not meet security requirements, limited configuration based on what CSP exposes you to
Private cloud + adv + disadv
aka On Premise. Everything built on company’s datacentres. Could use an open source cloud software mimicking what Azure would do. e.g. OpenStack. Openstack can run VM/server and database
adv - can configure infrastructure how you like, can meet any security compliance if putting in work.
disadv - most expensive, no guarantee its secure, need to know in depth how to configure all levels of infrastructure
Hybrid
Use both on-premise and a cloud service provider. Can use a network service to facilitate connection between the two e.g. Express Route (dedicated connection)
- could be more cost effective based on what you off load to cloud
adv - best of both worlds. can meet all security requirements
disadv - need to know in depth how to configure infrastructure and know CSP services. Have to secure the connection to the cloud
Savings from On Prem to Azure cloud
75% - no longer have physical security, hardware, IT Personnel, maintenance as costs - just implementation, configuration and training.
CAPEX cs OPEX
CAPEX: spending money upfront on physical infrastructure - deducting from tax bill over time e.g. server/storage/network/data centre costs/ technical personnel - have to guess upfront what you plan to spend
OPEX: non physical costs - leasing software, paying for cloud support, training employees, compute and storage usage. Can try product without investing in equipment.
Availability
Ability to ensure a service remains available (HA - highly available)
High availability - ensure service remains available by ensuring there is no single point of failure and/or ensure a certain level of performance e.g. multiple data centres in multiple regions
Azure load balancer - allows evenly distribute traffic to multiple servers. If datacenter/server is unavailable, will route traffic to only available datacentres with servers
Scalability
Your ability to grow rapidly or unimpeded
High scalability: increase capacity based on increasing demand of traffic, memory and computing power.
Vertical - upgrade to a bigger server
Horizontal - adding additional servers of the same size
Elasticity
Your ability to shrink + grow to meet demand
High elasticity: ability to automatically increase or decrease capacity based on current demand/traffic/memory/computing power
(difference from scalability = automatic and can decrease size)
Done using horizontal scaling: scaling out vs in - add more servers vs remove of same size
Azure VM Scale Sets - auto inc/dec in response to demand or schedule
Fault Tolerance
Your ability to continue operation when theres 1+ faults
Disaster recovery
Your ability to recover from a failure (HD - high durability)
High durability - ability to recover from failure + prevent loss of data. Backup? Time to restore backup? How to ensure live data isn’t corrupt? Backup still work?
Virtual Machines
Running a machine within a machine so can run multiple apps within a machine. Hypervisor = software layer that lets you use VMs
Physical server shared by multiple customers so pay fraction of cost. Still overpay for underutilised VM because choosing size of VM in advance.
Limited by guest OS.
Multiple apps on single VM can lead to conflict in resource sharing.