UNIT – 2
CLOUDAPPLICATION
FUNDAMENTALS
ABIRAMI M
CORPORATE TRAINER IBM
2.
INTRODUCTION TO CLOUDCOMPUTING
⮚ Before cloud computing, companies had to store all their data and software on their own hard drives and servers. The bigger the
company, the more storage they needed. This way of treating data is not scalable at speed. For example, if word started spreading
about your business and you suddenly had a lot of online orders, your servers would probably crash. Good business meant hard work
for the IT department.
⮚ It's not just businesses that benefit from cloud computing. The cloud has transformed our lives as individuals as well. Many of us use
cloud services every day. When we update our status on social media, binge a new streaming series, or check our bank accounts we're
most likely using applications that are hosted by cloud services. These apps are accessed through an internet connection rather than
installed on our hard drives or devices.
⮚ Today, cloud technology means that companies can scale and adapt at speed and scale, accelerate innovation, drive business agility,
streamline operations, and reduce costs. Not only can this help propel companies through the current crisis, it can lead to increased,
sustainable growth. According to our Future Systems research, companies that are more strategic in their approach to technology are
doing better financially. They're achieving more than twice the average revenue growth of companies slow to implement and use their
tech. In fact, 95 percent of leaders have adopted sophisticated cloud services.
3.
Cloud Computing
Cloud Computingis the delivery of computing services such as servers, storage,
databases, networking, software, analytics, intelligence, and more, over the Cloud
(Internet).
Advantages of cloudcomputing
⮚ Cost: It reduces the huge capital costs of buying hardware and software.
⮚ Speed: Resources can be accessed in minutes, typically within a few clicks.
⮚ Scalability: We can increase or decrease the requirement of resources according to the business requirements.
⮚ Productivity: While using cloud computing, we put less operational effort. We do not need to apply patching,
as well as no need to maintain hardware and software. So, in this way, the IT team can be more productive and
focus on achieving business goals.
⮚ Reliability: Backup and recovery of data are less expensive and very fast for business continuity.
⮚ Security: Many cloud vendors offer a broad set of policies, technologies, and controls that strengthen our data
security.
Types of CloudComputing
⮚ Public Cloud: The cloud resources that are owned and operated by a third-party cloud
service provider are termed as public clouds. It delivers computing resources such as
servers, software, and storage over the internet
⮚ Private Cloud: The cloud computing resources that are exclusively used inside a single
business or organization are termed as a private cloud. A private cloud may physically be
located on the company’s on-site datacentre or hosted by a third-party service provider.
⮚ Hybrid Cloud: It is the combination of public and private clouds, which is bounded
together by technology that allows data applications to be shared between them. Hybrid
cloud provides flexibility and more deployment options to the business.
Types of CloudServices
⮚ Infrastructure as a Service (IaaS): In IaaS, we can rent IT infrastructures like servers and
virtual machines (VMs), storage, networks, operating systems from a cloud service vendor. We
can create VM running Windows or Linux and install anything we want on it. Using IaaS, we
don’t need to care about the hardware or virtualization software, but other than that, we do have
to manage everything else. Using IaaS, we get maximum flexibility, but still, we need to put
more effort into maintenance.
⮚ Platform as a Service (PaaS): This service provides an on-demand environment for developing,
testing, delivering, and managing software applications. The developer is responsible for the
application, and the PaaS vendor provides the ability to deploy and run it. Using PaaS, the
flexibility gets reduce, but the management of the environment is taken care of by the cloud
vendors.
11.
Types of CloudServices
⮚ Software as a Service (SaaS): It provides a centrally hosted and managed
software services to the end-users. It delivers software over the internet, on-
demand, and typically on a subscription basis. E.g., Microsoft One Drive,
Dropbox, WordPress, Office 365, and Amazon Kindle. SaaS is used to
minimize the operational cost to the maximum extent.
IBM CLOUD
IBM Cloudis a collection of cloud computing services from IBM that offers
infrastructure (IaaS), platform (PaaS), and software (SaaS) as a service. It
provides a hybrid and multi-cloud platform with AI, security, and compliance
features to support enterprise workloads, including modern applications and AI-
intensive tasks. Businesses use it to deploy IT resources, develop and run
applications, and manage data across public cloud, private, and on-premises
environments
14.
Core cloud servicemodels
IBM Cloud delivers its services through standard cloud computing models:
Infrastructure-as-a-Service (IaaS): Provides access to virtualized IT resources over the internet,
including compute power (bare-metal and virtual servers), storage, and networking.
Platform-as-a-Service (PaaS): Offers a platform and development environment that allows developers
to build, run, and manage applications. It is based on the open-source Cloud Foundry project.
Software-as-a-Service (SaaS): Delivers ready-to-use software applications hosted in the cloud, which
are accessed by users through a web browser or API.
15.
Core offerings
Hybrid cloud:
IBMCloud Satellite: Extends IBM Cloud services to on-premises and edge locations.
Red Hat OpenShift on IBM Cloud: Provides a managed container platform for consistent hybrid cloud
deployment.
AI and data:
watsonx: A portfolio of AI products to accelerate generative AI workflows.
IBM Watson: A suite of AI services for tasks like natural language processing, data analysis, and chatbots.
IBM Cloud Pak for Data: A modular platform for data analysis, organization, and management.
16.
Core offerings
Containers andcompute:
IBM Cloud Kubernetes Service: A managed Kubernetes service for deploying and scaling containerized applications.
Bare Metal Servers: Provides dedicated hardware for high-performance workloads.
Serverless computing: Offers IBM Cloud Code Engine for running applications without managing infrastructure.
Security and compliance:
Advanced security: Includes encryption with "keep your own key" (KYOK) technology, multi-factor authentication,
and robust security monitoring.
Built for regulated industries: Features like IBM Cloud for Financial Services offer preconfigured controls to meet
strict regulatory standards.
17.
Core offerings
Industry-specific solutions:
FinancialServices: Provides a built-in control framework to address compliance obligations.
Healthcare: Offers solutions for secure data sharing and HIPAA compliance.
Telecommunications: Provides solutions for managing telecom networks and edge computing.
Blockchain:
IBM Blockchain Platform: A managed SaaS offering for building and operating blockchain
networks using Hyperledger Fabric
18.
IBM Cloud Services
IBMCloud Compute:
Virtual Servers: Virtual machine instances that are scalable and flexible.
Bare Metal Servers: Physical servers that provide high performance and customization, with the
option to run custom configurations.
IBM Cloud Storage:
Offers a range of storage solutions, including Block Storage, Object Storage, and File Storage.
IBM Cloud Object Storage is highly scalable and is often used for large data sets, backups, and
archiving.
19.
IBM Cloud Services
IBMCloud Databases:
Managed databases for PostgreSQL, MySQL, Redis, MongoDB, and more. These databases are
fully managed, reducing the overhead of maintenance and scalability.
IBM Cloud Networking:
Includes solutions for Load Balancers, VPNs, Virtual Private Cloud (VPC), and Content Delivery
Networks (CDNs).
IBM Cloud Direct Link provides dedicated, private connections between on premises
environments and the IBM Cloud.
20.
IBM Cloud Services
IBM Cloud Kubernetes Service:
Managed Kubernetes platform for deploying, managing, and scaling containerized
applications.
IBM Cloud Functions:
Serverless computing service that allows you to run code without managing
infrastructure, ideal for event-driven architectures.
21.
Designing Cloud Infrastructue
Cloudinfrastructure comprises the building blocks that support cloud computing
services. These components include the hardware (e.g., servers, storage, network)
and software (e.g., APIs, cloud security features, AI-powered management tools)
resources needed to deliver applications and services over the internet.
22.
Cloud infrastructure components
Cloudtechnology infrastructure consists of hardware and software components that work together to deliver the
scalability, flexibility and accessibility required for cloud computing.
The following key hardware and software components comprise a cloud infrastructure environment:
1. Servers
2. Storage
3. Network
4. Software
23.
Steps to DesignCloud Infrastructure
1. Define Requirements
Start by understanding both business and technical goals:
Business Needs: Consider scalability, cost-efficiency, and compliance.
Technical Needs: Decide on architecture style (microservices vs monolithic),
performance benchmarks, and data processing types (real-time vs batch).
24.
Steps to DesignCloud Infrastructure
2. Choose the Cloud Provider and Services
Select a provider (e.g., AWS, Azure, Google Cloud, IBM Cloud) based on:
•Compute: VMs, containers, or serverless functions.
•Storage: Block, object, or file storage depending on data type.
•Networking: Design VPCs, subnets, and load balancers.
•IAM: Set up identity and access controls.
25.
Steps to DesignCloud Infrastructure
3. Design the Architecture
Lay out the infrastructure components:
Compute Layer: Use auto-scaling for dynamic workloads.
Load Balancing: Distribute traffic for high availability.
Storage & Database: Choose appropriate storage and database types (SQL, NoSQL).
Microservices & Containers: Use Kubernetes or serverless for modularity.
Security Layer: Implement IAM, encryption, firewalls, and VPNs.
26.
Steps to DesignCloud Infrastructure
4. Plan for High Availability & Disaster Recovery
Ensure resilience:
Use multiple availability zones.
Set up load balancing across regions.
Implement backup strategies and failover mechanisms.
Define RTO (Recovery Time Objective) and RPO (Recovery Point Objective).
27.
Steps to DesignCloud Infrastructure
5. Performance Optimization
Improve speed and responsiveness:
Auto-scaling to match demand.
CDNs to reduce latency.
Caching to reduce backend load (e.g., Redis, ElastiCache).
28.
Steps to DesignCloud Infrastructure
6. Monitoring and Logging
Track system health and activity:
Use tools like CloudWatch, Azure Monitor, or Google Cloud Logging.
Centralize logs for auditing and troubleshooting.
29.
Web browsers andpresentation layer
The web browser acts as the primary interface for the
presentation layer, which is responsible for displaying
information to the user and handling user interactions
through technologies like HTML, CSS, and JavaScript.
The presentation layer translates data into a user-
friendly format (the graphical user interface) for the user
and translates user input into data that the application
can understand and process.
30.
Web Browser's Rolein the Presentation Layer
User Interface: The browser is where the user sees and interacts with the web
page.
HTML for Content: HTML provides the structure and content of the web page.
CSS for Style: CSS controls the visual appearance and styling of the web page.
JavaScript for Interactivity: JavaScript makes the page dynamic, handling user
actions and providing interactive elements and visual feedback.
31.
Presentation Layer's Functionin Web Application
Architecture
Data Formatting: It takes data from other layers and formats it for display to the user.
User Input Processing: It captures user input and sends it to the business or data layers for
processing.
Communication: It facilitates communication between the browser (client-side) and the
backend application (server-side).
User Interaction: It provides a user-friendly interface and user experience, showing results
and allowing users to interact with the system.
32.
The presentation layerin the OSI model
The OSI model is a conceptual framework for how networked systems communicate. A web browser is an application
that uses the services of the presentation layer (Layer 6) to communicate with web servers.
Translation: Ensures that data sent from a server is translated into a format the web browser can understand. It also
translates the browser's data into a universal format for transmission.
Formatting: Defines the specific formats for data types, such as JPEG, GIF, or PNG for images and MPEG for video.
Encryption: Handles the encryption and decryption of data, like with the Transport Layer Security (TLS) protocol, to
secure information exchanged between the browser and a web server.
Compression: Manages the compression and decompression of data to maximize the speed and efficiency of network
communication.
33.
Web browsers andthe presentation layer: An
analogy
To illustrate the relationship between web browsers and the presentation layer, consider a restaurant experience:
The menu is like the presentation layer—it's the formatted interface that shows you what's available and how it
will be presented.
Your web browser is like the waiter, who brings the menu to you, takes your order, and delivers the prepared
food. The waiter (browser) works with the "kitchen" (application and data layers) to get the final product, but
you only interact with the waiter and the menu.
34.
Understanding Web browsersattributes and differences
The main differences between web browsers lie in their
core attributes, such as performance, privacy, feature
sets, and market dominance. While browsers like
Chrome and Edge are based on the same underlying
technology (the Chromium open-source project), they
are differentiated by their unique features and priorities.
35.
Understanding Web browsersattributes and differences
PERFORMANCE:
Speed: Browser speed is influenced by its JavaScript engine, rendering engine, and resource
management. Modern browsers like Google Chrome, Microsoft Edge, and Apple Safari offer
impressive speeds, but variations exist. Benchmarks show that Safari is a leader in rendering
and JavaScript speed on Apple hardware, with Edge and Chrome following close behind
36.
Understanding Web browsersattributes and differences
Resource consumption: Browsers have different memory (RAM) and central processing unit (CPU) usage.
Google Chrome is known for high resource consumption, especially when many tabs are open.
Mozilla Firefox is often more memory-efficient, making it a better choice for older computers or users
who keep many tabs open.
Microsoft Edge is designed to use less RAM than Chrome, partly due to features like Sleeping Tabs and
Efficiency Mode.
37.
Understanding Web browsersattributes and differences
Rendering engines: Different browsers use different rendering engines to interpret code
and display a webpage.
Blink: Used by Chrome, Edge, Brave, and Opera.
WebKit: Used by Safari.
Gecko: Used by Firefox
38.
Understanding Web browsersattributes and differences
Privacy
Data collection: All browsers collect some data, but the amount and purpose vary. Chrome is often criticized
for its extensive data collection practices.
Built-in features: Some browsers have stronger privacy features built-in.
Brave and Firefox are known for their privacy-first approach, offering default ad and tracker blocking.
Safari uses Intelligent Tracking Prevention to block cross-site tracking.
Opera has a built-in VPN feature for extra privacy.
39.
Understanding Web browsersattributes and differences
Private/Incognito Mode: While all major browsers offer a private browsing mode, it
only prevents your activity from being saved locally on your device. It does not hide
your activity from websites, internet service providers, or employers.
Anonymity: For true anonymity, browsers like Tor are used. Tor routes traffic through
a network of relays to mask a user's IP address, though this results in significantly
slower performance.
40.
Understanding Web browsersattributes and differences
Features and user experience
Extensions: All modern browsers support extensions, but the available libraries differ.
Chrome has the largest extension library due to its market share.
Firefox is also known for extensive customization options through a large library of add-
ons.
41.
Understanding Web browsersattributes and differences
Ecosystem integration: Browsers offer different levels of integration with their parent
company's ecosystem.
Safari seamlessly integrates with Apple products via iCloud sync and Handoff.
Edge offers deep integration with Windows and Microsoft services.
Chrome syncs user data across all Google services, including passwords and
bookmarks.
42.
Understanding Web browsersattributes and differences
Unique features: Some browsers offer unique features to attract users.
Edge provides productivity tools like "Collections" and vertical tabs.
Opera includes built-in messaging app shortcuts, a battery saver, and a free VPN.
Brave features an integrated cryptocurrency wallet and a rewards system that pays users for
viewing ads.
Arc uses a dashboard-like sidebar for a different user interface.
43.
Building blocks ofthe presentation layer
The presentation layer is the part of a software application responsible for displaying
information to the user and handling user input. Its primary building blocks are:
User interface (UI) components: These are the visual elements that a user interacts
with, such as text fields, buttons, and graphics. The goal is to provide a clean, intuitive,
and accessible interface. They are created using technologies like HTML and CSS for
web applications.
44.
Building blocks ofthe presentation layer
User process components: These components manage the flow and sequence of user
interactions. For a complex user interface, they coordinate and orchestrate how the UI elements
behave in response to user actions, helping to maintain separation between the visual elements
and the underlying application logic.
Presentation entities: These objects are used to manage the data required to display a
particular view. They are sometimes used in place of directly exposing business entities to the
presentation layer, which helps in decoupling the front-end from the back-end business logic.
45.
Building blocks ofthe presentation layer
Validation: This is the process of ensuring that user input is valid and secure. While
some validation occurs on the client-side for immediate feedback, all critical validation
is done on the server-side to protect the system from malicious or untrusted input.
Request processing: This handles how user requests are processed. In modern web
applications, asynchronous processing (like AJAX) prevents the UI from freezing during
long-running requests, which improves the user experience.
46.
The role ofCloud Foundry
Cloud Foundry is an open-source, multi-cloud Platform-as-a-Service (PaaS) that helps
organizations accelerate the adoption of DevOps practices. It streamlines and automates
many of the operational tasks that would otherwise fall to developers and system
administrators
47.
The role ofCloud foundry
Cloud Foundry's primary contributions :
Developer productivity
Speed and automation
Multi-cloud portability
Built-in CI/CD features
Centralized management
48.
Adopting DevOps approaches
Adoptinga DevOps approach involves a significant shift in culture, processes, and tools. Cloud
Foundry supports this by enabling several key DevOps practices:
Foster a collaborative culture
Automate everything
Implement continuous integration (CI) and continuous delivery (CD)
Use infrastructure as code (IaC)
Embrace a security-first approach (DevSecOps)