FCC unit 5
FCC unit 5
1. Hypervisor :
Hypervisor is a firmware or a low-level program which is a key to enable virtualization. It is used to divide and allocate
cloud resources between several customers. As it monitors and manages cloud services/resources that’s why hypervisor
is called as VMM (Virtual Machine Monitor) or (Virtual Machine Manager).
2. Management Software :
Management software helps in maintaining and configuring the infrastructure. Cloud management software monitors
and optimizes resources, data, applications and services.
3. Deployment Software :
Deployment software helps in deploying and integrating the application on the cloud. So, typically it helps in building
a virtual computing environment.
4. Network :
It is one of the key components of cloud infrastructure which is responsible for connecting cloud services over the
internet. For the transmission of data and resources externally and internally network is must require.
5. Server :
Server which represents the computing portion of the cloud infrastructure is responsible for managing and delivering
cloud services for various services and partners, maintaining security etc.
6. Storage :
Storage represents the storage facility which is provided to different organizations for storing and managing data. It
provides a facility of extracting another resource if one of the resources fails as it keeps many copies of storage.
Along with this, virtualization is also considered as one of important component of cloud infrastructure. Because it
abstracts the available data storage and computing power away from the actual hardware and the users interact with their
cloud infrastructure through GUI (Graphical User Interface).
Infrastructural Constraints
Fundamental constraints that cloud infrastructure should implement are shown in the following diagram:
Transparency: Virtualization is the key to share resources in cloud environment. But it is not possible to satisfy the
demand with single resource or server. Therefore, there must be transparency in resources, load balancing and
application, so that we can scale them on demand.
Scalability: Scaling up an application delivery solution is not that easy as scaling up an application because it involves
configuration overhead or even re-architecting the network. So, application delivery solution is need to be scalable which
will require the virtual infrastructure such that resource can be provisioned and de-provisioned easily.
Intelligent Monitoring: To achieve transparency and scalability, application solution delivery will need to be capable
of intelligent monitoring.
Security: The mega data centre in the cloud should be securely architected. Also the control node, an entry point in
mega data centre, also needs to be secure.
Uses of AWS
o A small manufacturing organization uses their expertise to expand their business by
leaving their IT management to the AWS.
o A large enterprise spread across the globe can utilize the AWS to deliver the training to
the distributed workforce.
o An architecture consulting company can use AWS to get the high-compute rendering of
construction prototype.
o A media company can use the AWS to provide different types of content such as ebox
or audio files to the worldwide files.
Pay-As-You-Go
Based on the concept of Pay-As-You-Go, AWS provides the services to the customers.
AWS provides services to customers when required without any prior commitment or upfront
investment. Pay-As-You-Go enables the customers to procure services from AWS.
o Computing
o Programming models
o Database storage
o Networking
Features of AWS
1) Flexibility
o The difference between AWS and traditional IT models is flexibility.
o The traditional models used to deliver IT solutions that require large investments in a
new architecture, programming languages, and operating system. Although these
investments are valuable, it takes time to adopt new technologies and can also slow
down your business.
o The flexibility of AWS allows us to choose which programming models, languages, and
operating systems are better suited for their project, so we do not have to learn new skills
to adopt new technologies.
o Flexibility means that migrating legacy applications to the cloud is easy, and cost-
effective. Instead of re-writing the applications to adopt new technologies, you just need
to move the applications to the cloud and tap into advanced computing capabilities.
o Building applications in aws are like building applications using existing hardware
resources.
o The larger organizations run in a hybrid mode, i.e., some pieces of the application run
in their data center, and other portions of the application run in the cloud.
o The flexibility of aws is a great asset for organizations to deliver the product with
updated technology in time, and overall enhancing the productivity.
2) Cost-effective
o Cost is one of the most important factors that need to be considered in delivering IT
solutions.
o For example, developing and deploying an application can incur a low cost, but after
successful deployment, there is a need for hardware and bandwidth. Owing our own
infrastructure can incur considerable costs, such as power, cooling, real estate, and staff.
o The cloud provides on-demand IT infrastructure that lets you consume the resources
what you actually need. In aws, you are not limited to a set amount of resources such as
storage, bandwidth or computing resources as it is very difficult to predict the
requirements of every resource. Therefore, we can say that the cloud provides flexibility
by maintaining the right balance of resources.
o AWS provides no upfront investment, long-term commitment, or minimum spend.
o You can scale up or scale down as the demand for resources increases or decreases
respectively.
o An aws allows you to access the resources more instantly. It has the ability to respond
the changes more quickly, and no matter whether the changes are large or small, means
that we can take new opportunities to meet the business challenges that could increase
the revenue, and reduce the cost.
3) Scalable and elastic
o In a traditional IT organization, scalability and elasticity were calculated with
investment and infrastructure while in a cloud, scalability and elasticity provide savings
and improved ROI (Return On Investment).
o Scalability in aws has the ability to scale the computing resources up or down when
demand increases or decreases respectively.
o Elasticity in aws is defined as the distribution of incoming application traffic across
multiple targets such as Amazon EC2 instances, containers, IP addresses, and Lambda
functions.
o Elasticity load balancing and scalability automatically scale your AWS computing
resources to meet unexpected demand and scale down automatically when demand
decreases.
o The aws cloud is also useful for implementing short-term jobs, mission-critical jobs, and
the jobs repeated at the regular intervals.
4) Secure
o AWS provides a scalable cloud-computing platform that provides customers with end-
to-end security and end-to-end privacy.
o AWS incorporates the security into its services, and documents to describe how to use
the security features.
o AWS maintains confidentiality, integrity, and availability of your data which is the
utmost importance of the aws.
Physical security: Amazon has many years of experience in designing, constructing, and
operating large-scale data centers. An aws infrastructure is incorporated in AWS controlled
data centers throughout the world. The data centers are physically secured to prevent
unauthorized access.
Secure services: Each service provided by the AWS cloud is secure.
Data privacy: A personal and business data can be encrypted to maintain data privacy.
5) Experienced
o The AWS cloud provides levels of scale, security, reliability, and privacy.
o AWS has built an infrastructure based on lessons learned from over sixteen years of
experience managing the multi-billion-dollar Amazon.com business.
o Amazon continues to benefit its customers by enhancing their infrastructure capabilities.
o Nowadays, Amazon has become a global web platform that serves millions of
customers, and AWS has been evolved since 2006, serving hundreds of thousands of
customers worldwide.
o Availability zones are connected through redundant and isolated metro fibers.
Edge Locations
o Edge locations are the endpoints for AWS used for caching content.
o Edge locations consist of CloudFront, Amazon's Content Delivery Network (CDN).
o Edge locations are more than regions. Currently, there are over 150 edge locations.
o Edge location is not a region but a small location that AWS have. It is used for caching
the content.
o Edge locations are mainly located in most of the major cities to distribute the content to
end users with reduced latency.
o For example, some user accesses your website from Singapore; then this request would
be redirected to the edge location closest to Singapore where cached data can be read.
Regional Edge Cache
o AWS announced a new type of edge location in November 2016, known as a Regional
Edge Cache.
o Regional Edge cache lies between CloudFront Origin servers and the edge locations.
o A regional edge cache has a large cache than an individual edge location.
o Data is removed from the cache at the edge location while the data is retained at the
Regional Edge Caches.
o When the user requests the data, then data is no longer available at the edge location.
Therefore, the edge location retrieves the cached data from the Regional edge cache
instead of the Origin servers that have high latency.
Applications Of AWS
The AWS services are using by both startup and MNC companies as per their usecase. The
startup companies are using overcome hardware infrasture cost and applications deployments
effectively with cost and performance. Whereas large scale companies are using AWS cloud
services for the management of their Infrastructure to completely focus on the development of
products widely. The following the Real-world industrial use-cases of AWS services:
• Netflix: The Large streaming gaint using AWS for the storage and scaing of the
applications for ensuring seamless content delivery with low latency without
interruptions to millions of users globally.
• Airbnb: By utilizing AWS, Airbnb manages the various workloads and provides
insurable and expandable infrastructure for its virtual marketplace and lodging offerings.
• NASA’s Jet Propulsion Laboratory: It takes the help of AWS services to handle and
analyze large-scale volumes of data related to vital scientific research missions and
space exploration.
• Capital One: A financial Company that is utilizing AWS for its security and compliance
while delivering innovative banking services to its customers.
Cloud Computing
• Compute Engine: It is used to provision the virtual machine machines to deploy the
application with the need of your required ram, rom and security groups.
• Google Kubernetes Engine(GKE): Google cloud provide Kubernetes(GKE) as an
service where you can deploy the application and rest of the things like autoscaling and
load balancing will be taken care by the google cloud.
• App Engine: A scalable runtime environment, Google App Engine is mostly used to
run Web applications. These dynamic scales as demand change over time because of
Google’s vast computing infrastructure. Because it offers a secure execution
environment in addition to a number of services, App Engine makes it easier to develop
scalable and high-performance Web apps.
Storage
• Cloud Storage: You can store the data which is required to be highly available and
which is in large amount.
• Persistent Disk: Persistent disk is an storage disk which can be attached to the virtual
machine and can be reused for the another virtual machine.
• Cloud SQL: Cloud SQL is an fully managed service by the google cloud platform and
it offers services like MySQL, PostgreSQL and SQL Server.
Networking
• Virtual Private Cloud (VPC): You can deploy your application in the private network
which can be achieved by the google cloud.
• Cloud Load Balancing: This is most important service in the google cloud which is
used to distribute the cloud across the multiple replicas of the applications.
• Cloud CDN: This is the service which will cache the content and delivers to the end
users with the help of edge locations.
Data analytics
• Big query: All organizations look for unlocking business insights from their data. But
it can be hard to scalable ingest, store, and analyse that data as it rapidly grows. Google’s
enterprise data warehouse called Big Query, was designed to make large-scale data
analysis accessible to everyone.
• Dataflow: It is the analysis of flow of data in control flow graph, i.e., the analysis that
determines the information regarding the definition and use of data in program. With the
help of this analysis, optimization can be done.
• Pub/Sub: Pub/sub Consider a scenario of synchronous message passing. You have two
components in your system that communicate with each other. Let’s call the sender and
receiver. The receiver asks for a service from the sender and the sender serves the request
and waits for an acknowledgment from the receiver. There is another receiver that
requests a service from the sender. The sender is blocked since it hasn’t yet received any
acknowledgment from the first receiver. The sender isn’t able to serve the second
receiver which can create problems. To solve this drawback, the Pub-Sub model was
introduced.
Machine learning
• Vertex AI Platform: As we know Artificial Intelligence (AI) has undergone
advancements throughout the years leading to a transformation of industries and
reshaping how businesses operate. The emergence of cloud-based AI platforms has
further accelerated this revolution enabling organizations to leverage the potential of AI.
• AI Platform Training: You can train the AI model with the help of AI Platform Training
in google cloud.
• AI Platform Prediction: You can make the predictions by using the your machine
learning models.
Productivity and collaboration
• Google Workspace: Most of us are familiar with various Google Workspace
products(also called G Suite) like Calendar, Drive, and Gmail, etc.
• Cloud Identity and Access Management (IAM): Identity Access Management is used
by the root user (administrator) of the organization. The users represent one person
within the organization, and the users can be grouped in that all the users will have the
same privileges to the services.
Compute Services
GCP offers a scalable range of computing services, such as:
o Google App Engine: It is a cloud computing platform that follows the concept of
Platform-as-a-Service to deploy PHP, Java and other software. It is also used to develop
and deploy web-based software in Google-managed data centers. The most significant
advantage of Google App Engine is its automatic scaling capability. This means that the
App Engine automatically allocates more resources for the application when there is an
increase in requests.
o Compute Engine: It is a cloud computing platform that follows the concept of
Infrastructure-as-a-Service to run Windows and Linux based virtual machines. It is an
essential component of GCP. It is designed on the same infrastructure used by Google
search engine, YouTube and other Google services.
o Kubernetes Engines: This computing service is responsible for offering a platform for
automatic deployment, scaling, and other operations of application containers across
clusters of hosts. The engine supports several container tools like a docker, etc.
Networking
GCP includes the following network services:
o VPC: VPC stands for Virtual Private Network. The primary function of VPC is to offer
a private network with routing, IP allocation, and network firewall policies. This will
help to create a secure environment for the application deployments.
o Cloud Load Balancing: As its name states, Cloud balancing is used to distribute
workload across different computing resources to balance the entire system
performance. This also results in cost-reduction. The process also helps in minimizing
the availability and maximizing the capability of the resources.
o Content Delivery Network: CDN is a geographically distributed network of proxy
servers and their data centres. The primary aim of using CDN is to provide maximum
performance to the users. Additionally, it also helps deliver high availability of resources
by equally distributing the related services to the end-users.
Big Data
GCP provides a variety of services related to big data; they are:
o Big Query: It is a fully managed data analysis service by Google. The primary aim of
Google Big Query service is to helps businesses to analyse Big Data. It offers a highly
scalable data management option. This means Big Query allows users to perform ad-
hoc queries and share data insights across the web.
o Google Cloud Datastore: Google Cloud Datastore is a kind of datastore service that is
fully managed, schema-less, and non-relational. This service enables businesses to
perform automatic transactions and a rich set of queries. The main advantage of Google
Cloud Datastore is the capability of automatic scaling. This means that the service can
itself scale up and down, depending on the requirement of resources.
o Google Cloud Datapost: It is a very fast and easy to use big data service offered by
Google. It mainly helps in managing Hadoop and Spark services for distributed data
processing. The service allows users to create Hadoop or Spark clusters sized according
to the overall workload and can be accessed whenever users want them.
Security and Identity Management
GCP includes the following services related to Security and Identity management:
o Cloud Data Loss Prevention API: It is mainly designed to manage sensitive data. It
helps users manage sensitive data elements like credit card details, debit card details,
passport numbers, etc. It offers fast and scalable classification for sensitive data.
o Cloud IAM: It stands for Cloud Identity and Access Management. It is a framework
that contains rules and policies and validates the authentication of the users for accessing
the technology resources. That is why it is also known as Identity Management (IdM).
Management Tools
GCP includes the following services related to management tools:
o Google Stackdriver: Google Stackdriver service is primarily responsible for displaying
the overall performance and diagnostics information. This may include insights of data
monitoring, tracing, logging, error reporting, etc. The service also prompts an alert
notification to the public cloud users.
o Google Cloud Console App: It is a native mobile application powered by Google. The
primary aim of this service is to enable users to manage the core features of Google
Cloud services directly from their mobile devices anytime, anywhere. The primary
functions of this service are alerting, monitoring, and performing critical actions on
resources.
Cloud AI
When it comes to Cloud AI, GCP offers these services:
o Cloud Machine Learning Engine: It is another fully managed service that allows users
to create Machine Learning models. The service is mainly used for those ML models,
which are based on mainstream frameworks.
o Cloud AutoML: It is the type of service that is based on Machine Learning. It helps
users to enter their data sets and gain access to quality trained pre-designed ML models.
The service works by following Google's transfer learning and Neural Architecture
Search method.
IoT (Internet of Things)
GCP contains the following IoT services:
Cloud IoT Core: It is one of the fully managed care services. It allows users to connect,
control, and ingest data from various devices that are securely connected to the Internet. This
allows other Google cloud services to analyse, process, collect and visualize IoT data in real-
time.
Cloud IoT Edge: The Edge computing service brings memory and other computing-power
resources near to the location where it is required.
What is Azure?
Azure is Microsoft’s cloud platform, just like Google has its Google Cloud and Amazon
has its Amazon Web Service or AWS.000. Generally, it is a platform through which we can
use Microsoft’s resources. For example, to set up a huge server, we will require huge
investment, effort, physical space, and so on. In such situations, Microsoft Azure comes to our
rescue. It will provide us with virtual machines, fast processing of data, analytical and
monitoring tools, and so on to make our work simpler. The pricing of Azure is also simpler
and more cost-effective. Popularly termed as “Pay As You Go”, which means how much you
use, pay only for that.
What are the various Azure Services and How does Azure Work?
Following is some of the services Microsoft Azure offers:
• Compute: Includes Virtual Machines, Virtual Machine Scale Sets, Functions for
serverless computing, Batch for containerized batch workloads, Service Fabric for
microservices and container orchestration, and Cloud Services for building cloud-based
apps and APIs.
• Networking: With Azure, you can use a variety of networking tools, like the Virtual
Network, which can connect to on-premise data centres; Load Balancer; Application
Gateway; VPN Gateway; Azure DNS for domain hosting, Content Delivery Network,
Traffic Manager, ExpressRoute dedicated private network fibre connections; and
Network Watcher monitoring and diagnostics
• Storage: Includes Blob, Queue, File, and Disk Storage, as well as a Data Lake Store,
Backup, and Site Recovery, among others.
• Web + Mobile: Creating Web + Mobile applications is very easy as it includes several
services for building and deploying applications.
• Containers: Azure has a property that includes Container Service, which
supports Kubernetes, DC/OS or Docker Swarm, and Container Registry, as well as tools
for microservices.
• Databases: Azure also included several SQL-based databases and related tools.
• Data + Analytics: Azure has some big data tools like HDInsight for Hadoop Spark, R
Server, HBase, and Storm clusters
• AI + Cognitive Services: With Azure developing applications with artificial
intelligence capabilities, like the Computer Vision API, Face API, Bing Web Search,
Video Indexer, and Language Understanding Intelligent.
• Internet of Things: Includes IoT Hub and IoT Edge services that can be combined with
a variety of machine learning, analytics, and communications services.
• Security + Identity: Includes Security Centre, Azure Active Directory, Key
Vault, and Multi-Factor Authentication Services.
• Developer Tools: Includes cloud development services like Visual Studio Team
Services, Azure DevTest Labs, HockeyApp mobile app deployment and monitoring,
Xamarin cross-platform mobile development, and more.
Microsoft Azure, a well-known cloud computing platform, provides users with the tools
to design, deploy and manage numerous applications and services. Various products include
machine learning, mobile application development, and Internet of Things (IoT) solutions,
making it venerable for almost all application or service types. The Azure platform can work
from PCs, laptops, smartphones, and tablets, and supports many programming languages,
including HTML5, JavaScript, PHP, Python, and C#.
Along with application hosting, Microsoft Azure is also a safe place to store information where
users can store files online and access them from anywhere. Commonly used to host
applications including email and social media, it can store any kind of data from documents to
images to videos.
Microsoft also operates many physical data centres globally. IT infrastructure, such as server
racks and network connectivity, is necessary for enterprises and organizations to run their IT
requirements. The key technique in this infrastructure is virtualization, which reduces excess
physical hardware by dynamically scaling resources required, depending on the demand. This
is key to cloud computing because it allows the software to run on any server within a data
centre.
Azure’s foundation is envisioned by SDN principles. Due to the demand from the users,
Microsoft has been continually enhancing Azure’s network by installing several new servers,
hardware virtualization technologies, and new applications. Continuous evolvement of such
services calls for a constant enhancement in the already deployed network hardware and
software, thereby affecting the configuration and performance of the overall system. This
implies that the management of such complex network topology is increasingly important for
effectual scaling and resource management.
After establishing the emphasis on technology and architecture, the application’s technical
design is a natural progression. Each application is self-standing, but the following resources
can help in the process of construction:
• Reference Architectures: All reference architectures are designed for growth and
changes which every vendor must have these days. You can easily find one reference
architecture that accommodates the number of people in your team and the requirements
that your project entails. One if the remarkable goads of these architectures is that they
enable the user to start building from where they are comfortable, given the type of client
they are dealing with. Each reference architecture also includes implementation details
that are necessary for leveraging the architecture. Recommended architectures undergo
the sponsorship from the vendors in order to actualize their usage.
• Design Principles: It is important to appreciate the principles of design that are inherent
in the various perspectives. For example, in the context of the high level design
processes, there are principles to policy development that may be valuable, such as,
constraints based design principles. In contrast, alignment-based design principles may
be appropriate in low-level design processes. These principles should always be used as
a source of information in the course of carrying out the design phase of the system.
• Design Patterns: Cloud design patterns represent solutions that cloud providers use to
enhance the reliability and scalability of their services. These patterns consist of best
practices, guidelines, and rules that encapsulate effective strategies for cloud system
design. By leveraging these patterns, you can create a more robust and efficient cloud
architecture.
Features of Azure
Azure offers a comprehensive array of features designed to enhance data protection and
application management:
• Data Protection: Azure ensures the security of your data through various methods,
including replication, snapshots, and encryption. These options allow for data protection
across multiple regions globally, providing an added layer of security against natural
disasters, cyberattacks, or hardware failures. By storing data in various data centers
worldwide, Azure guarantees that your information remains safe, even if one location
experiences an incident.
• Azure Site Recovery: This feature gives you full control over data replication
processes, allowing you to define the level of detail and metrics to monitor. You can
customize the replication schedule based on your business requirements, ensuring your
data remains secure and accessible.
• Development Flexibility: Azure supports a wide range of capabilities for building,
deploying, and managing applications that can run on any device at any time. Users can
choose their preferred programming languages and frameworks, enabling horizontal
scaling by adding servers or distributing the load across multiple servers.
• Open-Source Tools: Azure provides numerous tools and services rooted in open-source
technology, facilitating monitoring, logging, and troubleshooting. These resources
enable you to keep track of your application’s health and address any issues that may
arise.
• App Services and Mobile Management: Azure offers hosting through App Services,
allowing you to quickly deploy updates and new features to your applications without
downtime. It also supports mobile device management (MDM) for apps tailored to
mobile users.
• Active Directory Integration: Azure Active Directory (AAD) enhances security by
connecting user profiles with applications, enabling seamless sign-in experiences.
Through Active Directory synchronization, user accounts, groups, and permissions are
automatically managed between on-premises Active Directory and Azure Active
Directory, streamlining user management and policy enforcement within your
organization.
What is Salesforce?
o Salesforce is a SaaS or Software as a Service, which means there is no need to install
the software or server to work on. Users can simply sign-up in Salesforce.com and can
start running the business instantly.
o It was founded by Marc Benioff, Parker Harris, Dave Moellenhoff, and Frank
Dominguez in 1999.
o Salesforce was started as a CRM software, but today it provides various products and
software solutions to users and developers.
o Since Salesforce is cloud-based software, hence it does not require any IT professional
to set up anything.
o It provides one of the best ways to connect with customers, business partners, and
clients over the single integrated environment. It allows the businesses to identify the
customer's requirements, address the problems easily, and provide the same solution in
the minimum timeframe.
Before going in deep with this tutorial, let's understand two basic concepts of
Salesforce, CRM and Cloud Computing.
CRM stands for Customer Relationship Management, a software to manage all the
customer and company's interactions. It contains and manages all the customer-related
information such as Customer Name, Address, Phone Number, Email address, and other
business-related information. The software keeps all the interactions done with customers,
complaints registered by the customer, resolutions provided by the executive, and other
customer activities with the particular business or product.
It also allows us to track and manage the sales, marketing, and prospects given to customers.
Cloud-Computing
Cloud computing is a technology to store, manage, process, and access the internet instead
of a local server or computer hard drives.
With the help of cloud computing, an organization can save lots of cost to local storage of data,
maintenance of data, etc. The information over the Cloud can be accessed much efficiently and
from anywhere, with the help of the internet.
Using cloud computing instead of traditional storage helps users with lots of benefits such
as speed, cost-effectiveness, security, global access, etc.
o The first benefit of choosing Salesforce is that we do not need to install any software to
build an application or run our business activities. We can focus on building the apps
instead of installing, setup, repairing, etc.
o Since it is the cloud-based CRM platform, any user can access it from anywhere using
the internet.
o Any new user or business start-up can choose Salesforce for building apps or run
business, as it is so affordable with lots of capabilities.
o One can easily integrate the Salesforce with any third-party applications, such as Gmail,
which is much easier than other CRM Software.
o It is the world's number 1 CRM software, as it is easy to use, fast to deploy any app, and
provide efficient outputs as per the requirements.
o The development cost is also very less.
It offers the lowest price to AWS pricing is generally Like AWS, Azure pricing
the customers to beat other keen to have inscrutable. structure is also difficult
cloud providers. The overall structure of to understand unless you
granular pricing is a bit have considerable
complex. experience.
It uses Cloud Test labs for It uses a device farm for It uses DevTest labs for
App Testing purposes. App Testing purposes. App Testing purposes.