►
Description
Speaker: Ben Laplanche, Product Manager
Companies turn to PaaS and Cloud Native Applications to gain agility and speed. To provide customer value, a fault tolerant infrastructure is essential. But what happens if an entire data centre, region, or even country should go offline?
Cassandra holds the key to keeping application state in sync through replication, whilst Pivotal Cloud Foundry provides easy deployment to multiple IaaS providers. It also comes complete with a managed service offering for DataStax Enterprise.
This talk will discuss how this setup can be deployed in one day, including demonstrations and a walk-through of the key concepts, approaches, and considerations.
A
A
A
So
this
is
a
bit
of
an
old
quote,
but
I
think
quite
quite
a
good
one.
So
cloud
to
me
is
about
how
computing
is
done
and
not
where
knowing
fundamentally,
what
that
means
is
that
we're
entering
a
new
era
of
doing
business,
so
people
are
building
new
experiences
and
businesses
new
need
new
capabilities,
they're,
ultimately
driven
by
software.
A
So
this
is
where
the
phrase
cloud
native
comes
in,
and
these
are
some
of
the
kind
of
key
characteristics
for
cloud
native
applications
that
really
stick
out
to
me.
So
it's
changing
the
way
that
enterprises
think
about
building
their
software,
and
this
is
kind
of
a
new
mantra.
It's
a
really
popular
one
and
it
ultimately
boils
down
to
you're
going
to
have
to
change
or
your
business
might
die.
You've
got
to
balance
the
speed
and
agility
of
moving
quickly,
but
we've
also
the
operational
excellence
so
doing
your
business
well,
but
still
being
agile.
A
You
want
to
move
fast,
consistently
and
reliably.
You
want
to
release
fast
and
often,
and
this,
if
you're,
into
lean,
agile,
an
XP
is
all
about
feedback
feedback
feedback
wherever
it's
for
the
software
or
validating
that
what
you're
building
where
your
users
is.
Indeed
what
they're
looking
for
it's
about
the
customer.
Ultimately,
everything
you
would
do
is
about
the
customer.
You
want
high
performing
teams
and
you
want
to
do
this
at
scale
globally.
So
to
me,
these
are
some
of
the
key
things
about
what
Clayton
cloud
native
means.
A
So
there's
a
few
cloud
native
and
neighbor
list
to
help
you
meet
some
of
those
points
and
ultimately
every
business,
whether
they
realize
it
or
not,
is
a
software
company.
So
for
companies
to
be
cloud
native
they
need
to
use
the
right
tools,
right,
technologies,
methodologies
of
working
and
as
I'm
sure
you
can
guess.
Cassandra
is
one
of
those
key
parts
have
been
cloud
native,
so
you
all
know
why
cassandra
is
awesome,
which
is
why
you're
here?
A
So
I
won't
bore
you
with
the
details,
but
some
of
the
key
things
that
stand
out
that
map
back
to
those
principles
I
just
talked
about
are
the
things
that
Cassandra
can
scale
linearly.
The
fact
it
handles
huge
amounts
of
data.
The
replication
is
kind
of
mind-blowing
and
awesome
things
like
the
multi-site
replication
and
it's
just
generally
brilliant
in
my
mind.
So
this
is
great.
Everyone
loves
Cassandra
and
it
serves
a
really
great
place
in
your
infrastructure.
Stack
of
your
data,
persistence.
A
A
Ultimately,
the
cloud
is
about
deploying
your
application,
because
that's
what
the
users
are
using,
so
cloud
foundry
provides
a
structured
platform.
It's
a
polyglot
platform,
so
it'll
support
a
whole
range
of
languages
such
as
Java,
spring
Ruby,
etc,
and
that
come
built
in
and
you
can
easily
extend
that
to
add
on
extra
languages
that
you
might
need
has
a
very
strong
day
to
operation
story,
as
well
as
a
lot
of
built-in
principles
around
health
monitoring
for
layers
of
hey
CheY,
which
means
the
platform
can
scale
and
ultimately
look
after
itself.
A
So
if
a
virtual
machine
dies,
bashed
underlying
technology
or
cloud
foundry
will
quite
happily
bring
it
back
if
an
application
dies,
the
platform
back,
you
can
deploy
across
multiple
availability
zone,
so
you
can
suffer
infrastructure
failures
and
you
can
still
whip
up
an
online.
It's
very
good
at
scaling
and
allowing
you
to
kind
of
deploy
and
upgrade
to
new
versions.
A
It
also
allows
us
to
deploy
managed
services,
so
Cloud
Foundry,
ultimately,
is
about
doing
applications
very
well.
It
allows
us
to
deploy
managed
services
alongside
it,
so
this
is
where
Cassandra
comes
in.
It's
also
I
us
and
vendor
agnostic,
which
is
pretty
cool.
So
it's
a
piece
of
software
that
you
can
deploy
to
an
infrastructure
of
your
choice
on
your
private
infrastructure,
so,
whether
that's
your
own
AWS,
vSphere
or
OpenStack,.
A
A
This
is
all
really
interesting,
because
microservices
and
cloud
native
applications
are
allowing
you
to
get
to
your
customers
quicker
and
better
Cloud
Foundry
is
allowing
you
to
deploy
and
run
that
in
a
very
structured
and
performing
way,
and
then
you've
also
got
technologies
like
a
Sandra,
which
you
all
know
that
allow
you
to
handle
the
scale
and
sheer
volume
of
data.
So
you
can
start
to
build
up
a
really
nice
picture
and
stack
of
the
pieces
that
you've
got
available
to
yourself.
A
So
the
two
pieces
I
didn't,
really
touch
on
their
wares.
What
about
the
global
reach
and
resiliency,
which
should
two
of
the
pieces
I
mentioned,
of
what
I
think
of
the
key
characteristics
of
cloud
native
applications,
and
this
is
where
the
topic
of
my
talk
comes
in
so
global
location
could
be
perceived
as
you
want
to
reduce
latency.
If
you
want
to
make
sure
you're
close
to
your
customers,
it
could
be
perceived
as
perhaps
personalizing.
A
The
experience
and
resiliency
to
me
means
what,
if
a
region
or
a
data
center
goes
offline
or
even
if
it's
overloaded,
so
you've
had
a
promotion,
it
was
really
popular
that
data
centers
overrun.
You
can
move
load
elsewhere,
so
you
need
a
diverse
GA
architecture,
which
is
basically
a
fancy
name.
I
came
up
with
when
I
submitted
the
talk
in
the
hope
that
it
catch
people's
eyes.
It's
basically
me
saying
that
you
can
do
multiple
deployments
on
different
infrastructure
providers
located
across
the
world.
A
A
So
the
purposes
of
this
talk,
I
deployed
PCF
to
AWS
and
Dublin,
a
vsphere
provider
in
Germany
and
an
OpenStack
environment
located
in
our
office
up
in
San
Francisco,
and
these
are
all
PCF
installations.
I
did
this
in
a
day.
So
why
deployed
was
the
full
pivotal
cloud
foundry
and
just
to
rehire
aight,
some
of
the
key
components
that
were
deployed
with
that
is:
there's
the
runtime
in
the
container
orchestration
layer.
So
this
is
where
your
applications
are
run.
There's
all
of
the
logging
and
metrics
there's
built
into
that
platform.
A
I
also
deployed
datastax
Enterprise
onto
the
platform,
so
the
managed
services
that
I
mentioned
we've
built
a
wrapper
around
data
center
browser
that
can
be
deployed
on
top
of
Cloud
Foundry
using
bosh,
and
this
gives
you
a
six
node
cluster
when
you
deploy
it
now,
you
don't
have
to
be
an
expert
in
Cassandra,
so
the
operator
PCF
doesn't
really
need
to
know
about
Cassandra.
They
can
take
our
tile.
They
can
upload
it
into
our
ops
manager,
product
and
hit
deploy
and
behind
the
scenes
that
is
provisioning.
A
All
of
the
infrastructure
for
them
is
laying
down
all
of
the
packages.
Then,
although
the
best
practice
configuration
so,
although,
like
the
performance
tuning
and
ultimately
standing
up
a
six
node
cluster,
that
is
ready
to
go
that
can
be
handed
over
to
an
application
developer
and
that
deployment
of
just
the
dates
tax
component
took
about
45
minutes
on
AWS,
for
example.
So
you've
gone
from
zero
in
about
45
minutes
to
having
a
best
practices.
A
A
So,
to
give
a
bit
more
context
to
kind
of
how
things
look
behind
the
scenes
each
deployment,
so
each
infrastructure
looks
like
this:
we
have
a
public
and
a
private
subnet,
so
in
the
public,
subnet
you've
got
pivotal
ops
manager,
which
is
the
kind
of
interface
to
deploying
components
to
the
platform.
You
have
a
load
balancer,
so
this
could
be
the
hecho
proxy
that
we
come
with
or
you
could
choose
to
use
an
amazon,
elastic,
load,
balancer
or
some
hardware
component,
such
as
I
five.
A
You
can
switch
now,
as
you
require,
and
then
also
VPN
server
in
public
subnet
on
the
right
is
a
very
simplified
view
of
some
of
the
components
inside
cloud
foundry.
Two
of
the
cool
ones,
for
this
talk
are
the
router,
which
is
a
http-based
route,
so
that
can
scale
horizontally.
So
this
is
kind
of
the
entry
point
for
all
application
traffic
into
the
platform.
The
DEA
stands
for
droplet
execution
agent,
and
this
is
where
all
of
your
applications
are
run
inside
containers.
A
So
the
flow
of
traffic
for
an
application,
we'd
obviously
come
from
the
internet.
It
hit
your
load
balancer,
which
will
then
go
through
our
routing
to
and
ultimately
to
your
DA's,
which
is
the
container
where
your
application
is
running.
So
if
that
application
is
using
Cassandra
behind
the
scenes
for
its
persistence,
then
the
container
would
talk
directly
to
the
Cassandra
cluster
that
we
provisioned
earlier.
So
you
can
see
everything
basically
comes
in
through
the
public
subnet
through
to
the
roots
into
and
then
whatever
logic
is
held
in
your
application.
A
So
this
is
great
if
you've
just
got
one
application
deployed
with
a
single
cluster,
because
we've
deployed
three
sites
and
we
had
Cassandra
deployed
each
of
those.
We
really
want
to
make
use
of
the
really
strong
kind
of
multi-site
replication
functionality
that
Cassandra
officers
and
it's
one
of
my
favorite
features
so
the
best
way
you're
doing
this,
I
found
was
I,
set
up
a
VPN
server
in
the
public
subnet,
which
then
tunneled
through
to
the
private
one,
and
you
can
see
there.
A
Now
that
all
sounds
cool,
but
does
anybody
think
I'm
making
it
up
when
I
said?
I
did
this
in
a
date?
It's
a
very
bold
claim,
no
everyone's
melons
and
nodding.
Okay,
so
these
are
the
three
infrastructures
are
used.
Aws
we
have
a
lot
of
the
configuration
is
now
automated
by
cloud
formation
scripts.
So
this
makes
all
of
the
things
that
you'd
expect
like
the
VPC
subnet
security
groups,
you
name
it
very
easy
to
set
up.
You
run
the
cloud
formation
scripts.
A
You
can
download
from
our
licensed
website
when
you
buy
the
software
and
run
vSphere
and
OpenStack
were
a
little
bit
more
involved.
There
is
some
automation
for
that,
but
due
to
the
way
those
products
work,
there
is
some
things
you
need
to
set
up
by
hand
such
as
the
resource
pools,
kind
of
a
little
bit
of
the
networking,
dns
floating
eye,
peas,
etc.
But
this
is
basically
saying
the
base
layer
of
what
you
need
to
get
up
and
running.
A
This
is
where
the
cool
stuff
happens.
So
this
is
a
product
called
pivotal
ops
manager,
which
is
a
web
interface
to
an
open
source
technology
called
bosch
and
or
she
is
kind
of
the
secret
sauce
behind
everything
we
do,
and
it's
also
the
magic
behind
cloud.
Foundry
and
Bosh
ultimately
is
kind
of
a
vm
and
infrastructure
provisioning
tool.
Does
all
of
your
configuration
lifecycle
management
in
a
very
opinionated
way,
but
very
robust
and
scalable
way
as
well.
So
if
you
ever
use
tools
like
chef
puppet
ansible,
you
could
take
all
of
those
bundle
them
together.
A
Add
a
bit
more
magic
and
you'd
arrived
at
bosch.
So
what
this
means
is
that,
let's
say
AWS.
For
example,
we
ran
the
cloud
formation
script
that
sets
up
basically
our
bpc
with
all
of
the
networking
and
everything
for
us.
We
then
deployed
the
am
I
which
gave
us
pivotal
ops
manager,
so
we've
now
got
basically
our
launch
pads
to
go
and
deploy
the
rest
of
the
platform.
The
am
I
didn't
take
very
long
to
deploy
at
all.
It's
just
a
single
VM
from
here
were
then
able
to
upload.
A
We
refer
to
these
as
tiles
purely
because
of
how
they
look.
So
we
then
uploads
the
pivotal
elastic
runtime
tile,
which
is
basically
Cloud
Foundry.
You
can
put
in
the
rest
of
the
configuration
using
the
values
that
were
provided
to
you
from
the
output
of
the
cloud
formation
script,
such
as
your
network
ranges
and
then
hit
deploy
and
behind
the
scenes
that
will
go
away
and
deploy
the
entirety
of
Cloud
Foundry.
So
everything
from
the
routing
T
to
the
DA's,
it's
the
Cloud
Controller
the
databases
that
you
need.
Login
metrics,
you
name
it
all.
A
Other
components
deployed
automatically
for
you.
So
that's
got
as
cloud
foundry,
which
is
the
application
part,
and
then
we
can
upload
the
data
snacks
enterprise
tile
that
we've
paired
with
and
partnered
with
datastax
to
build,
and
this
again
does
the
same
principle
deploys
all
of
the
infrastructures
for
the
VMS
lays
the
software
down
and
configures
it.
So
behind
the
scenes,
it's
all
Bosh,
doing
the
magic
I
did
this
three
times
so
I
did
cheat
well.
A
It's
not
cheating
I
had
free
to
free
browser
windows
open
at
the
same
time
hitting
deploy,
deploy,
deploy,
but
you
get
the
idea
right.
It's
still
pretty
cool
der
in
total.
That
probably
deploy
about
25,
VMs,
/
installation
so
about
75
VMs
in
total,
are
deployed
across
those
three
infrastructures,
cloud
foundry
and
dates
tags.
A
So
thank
that's
given
us
our
infrastructure,
that's
given
us
our
starting
point
now
for
the
demo.
What
I
wanted
to
show
was
traffic
coming
into
an
application
through
the
front
door
so
through
the
load
balancer
in
the
router
and
then
storing
its
data
in
the
Cassandra
T,
so
I
need
to
deploy
my
application
on
Cloud
Foundry.
This
is
as
simple
as
CF
push
demo
app
so
I'm
in
my
source
code,
folder,
where
I've
got
my
application.
A
In
this
case
it
was
a
ruby
application
and
a
g-type
CF
push
and
the
command
line
interface
basically
takes
that
source
code
boosts
it
up
to
Cloud.
Foundry
finds
the
Craig's
build
pack
for
it,
so
Ruby,
which
has
all
of
our
Ruby
versions
and
dependencies
in
there
compile
it
and
then
Chuck's
it
onto
container
to
run
and
again
I
did
this
three
times
to
each
of
the
infrastructures.
So,
for
the
purposes
of
this,
I
had
like
dem
AWS
vsphere
by
OpenStack.
A
A
So
just
to
recap,
we've
now
got
cloud.
Foundry
we've
got
datastax
Enterprise
deployed,
we've
got
an
application
pushed,
so
if
we
think
about
from
an
application
developers
experience,
they
now
want
to
use
that
data
stacks
cluster
that
we
know
is
available
for
them.
So
using
the
marketplace
functionality
built
into
cloud
foundry,
they
can
really
come
and
see
if
marketplace
or
to
FM
the
short
version,
and
they
can
see
what
is
available
to
them.
A
This
is
quite
cool
because
it
becomes
kind
of
a
sweetshop
of
all
of
the
cool
technologies
that
application
developer
needs
to
do
their
job.
So
here
we've
got
Cassandra
listed.
We
can
run
them
another
command.
The
CF
create
service.
That
basically
says:
hey
I
really
want
similar
Cassandra,
create
me
an
instance
of
that,
and
then
that
showed
the
second
command
side.
The
bottom
ahlam
CF
services
shows
that
that
is
now
being
created.
A
The
last
step
is
then,
to
actually
bind
the
two
together,
so
we've
got
an
application.
That's
deployed.
We've
created
an
instance
of
Cassandra.
We
now
need
to
tell
the
two
about
each
other,
so
this
command
see
if
bind
service,
basically
injects
an
environment
variable
into
your
application.
That
says
here's
the
IP
addresses
his
username,
his
your
password
and
kind
of
here's,
the
default
key
space,
so
you
can
see
in,
like
five
commands,
total
you've
gone
from
having
no
application
deployed
to
now
having
it
bound
to
an
instance
of
Cassandra
that
you
can
start
using.
A
And
again
that
was
done
on
each
of
those
infrastructures.
So
the
last
piece
is
to
now
tell
all
three
of
the
Cassandra
clusters
about
each
other,
so
that
data
will
start
replicating
across
them.
So
we
set
the
cluster
names
to
all
just
be
demo
nice
and
simple.
We
updated
the
seed
nodes
on
every
nodes
to
include
the
remote
environments
and
every
started.
I've
added
a
caveat
there.
That
I
did
this
behind
the
scenes,
because
some
of
this
talk
is
the
kind
of
a
view
to
the
future
of
the
products.
A
So
we
need
to
make
this
a
little
bit
more
intuitive
and
easy
for
people
to
use.
So
there's
a
little
bit
of
me
messing
around
in
configuration
files
behind
the
scenes
and
then
set
up
some
global
load
balancing
so
some
things
such
as
Akamai,
where
we
can
do
kind
of
the
global
nurse
and
also
the
Geo
rooting
for
the
localization
and
stuff,
and
that
was
basically
pointing
to
Cassandra
Mike
UCF
each
of
those
three
locations.
A
So
we
now
got
everything
I
think
fingers
crossed
that
we
need
to
go.
We've
started
from
scratch:
nan
a.m.
in
the
morning,
real
nice
cup
of
coffee
deployed
our
infrastructure.
The
Floyd
cloud
foundry,
we've
Cassandra
pushed
our
applications
created
an
instance
to
the
database,
found
our
application
to
it,
connect
to
the
clusters
to
each
other
and
set
up
some
dns
sounds
like
quite
a
lot,
but
I
managed
it
so
in
the
abstracts
I
promised
a
demonstration
here
again
is
the
networking
configuration
to
reiterate.
Can
anybody
spot
the
issue
here.
A
If
you're
going
to
use
templates
to
deploy
your
free
environments,
make
sure
you
use
different
IP
ranges.
I
ended
up
with
all
of
my
dates:
tax
notes
on
the
three
different
infrastructures
using
the
same
I
piece
which
for
anybody
who's
tried
doing
VPN,
tunnels
and
networking
knows
that,
obviously
they're
not
going
to
be
able
to
talk
to
each
other
because
they
can't
find
each
other.
So
I
have
bit
of
an
admission
in
that
I.
A
Don't
have
a
screencast
to
show
you,
because
I
didn't
actually
get
it
working
in
a
day
due
to
my
own
fault,
my
IP
table
skills
aren't
strong
enough
to
do
all
of
the
crazy,
not
rooting
to
rewrite
the
IP
addresses.
Unfortunately,
now
what
I
should
point
out
is
that
in
the
office
manager,
product
and
the
template,
so
you
can
actually
configure
your
own
ranges
at
the
very
beginning
of
that
process
of
provisioning.
Your
infrastructure.
This
is
very
easy
problem
to
avoid.
A
So
here's
what
I
would
have
demonstrated
you
would
have
seen
no
tool
status
and
the
screencast
would
have
shown
you
that
in
run
on
each
of
the
different
data
centers
just
to
validate
that
on
that
output,
you
can
see
your
free
data
centers,
along
with
the
nodes
list
of
new
to
them,
just
to
prove
that
they're,
aware
of
everything
and
also
a
view
of
the
opscenter
management
dashboard,
which
we
include
in
the
products
as
well.
You
can
log
into
that
and
see
the
ring
been
set
up
for
all
of
those
data
centers.
A
The
second
part
would
have
shown
data
being
written
to
any
one
of
those
infrastructures,
so
it
would
have
written
if
the
first
part
of
the
demo
directly
to
an
infrastructure,
let's
say
AWS.
We
then
who
would
have
had
a
second
window
open
that
is
showing
the
data
being
read
back
from
another
infrastructure,
say
be
spear
and
that
would
have
proven
that
we've
written
data
and
read
it
from
different
infrastructures
that
Cassandra
behind
the
scenes
is
taken
care
of
the
replication
for
us
and
then
to
get
really
fancy.
A
The
last
part
was
going
to
show
the
global
dns
being
used
and
some
data
being
written
and
read
in
a
loop
and
then
taking
one
of
those
data
centers
offline
again
to
prove
that
you
can
have
that
resiliency
and
you
could
suffer
a
failure.
Whether
its
hardware
infrastructure
network
doesn't
really
matter.
You've
got
some
kind
of
failure.
That's
taken
one
of
those
data
centers
offline,
so
hopefully
you
can
pitch
down
your
minds
and
think
about
how
cool
that
would
have
been
if
I'd
had
a
screencast
to
show
you
don't
apologize
for
that.
A
So
what
we're
able
to
do
now
or
in
the
future
is
the
orange
arrow
shows
that
we
can
register
Cassandra
nodes
directly
with
the
TCP
router,
which
basically
removes
the
need
for
a
step
of
VPN
tunnel,
because
we
can
send
opening
through
the
TCP
router
and
the
load
balancer
for
their
inter
tell
you
the
inter
data
center
communication.
So
that's
pretty
cool
because
that
will
be
built
into
the
platform
and
can
happen
automatically
so
you're
not
again
messing
around
with
any
of
this
extra
VPN
and
networking
stuff,
so
I
mean
that's
pretty
cool.
A
So
the
manual
steps
that
I
mentioned,
where
I
had
to
go
back
and
rename
the
clusters
to
make
sure
they're
all
names
demo
and
had
to
go
and
update
the
configuration
files
so
that
all
the
seed
nodes
knew
about
each
of
run
all
the
different
sites.
If
you
remember
the
screenshot,
I
had
earlier,
the
command
CF
create
service.
Just
have
the
first
parts
of
the
p
dash
data
static,
single
tenant
demo.
A
What
we're
now
able
to
passion
passing
the
dash
p
and
some
jason,
which
basically
says
hey
when
you
create
me
this
instances,
database
or
Cassandra?
Please
give
it
a
cluster
name,
a
demo,
and
please
use
this
loot
list
of
remote
seeds,
which
here,
for
example,
we
could
point
to
the
URL
that
we've
got
on
that
tcp
router
and
that's
just
removes
all
of
the
need
for
you
to
go
and
do
any
manual
configuration
as
well.
So,
with
these
to
improvements
in
Cloud
Foundry
platform,
the
latest
acts
product
in
the
future.
A
So
we
currently
have
a
service
plan
available
when
you
deploy
the
tile
called
multi-tenant,
and
this
is
great
for
development
testing.
So
when
you
deploy
the
tile,
this
gives
you
a
full
node
cluster,
and
every
time
you
ask
for
an
instance,
you
get
your
own
key
space.
Supplication
developers
can
very
quickly
try
out
Cassandra
get
to
grips
of
it
and
it's
fairly
lightweight
in
terms
of
the
cost
and
the
vm
overhead,
and
this
is
all
using
de
stacks
enterprise,
an
OP
Center,
and
this
automated
vote.
A
A
That
I
showed
you
earlier
so
if
they're
of
interest-
and
you
can
fetch
those
from
and
network
pill
to
the
IO
website,
which
is
where
you
can
download
Cloud
Foundry
datastax,
as
well
as
a
range
of
other
data
services
that
you
can
download
and
try
out
so
the
multi-tenant
plan
with
upgrades
and
singleton
and
production
plan
will
be
available
in
q4.
There
is
a
version
of
the
tile
available
at
moment,
which
just
has
the
multi-tenant
plan.
If
you
want
to
try
that
out
as
well
cool.
A
So
if
you
want
to
find
out
anything
more
about
cloud
foundry,
what
on
earth
I've
just
done
asking
any
in-depth
questions
come
find
us
at
the
booth.
We
have
the
mandatory
we're
hiring
software
engineers
and
product
managers
both
in
san
francisco
and
london.
If
anybody
fancies
relocating,
you
can
find
details
on
the
website.