Cloud Computing 101
Cloud Computing 101
$$$$$$$$$$$$$$$$$$
What is cloud?
Cloud computing is an internet-based computing service in which large groups of remote servers are
networked to allow centralized data storage, and online access to computer services or resources.
Using cloud computing, organizations can use shared computing and storage resources rather than
building, operating, and improving infrastructure on their own.
Cloud service providers can enable a pay-as-you-go model, where customers are charged based on the type of
resources and per usage.
Cloud service models
IaaS - Infrastructure as a Service
It provides users with the capability to provision processing, storage, and network connectivity on
demand. Using this service model, the customers can develop their own applications on these
resources.
• Reliability − A cloud computing platform provides much more managed, reliable and consistent service than an in-house IT
infrastructure. It guarantees 24x7 and 365 days of service. If any of the server fails, then hosted applications and services
can easily be transited to any of the available servers.
• Unlimited Storage − Cloud computing provides almost unlimited storage capacity, i.e., we need not worry about running
out of storage space or increasing our current storage space availability. We can access as much or as little as we need.
• Backup & Recovery − Storing data in the cloud, backing it up and restoring the same is relatively easier than storing it on a
physical device. The cloud service providers also have enough technology to recover our data, so there is the convenience
of recovering our data anytime.
• Easy Access to Information − Once you register yourself in cloud, you can access your account from anywhere in the world
provided there is internet connection at that point. There are various storage and security facilities that vary with the
account type chosen.
Infrastructure as Code (IAC)
• Similar to the way software developers write application code, AWS
provides services that enable the creation, deployment, and
maintenance of infrastructure in a programmatic, descriptive, and
declarative way.
Container
Containers provide a standard way to package your application's code,
configurations, and dependencies into a single object. Containers share an
operating system installed on the server and run as resource-isolated
processes, ensuring quick, reliable, and consistent deployments, regardless
of environment.
Docker is a software platform that allows you to build, test, and deploy
applications quickly. Docker packages software into standardized units called
containers that have everything the software needs to run including libraries,
system tools, code, and runtime. Using Docker, you can quickly deploy and
scale applications into any environment and know your code will run.
Kubernetes
• Kubernetes is open-source software that allows you to deploy and
manage containerized applications at scale. Kubernetes manages
clusters of compute instances and runs containers on those instances
with processes for deployment, maintenance, and scaling. Using
Kubernetes, you can run any type of containerized applications using
the same toolset on-premises and in the cloud.