Challenges of Cloud Application Deployment

Video Activity
Join over 3 million cybersecurity professionals advancing their career
Sign up with
Required fields are marked with an *
or

Already have an account? Sign In »

Time
12 hours 57 minutes
Difficulty
Intermediate
CEU/CPE
13
Video Transcription
00:00
>> Although most organizations
00:00
desperately want to take advantage
00:00
of the scalability and flexibility,
00:00
as well as the cost savings that come
00:00
with Cloud deployments,
00:00
there are a lot of challenges when it comes
00:00
to deploying Cloud applications.
00:00
In this lesson, we're going to talk about
00:00
the application issues that
00:00
make Cloud migrations difficult.
00:00
We're going to talk about aspects of Cloud deployments
00:00
themselves that complicate application administration,
00:00
then we want to just think about other considerations
00:00
for maintaining a Cloud-based application.
00:00
First and foremost, applications that are
00:00
originally designed for on-premise do
00:00
not always perform as well on the Cloud.
00:00
There can be a number of different reasons for this,
00:00
but first and foremost,
00:00
is that in the Cloud,
00:00
bandwidth is one of the limiting factors.
00:00
A Cloud or an on-premise application
00:00
can delicate, could be fat.
00:00
The code may not be designed as
00:00
efficiently and on-premise solutions
00:00
can utilize quicker routing to handle
00:00
different number of calls to
00:00
make the application perform quickly.
00:00
However, when that application
00:00
is deployed in the Cloud environment,
00:00
those numerous calls can
00:00
bog down and make that application really perform
00:00
poorly because it's taxing
00:00
the bandwidth used to
00:00
administer the application in the Cloud.
00:00
One of the other things is that in
00:00
the Cloud, by nature of it,
00:00
there are going to be more shared resources that are
00:00
used to balance and make applications run.
00:00
That may not necessarily be
00:00
the case in on-premise where there's
00:00
dedicated resources for an application.
00:00
Then, is the Cloud application even Cloud ready?
00:00
Ideally, companies want to,
00:00
what they call forklift,
00:00
meaning just take their application
00:00
from an on-premise situation
00:00
and just begin hosting it in the Cloud without
00:00
making any changes to the underlying code.
00:00
But as we alluded to
00:00
first in that performance issues piece,
00:00
that's not always going to work.
00:00
Some applications often need to have their code
00:00
fixed and optimized for a Cloud environment.
00:00
Now, there are some applications that can easily move to
00:00
the Cloud with minor shifts.
00:00
Those that require a lot of
00:00
calls to databases or accessing
00:00
data perform much better in the Cloud for the most part.
00:00
Another important thing to consider about whether
00:00
an application is Cloud ready is
00:00
from an architectural perspective.
00:00
Encryption may need to be employed in the Cloud to
00:00
ensure that data is adequately protected in transit.
00:00
Many of those things aren't often
00:00
considered when an application is running on
00:00
an on-premise situation because it's within the confines
00:00
of protection of the organization's network security.
00:00
In the Cloud, with data traversing
00:00
different environments and potentially
00:00
leaving a customer's instance,
00:00
you do need to look at everything and
00:00
ensure that there's adequate encryption
00:00
and security for data in transit at rest in a process.
00:00
Let's say you've added your application,
00:00
you've made the tweak you think you need to make,
00:00
often one of the challenges developers run into
00:00
is that there really is poor documentation.
00:00
Developers are often under the gun
00:00
to develop and deploy code on a timely manner and
00:00
documentation might not be adequate to
00:00
competently deploy their solution in the Cloud
00:00
given some of the constraints or
00:00
ambiguities in what's been documented so far.
00:00
Then let's say you've figured everything out,
00:00
you've got your applications
00:00
securely deployed in the Cloud,
00:00
then there are some challenges that come with
00:00
the secure administration of Cloud applications.
00:00
Namely, it's ensuring that
00:00
the application programming interfaces are secure.
00:00
APIs are used to communicate and transfer data
00:00
between Cloud applications and
00:00
customers or used in administration.
00:00
The benefit is they're very flexible.
00:00
Organizations as well as on an individual level,
00:00
developers can choose the APIs that best
00:00
suit their use case or what they're trying to develop.
00:00
However, this opens up a new security challenge,
00:00
how do we ensure that the APIs that are being used are
00:00
themselves secure and developed by a trusted party?
00:00
An organization really needs to evaluate and create
00:00
an effective process for evaluating and
00:00
choosing APIs to ensure that they're valid,
00:00
meaning they're developed by a trustworthy source
00:00
and that the design
00:00
of the API is secure
00:00
and meets the organization's standards.
00:00
Then another difficulty in
00:00
terms of the Cloud environment is tendency separation.
00:00
As we've talked about,
00:00
especially in the public Cloud,
00:00
an organization doesn't own
00:00
their underlying infrastructure and there's going to be
00:00
shared resources that they
00:00
are leveraging from the Cloud provider.
00:00
Well, this means that the organization needs to
00:00
put a lot more emphasis on ensuring that
00:00
their data doesn't bleed over into other instances within
00:00
the same Cloud environment through
00:00
more effective isolation techniques which we've covered,
00:00
talked about, very important,
00:00
that access control needs to be locked down and
00:00
that secure remote administration
00:00
needs to be configured properly.
00:00
Let's deal with the quiz question.
00:00
Which of the following refers to moving an application
00:00
to the Cloud without changing any of the underlying code?
00:00
Forklift, Cloud transplant, Cloud shift.
00:00
If you said forklift, you're correct.
00:00
Ideally, many organizations want to
00:00
just pull their applications
00:00
out of their on-premise environment,
00:00
stick them in the Cloud and get
00:00
all those cost efficiency benefits of moving it there.
00:00
It's not as easy as you initially
00:00
might think if you're not a technical person.
00:00
You really need to evaluate
00:00
your code, do adequate testing,
00:00
re-evaluate the architecture to ensure that you have
00:00
proper encryption and that
00:00
the code is optimized to perform in a Cloud environment.
00:00
In summary, talking about
00:00
the challenges with Cloud application deployment,
00:00
issues with Cloud application for
00:00
differently an on-premise environments versus
00:00
the Cloud based on how they're designed.
00:00
We talked about how there really needs to be
00:00
proper testing to ensure that
00:00
the Cloud application is performing
00:00
properly and that the architecture needs to be reviewed.
00:00
Then from an administrative perspective,
00:00
there are differences between how
00:00
Cloud applications are administered versus on-premise,
00:00
APIs are going to be the main way
00:00
of administering and deploying it,
00:00
connecting to the Cloud application
00:00
>> that was needed to be
00:00
>> vetted to ensure that they're from
00:00
a trustworthy source
00:00
>> and that they're securely developed.
00:00
>> Then care needs to be taken to ensure
00:00
that there's appropriate tenancy separation between
00:00
your organization's Cloud application and
00:00
the tenants of the Cloud environment.
00:00
I'll see you in the next lesson.
Up Next