key points
- Before virtualization – we had ton of servers. Each server running on different hardware, even with different operating system. Each of those server had their own CPU, RAM, hard drive resources. Each of those serveres needed enough resources for utilisation at peak time.
- Most of the servers were under utilised . Companies were spending tons of money on the hardware
- Then we started to implement virtualization, that allowed to run multiple virtual machine to run on single virtual host, so that we are able to get most usage out of our hardware and cut down on space,cooling and cost.
Disadvantages of Virtualization
- High upfront costs since we need to buy powerful virtual hosts which we then need to keep for 5 years of amortization of cost.
- space needed to host servers
- Electricity consumption/utility costs for cooling and other server needs.
- Hardware maintenance was still needed
Virtualisation was better but there was still space for improvement, but this is where the cloud computing comes in.
Cloud computing:- enables companies to consume a compute resource such as VM, storage or an application as utility just like electricity rather than having to build and maintain computing infrastructures in house.
- In cloud they have their own data center. they manage all the hardwares, servers , networking, virtualization
- cloud is fully built on the principle of virtualization, no client has direct access to the hardware(virtualized environment)
- All the resources are pulled together and then shared to multiple clients that all consume the shared hardware
- Those clients dont need to know what server they run on or on how many servers their different environments are running. They simply consume a service and the cloud provider is the one which makes sure that there ar enough shared resources to handle everything.
- In cloud environment – users pick what services they want to use. Each service has different price per user or per minute of the utilisation for that specific resource.
- Services are billed on demand by the minute or by hour..
- This allows organisation to use resources when needed and stop when it is no longer needed.
- This makes the organisation more dynamic and cost effective and reduce upfront cost.
- you can take the service for 3 years example(taking vm for 3 years) – that would cost less.. compared to if you take for 1 year or less.
- Cloud services can be scaled depending on demand.
- If you are taking a vm – 8gb ram ..you can upgrade later on demand
- App service plan – which is a platform used to host website in azure, autoscale can be enabled on it. If CUP % goes above 70% add more Cpus or instance to the service. So when peak is high, go for the extra cpu and when the traffic is down come back to its initial state. This is the elasticity feature of cloud computing
- Cloud takes care of High availibility and disaster recovery on their platform
- HIGH AVAILIBILITY:– local failure such as disk, power supply,services crashes on one of the server etc.
- DR: – flood, earthquake
- Fault Tolerance :- similar to high availibility but offers zero downtime.
- Azure data centers over 60 regions. This might increase in future.
- Azure is a cloud platform with more than 200 products + services that help create applications and solutions. you can rent webhosting, computing power, databases and storage as well some full featured solution like business analytics tool,AI services, portals for managing devices for IOT
CLOUD COMPUTING FEATURES
- Delivery Model of services like
- Storage :- Files or DB
- Compute power:- meaning servers such as windows, linux, hosting environments, etc.
- Networking
- Analytics
- + more services
- Key Characteristics
- Scaling:- is adding or removing of resources
- Vertical scaling
- Horizontal scaling
- Elasticity:- Ability of the system to scale dynamically.
- Agility:- Ability to react quickly. Ability to allocate or deallocate(scale) resources quickly
- When you request the resources – you will get in sec/min/hour
- On Premise:- takes days/weeks/months
- Fault Tolerance:- Ability to remain up and running during component or services failures.
- Disaster is a serious disruption of services caused by natural or human-induced causes. example – floods , earthquakes…
- Disaster recovery :- Ability to recover from an event that has taken down the service.
- Maintain a replica of the servers ..through dns the request will be routed to the backup server
- Availibility :- Availibility is a measure of system uptime for users/services.
- Availability = uptime/(uptime + downtime)
- High Availibility :- is the ability to keep the services running for extended periods of time with very little downtime.
- Scaling:- is adding or removing of resources
Principle of economies of scale
- Cost/unit(service) lowers as the size of the company grows
- companies can save/earn more which in return allows for reduction in cost of their services to their customers. This is so called ‘price per unit’. Larger the scale – more benefits can be passed to the customer….