Main Flashcards
What is cloud computing?
the practice of using a network of remote servers hosted on the Internet to store, manage and process data, rather than local server or a personal computer
What is cloud hosting?
Multiple physical machines that act as one system. Benefits include flexibility, scalability, security, cost-effectiveness and configurability
IaaS cloud services
- Compute (like VMS)
- Storage (Virtual HDDs/SDD)
- Networking (Virtual Network defining internet connections or networking isolation)
- Databases (ie. SQL DBS hosted elsewhere)
Benefits of Cloud
- You only pay for what you use, pay as you go model is kept cheap by sharing costs with thousands of other customers using the same resources
- Launch workloads anywhere in the world
- Cloud provider takes care of physical security and deep configurability for other security
- data backup, disaster recovery, data replication and fault tolerance
- increase or decreases resources and services based on demand
- automate scaling during spikes and drop in demand
- software is patched, upgraded and replaced by cloud provider without disruption to you
Types of Cloud Computing
- SaaS: product is run and managed by the service provider (gmail, salesforce etc) for customers
- PaaS Focus on the deployment and management of your apps. Don’t worry about provisioning, configuring or understanding hardware or OS for developers
- IaaS Basic building blocks for cloud IT. Provides access to networking features, computers and data storage space for Admins.
What do you have to handle on-prem?
EVERYTHING
What are you responsible for with IaaS and what is covered by CSP?
Apps,Data,Runtime,Middleware,OS
Not responsible: Virtualization,Servers,Storage,Networking
What are you responsible for with PaaS and what is covered by CSP?
Apps,Data
Not responsible: Runtime,Middleware,OS,Servers,Storage,Networking
What are you responsible for with SaaS and what is covered by CSP?
EVERYTHING COVERED BY CSP
What is Capex (Capital Expenditure) vs Opex (Operational Expenditure)?
Capex: Spending money upfront on physical infrastructure and Deducting that expense from your tax bill over time i.e server costs, storage costs, network costs.
Have to guess what to spend upfront
Opex: Costs associated with an on-premises datacenter has shifted cost to service provider. Only concerned with non-physical costs. i.e Leasing software and customizing features, paying for cloud support and billing based on use time/amount used.
Cloud Architecture Terms:
Availability - ability to ensure service remains available (High Availability/HA)
Scalability - ability to grow rapidly/unimpeded
Elasticity - ability to shrink and grow to meet demand
Fault Tolerance - ability to prevent failure
Disaster Recovery - ability to recover from failure (High Durability/DR)
How is high availability possible?
By running workload redundantly through multiple servers across multiple availability zones (azure term for datacenter) your workload will not go down
What is a load balancer?
Allows you too evenly distribute traffic to multiple servers in one or more datacenter. If a datacenter or server because unavailable the load balancer will route the traffic to only available datacenter with servers.
How is high scalability possible?
Use vertical scaling/scaling up to upgrade to a more powerful server
Use horizontal scaling/scaling out to increase number of servers
How is high elasticity possible?
Differs from scalability by being automatic and being able to decrease demand
By scaling horizontally inwards and outwards
Doesn’t make sense vertically because scaling down could lead to issues
how is high durability possible?
Done by making sure backups are taken, backups can be restored easily, making sure live data isn’t corrupt
What is a VM?
-Hypervisor is the software layers hat lets you use VMS
-Can run multiple VMs on one machine
-physical server is shared by multiple -customers which is why you only pay a fraction of the cost
-still will overpay for underutilizing it
What is a container?
- Servers or VM can run multiple containers
- Unlike VM, rather than simulating a whole computer, containers emulate layers above the OS level
- Docker Deamon is the software layer that lets you run multiple containers
- Can share underlying OS between multiple containers or have them run different OS
What are Functions?
- Managed VMs running managed containers
- Known as Serverless Compute
Upload a piece of code choose the amount of memory and duration - Only responsible for code and data, nothing else
- Very cost effective, only pay for the time code is running, VMS only run there is code to be executed
- Cold start (have to wait for server to be provisioned before running)
What is a region and what is a Geography?
- A region is a grouping of multiple datacenters (Availability Zones)
- A Geography is a discreet market of two or more regions that preserves data residency (make data stay within country its being used in) and compliance boundaries
What is a paired region?
A region that is paired with another region 300 miles away. This is done so that if your region has an outage, there is no disruption because the other region takes over.
I.e Azure Geo-redudant storage (GRS) replicates data to a second region automatically, ensuring data is durable even if primary region never recovered.
What are the types of regions in azure?
Recommended region - A region that provides the broadcast range of service capabilities and is designed to support availability zones new, or in the future
Alternate (other) region - A region that extends Azure’s footprint within a data residency boundary where a recommended region also exists. Not designed to supports AZs. These regions are labelled as other in the azure portal.
What are the 3 categories of services in Azure Cloud?
Foundational - When
Mainstream -
Specialized -
What is an availability zone?
An availability zone (AZ is a physical location made up of one or more datacenters. a region generally contains 3 availability zones. A datacenter is just a building with a bunch of computers.
Is a combination of a fault domain and update domain
What is a fault domain?
A logical grouping of hardware to avoid a single point of failure within an AZ, group of virtual machines that share a common power source and network switch
What is an update Domain?
Azure may need to apply updates to the underlying hardware and software. Update domains ensure your resources do not go offline.
What is an availability set?
A logical grouping that you can use in Azure to ensure that the VMs you place in the availability Set are different fault/update domains to avoid downtime. This is done by targeting servers in different racks in the datacenter.
What are the types of Computing Services offered by Azure?
VM - shared hardware between customers but you chose your computer specs
Azure Container Instances - Docker as a Service. Run containerized apps on Azure without provisioning servers or VMs.
AKS - Kubernetes as a Service. Easy to deploy, manage and scale containerized app software
Azure Service Fabric - Tier 1 enterprise containers as a platform. Microservices (like containers)
Azure Functions - Event-driven server less compute (functions) run code without provisioning or managing servers.
Azure Batch - plans schedules and executes batch computer workloads across running 100+ jobs in parallel.
What are the type of storage services from Azure?
Azure Blob Storage - Object Serverless Storage. Store very large files and large amounts of unstructured files. Pay for what you store, unlimited storage no re-sizing volumes.
Azure Disk Storage - A virtual volume. Basically a hard drive in the cloud, choose between SSD or HDD. Attached to a VM.
Azure File Storage - A shared volume that you can access and manage like a file server. Useful for multiple VM’s need the same information
Azure Queue Storage - Messaging Queue. A data integrator delivering messages between apps
Azure Table Storage - Wide Column No SQL Database
Azure Data Box/
Azure Archive Storage - Long term cold storage for hold onto files for years on the cheapest storage options.
What are the Azure Database Services?
Azure Cosmos DB - fully managed NoSQL databases. designed for scale with guarantee of 99.9% availability
Azure SQL database - fully managed SQL database with auto-scale, integral intelligence and robust security
Azure Database for MySQL/PSQL/MariaDB - Fully managed and scalable database type with hight availability and security
SQL Server on VMs - Host enterprise SQL Server apps in the cloud. Lift and shift from on premise to cloud.
Azure Synapse analysts - fully managed data warehouse with integral security at every level of scale at no extra cost
Azure DB mIgration service - Migraets your databases to the cloud with no application code changes
Azure Cache for Redis - Caches frequently used and static data to reduce data and application latency
What are the Application Integration Services?
Azure Notifications Hub - Pub/Sub Send push notifications to any platform from any backend
Azure API Apps - Api Gatewa Quickly build and consume APIs in the cloud. Route APIs to Azure Services
Azure Service Bus - Service Bus reliable cloud messaging as a service (MaaS) and simple hybrid integration
Azure Stream Analytics - Serverless real-time analytics, from the cloud to the edge
Azure Logic Apps - Schedule, automate and orchestrate tasks, business processes and workflows. Integrate with Enterprise SaaS and Enterprise Applications.
Azure API Management - Hybrid multi-cloud platform for APIs across all environments. Put this infront of existing API for extra functionality
What are the Developer and Mobile Tools in Azure?
Azure SignalR Service - Real-Time Messaging Easily add real-tie web functionality to applications
Azure App Service - Easy to use service for deploying and scaling web-apps, and not worry about the underlying infrastructure
Visual Studio (Microsoft Owned) - Code Editor IDE designed for Azure Dev
Xamarin - Mobile-App Framework to create native mobile apps with .NET and Azure
What are Azure DevOps Services?
Azure DevOps:
- Azure Boards - Kanabn deliver value to users using agile tools
- Azure Pipeline - Build, test and deploy with CI/CD that works with any language,platfomr and cloud. Connect to Github or other Git provider and deploy continously
- Azure Repos exactly like Github Repos
- Azure Test Plans - Manual and Explatory testing tools
- Azure Artificats - CI/CD pipelines with azure
- Azure DevTest Labs - Dev Test environment
What is IaC?
Using scripts to set up services. I.e script to set up VM