Coder Social home page Coder Social logo

cloud-faizal's Introduction

image Cloud Computing

Cloud computing is a technology that uses remote servers on the internet for storing and accessing data over the internet instead of your computer's hard drive.

The data can be anything such as files, images, documents, audio, video, and more.

Who is using cloud computing?

Organizations of every type, size, and industry are using the cloud for a wide variety of use cases!

Some examples below,

  • Healthcare companies are using the cloud to develop more personalized treatments for patients.
  • Financial services companies are using the cloud to power real-time fraud detection and prevention.
  • Video game makers are using the cloud to deliver online games to millions of players around the world.

Benefits of cloud computing

Agility / Speed

The cloud gives you easy access to a broad range of technologies so that you can innovate faster and build nearly anything that you can imagine. You can quickly spin up resources as you need them–from infrastructure services, such as compute, storage, and databases, to Internet of Things, machine learning, data lakes and analytics, and much more. This gives you the freedom to experiment, test new ideas to differentiate customer experiences, and transform your business. Most cloud computing services are provided self service and on demand, so even vast amounts of computing resources can be provisioned in minutes, typically with just a few mouse clicks, giving businesses freedom to experiment, test new ideas to differentiate customer experiences, and transform themselves.

Scalability

Only provision the ammount of resources your need.

Elasticity

With cloud computing, you don’t have to over-provision resources up front to handle peak levels of business activity in the future. Instead, you provision the amount of resources that you actually need. You can scale these resources up or down to instantly grow and shrink capacity as your business needs change.

Cost savings

Cloud computing eliminates expense of buying hardware/software and setting up and running on-site datacenters, electricity for power and cooling, the IT experts for managing the infrastructure.

Deploy globally in minutes

With the cloud, you can expand to new geographic regions and deploy globally in minutes. For example, AWS has infrastructure all over the world, so you can deploy your application in multiple physical locations with just a few clicks. Putting applications in closer proximity to end users reduces latency and improves their experience.

Performance

The biggest cloud computing services run on a worldwide network of secure datacenters, which are regularly upgraded to the latest generation of fast and efficient computing hardware. This offers several benefits over a single corporate datacenter, including reduced network latency for applications and greater economies of scale.

High availability and Fault tolerance

Cloud computing makes data backup, disaster recovery and business continuity easier and less expensive because data can be mirrored at multiple redundant sites on the cloud provider’s network.

Security

Many cloud providers offer a broad set of policies, technologies and controls that strengthen your security posture overall, helping protect your data, apps and infrastructure from potential threats.

Disadvantages of cloud

  • Needs Internet connectivity always
  • Cannot change the vendors easily
  • Limitted control
  • We would storing our sensitve data in cloud.

Characteristics of Cloud

On-demand self-services:

The Cloud computing services does not require any human administrators, user themselves are able to provision, monitor and manage computing resources as needed.

Broad network access:

The Computing services are generally provided over standard networks and heterogeneous devices.

Rapid elasticity:

The Computing services should have IT resources that are able to scale out and in quickly and on as needed basis. Whenever the user require services it is provided to him and it is scale out as soon as its requirement gets over.

Resource pooling:

The IT resource (e.g., networks, servers, storage, applications, and services) present are shared across multiple applications and occupant in an uncommitted manner. Multiple clients are provided service from a same physical resource.

Measured service:

The resource utilization is tracked for each application and occupant, it will provide both the user and the resource provider with an account of what has been used. This is done for various reasons like monitoring billing and effective use of resource.

Types of Cloud Computing Models

Not all clouds are the same and not one type of cloud computing is right for everyone. Several different models, types and services have evolved to help offer the right solution for your needs. There are three different ways to deploy cloud services:

Cloud

A cloud-based application is fully deployed in the cloud and all parts of the application run in the cloud. Applications in the cloud have either been created in the cloud or have been migrated from an existing infrastructure to take advantage of the benefits of cloud computing.

On-premises

Deploying resources on-premises, using virtualization and resource management tools, is sometimes called “private cloud”. A private cloud can be physically located on the company’s on-site datacenter. On-premises deployment does not provide many of the benefits of cloud computing but is sometimes sought for its ability to provide dedicated resources.

Hybrid cloud

Hybrid clouds combine public and private clouds, bound together by technology that allows data and applications to be shared between them. By allowing data and applications to move between private and public clouds. A hybrid cloud gives your business greater flexibility, more deployment options and helps optimise your existing infrastructure, security and compliance. Learn more about the hybrid cloud.

Virtualization

Users can run multiple operating systems such as Windows, Linux, on a single physical machine at the same time. Such operating systems are known as guest OS. Virtualization deploys software that makes an abstraction layer across computer hardware, letting the hardware components such as processors, memory, storage etc of a particular computer to be segmented into several virtual elements (also known as virtual machines).

Characteristics of Virtualization

Resource Distribution:

Either be a single computer or a network of connected servers, virtualization allows users to make a unique computer environment from one host machine that lets users to restrict the participants as active users, scale down power consumption and easy control.

Isolation:

Virtualization software involves self-contained virtual machines, these VMs give guest users (not an individual but a number of instances as applications, operating systems, and devices) an isolated online, virtual environment. This online environment not only defends sensitive knowledge but also allows guest users to remain-connected.

Availability:

Virtualization software provides various number of features like increasing uptime, availability, fault tolerance, and many more.

Aggregation:

Since virtualization allows several devices to split resources from a single machine, so it can be deployed to join multiple devices into a single potent host. Aggregation also demands for cluster management software in order to connect a homogeneous group of computers or servers collectively for making a unified resource center.

Economical:

This is the most prime reason to choose virtualization rapidly as with this technique companies can manage additional expenditure on physical devices and servers.

Virtualization in Cloud

Virtualization allows cloud providers to deliver a virtual ecosystem of storage devices and the server OS.. As a simple process, it enables cloud users to purchase only necessary computing resources when they actually need it, and to sustain those resources cost-effectively when the workload expands. Virtualization enables users to use various machines that share one particular physical instance of any resource. This allows the cloud to be more efficient, economic and scalable.

Types of Virtualization in Cloud Computing

Here are six methodologies to look at when talking about virtualization techniques in cloud computing:

Network Virtualization

Network virtualization in cloud computing is a method of combining the available resources in a network by splitting up the available bandwidth into different channels, each being separate and distinguished. The idea is that the technology disguises the true complexity of the network by separating it into parts that are easy to manage, much like your segmented hard drive makes it easier for you to manage files.

Storage Virtualizing

Using this technique gives the user an ability to pool the hardware storage space from several interconnected storage devices into a simulated single storage device that is managed from one single command console. Storage manipulation in the cloud is mostly used for backup, archiving, and recovering of data by hiding the real and physical complex storage architecture.

Server Virtualization

This technique is the masking of server resources. It simulates physical servers by changing their identity, numbers, processors and operating systems. This spares the user from continuously managing complex server resources. It also makes a lot of resources available for sharing and utilizing, while maintaining the capacity to expand them when needed.

Data Virtualization

This is the kind of virtualization in which the data is collected from various sources and managed that at a single place without knowing more about the technical information. Data is collected, stored & formatted then arrangedlogically.

Desktop Virtualizing

As compared to other types of virtualization in cloud computing, this model enables you to emulate a workstation load, rather than a server. This allows the user to access the desktop remotely. Since the workstation is essentially running in a data center server, access to it can be both more secure and portable.

Application Virtualization:

Application virtualization helps a user to have remote access of an application from a server. The server stores all personal information and other characteristics of the application but can still run on a local workstation through the internet. Example of this would be a user who needs to run two different versions of the same software. Technologies that use application virtualization are hosted applications and packaged applications.

What is a hypervisor?

A hypervisor, also known as a virtual machine monitor or VMM, is software that creates and runs virtual machines (VMs). A hypervisor allows one host computer to support multiple guest VMs by virtually sharing its resources, such as memory and processing.

Benefits of hypervisors

Speed:

Hypervisors allow virtual machines to be created instantly, unlike bare-metal servers. This makes it easier to provision resources as needed for dynamic workloads.

Efficiency:

It is more cost- and energy-efficient to run several virtual machines on one physical machine than to run multiple underutilized physical machines for the same task.

Flexibility:

Bare-metal hypervisors allow operating systems and their associated applications to run on a variety of hardware types because the hypervisor separates the OS from the underlying hardware.

Portability:

The virtual machines that the hypervisor runs are independent from the physical machine, they are portable. IT teams can shift workloads and allocate networking, memory, storage and processing resources across multiple servers as needed, moving from machine to machine or platform to platform. When an application needs more processing power, the virtualization software allows it to seamlessly access additional machines.

Types of Cloud Computing services

Infrastructure as a Service (IaaS)

• Provide building blocks for cloud IT • Provides networking, computers, data storage space • Highest level of flexibility • Easy parallel with traditional on-premises IT

Platform as a Service (PaaS)

• Removes the need for your organization to manage the underlying infrastructure • Focus on the deployment and management of your applications

Software as a Service (SaaS)

• Completed product that is run and managed by the service provider

Scalability

Scalability means that an application / system can handle greater loads by adapting.

There are two kinds of scalability:

  • Vertical Scalability - Increase the size or performance of the hardware.
  • Horizontal Scalability - Increasing the number of servers.

Cloud Cost Models

Here are several common cost models used in the cloud, which you can combine depending on your needs.

Pay-As-You-Go

In this model, cloud services are billed per actual usage. Cloud services may bill for utilization of computing power, storage, networking, or other resources. The advantage is that you only pay for actual usage, and can scale down resources when needed. The downside is that as you add more resources to your cloud deployment, ongoing costs can quickly skyrocket.

Prepaid/Fixed Subscriptions

In a subscription-based model, cloud customers pay for services upfront. Subscription prices deliver a predetermined package of services for a specified time. The longer the period, the lower the price.

Subscription pricing is common for cloud services that combine multiple hardware and software elements, like platform as a service (PaaS) and software as a service (SaaS).

Reserved Instances

Reserved instances allow companies to commit to cloud resources for a long period of time, typically 1 or 3 years. The longer the discount, and the more the company is prepared to pre-pay at the beginning of the period, the greater the discount. A three-year term is usually the most cost effective. Cloud providers typically offer discounts of 50-75% compared to pay-as-you-go rates for reserved instances with the same capabilities.

Reserved instances are suitable for steady state loads and long running systems.

Savings Plan

Similar to reserved instances, Savings Plans are a flexible pricing model that allows organizations to enjoy lower than on-demand pricing, in exchange for a one-year or three-year specific usage commitment.

Savings plan offer three payment methods:

  • No upfront - does not require an upfront payment, bills customers according to actual usage each month. This grants the minimal savings plan discount.
  • Partial upfront payment - with this option, more than half of your contract is prepaid and the rest is billed monthly, which grants an additional discount.
  • Full upfront payment - the full commitment is paid upfront, which grants the deepest discount.

Spot Instances

Spot instances are usually the lowest-cost computing option, offering discounts of up to 90% compared to pay-as-you-go rates. Spot instances are used by cloud providers to sell off spare capacity. The discount comes with a catch—spot instances can be interrupted at very short notice.

cloud-faizal's People

Contributors

themohamedfaizal avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.