Cloud computing provides an array of hosting and service options to fit your overall company strategy. Sometimes a public cloud is your best option and other times your data requirements demand a private cloud. As needs converge, a hybrid solution continues to gain popularity. Developers must consider if their applications might be run on either or both.
Hear about Midokura.com's journey going from the colos to cloud servers to AWS.
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
Interop ITX: Moving applications: From Legacy to Cloud-to-Cloud
1. From Legacy to Cloud-to-Cloud
M a y 2 0 1 7
Moving Applications:
Susan Wu
Director of Technical Marketing
Midokura
2. About me
• Winding road from proprietary software like Oracle to open source
• Product Marketing for container technologies like Solaris Zones, Docker
• Involved with Open Source communities like Ubuntu, Docker, CloudStack, OpenStack, MidoNet
• Own Stage 1 Pipeline for Midokura
• Program manage Midokura.com [Wordpress, mySQL] on AWS
3. Midokura is a Global Cloud Innovator
Award-winning pioneer
in network
virtualization
Founding team built
distributed systems for
Amazon.com
Proven in large scale
enterprise deployments
around the globe
Quality tested and used by
millions of open source
users
$44 Million in funding
raised to date
Global presence and operations
with offices in Silicon Valley,
Barcelona and Tokyo
4. Benefits of Cloud Networking
Midokura provides visibility into
any connected device, system or
process throughout the entire
business technology stack
Full Stack Visibility
Midokura delivers timely,
relevant businesses can use to
reduce costs, increase
productivity, and drive
intelligent decision making at
every layer of business
Actionable Insights
Midokura’s Cloud Network
makes it easy and cost-effective
to deploy and scale network
resources as physical
infrastructure and business
needs change
Business Agility
5. Benefits of Network Virtualization
Organizations that
have undertaken
network virtualization
needed 67% less time
to deploy business
applications
Deploy
Faster
IT Professionals
responsible for
maintaining and
supporting their
networks were 37%
more efficient
Achieve
Efficiency
These organizations
reduced the impact
of unplanned
network-related
downtime by 84%
Improve
Uptime
Organizations that have
undertaken network
virtualization
consolidated their
network port/switch
base by 25%
Reduce
Costs
These organizations
needed 65% less
time to deploy new
networking
equipment
Increase
Productivity
Source:
IDC,
2015
8. 1. VM 1 sends a packet through the virtual network
2. MN Agent fetches the virtual topology/state
3. It simulates the packet through the virtual network
4. It installs a flow rule in the kernel at the ingress host
5. Tunnel packets to egress host
SDN Intelligence at the Edge
9. Advanced Network Analytics
Flow Analysis
Receive insights into
current and historical
flows traversing
physical hosts, virtual
bridges and routers
Tenant Usage
Deep-dive into
network resources
and bandwidth
consumption by
tenant
Security Rule Chains
Apply fine-grain
security policies at the
port and VM/container
level
11. Our world of clouds
SaaS
Dev/Test
&
Backoffice Apps
Web
&
Cloud-‐native
Apps
12. Marketing is becoming Digital
Real Time Interaction
Web “chat”
Online Customer
Advisory
Lead Qualification
Sales Outreach
Website interaction
Trials/Signups
How to use
Partner training
Tutorials/university
Lead CaptureSEO
Blogs
SocialMedia
SpeakingEvangelism
Sales
Prospecting
Partners
Events
Content
Marketing
Website: Call to Action / Customer Onboarding
PR
Analytics
Industry
Segments
Conversions
Lead
Velocity
KPI’s
13. Our website’s cloud journey
Colos
2013-2014
Rackspace
Cloud Servers
2014 - 2016
On-Premise
Open Stack
2016
AWS, Siteground,
On-premise OpenStack
2017 and beyond
Midokura.com
17. Lessons Learned
Alerting on what
matters; Pingdom gave
me the eyes and ears
Notify on high severity
Know who to contact for affected area
Page on symptoms
Troubleshoot and root
cause; maintain service
hygiene
Escalate to mgmt;
business consume cloud
services; lines of business
can demands uptime
18. Choosing your applications
An application is moved to the cloud
as-is but consumes public cloud
resources or services to replace
application components and services
from a PaaS and/or SaaS
Cloudification
An application and its compoents are
redeployed and moved, without
modification
Redeployment
An application is redeployed and
modified to consume IaaS services
Relocation with
Optimization
19. Characterize your workloads
Dev/Test, Back-office, Limited database access to
company’s management systems, run infrequently, run in
a time zone different from IT
Standalone, Simple Apps
Performance-sensitive, resource-intensive, frequent or
high volume transactions against a DB, run on legacy
platforms or require specialized hardware
Complex Integrated apps
20. Know your Workload requirements
üScaling paradigm: Scale out – automatic and horizontal scaling for
each service and component of the application
üModular, loosely-coupled distributed application architecture; APIs
for each service
üResiliency in app, share-nothing architecture
ü Use of distributed storage
üServices providing Active/Active Redundancy
üReplication of data done in software
üAsynchronous communications
üDeals gracefully with timeouts
üCommodity hardware building blocks
Standalone, Simple Apps
21. Plan for complex apps
üScaling paradigm: Scale-Up - Mission-critical, complex and
centralized systems
üInfrastructure components expected to have 99.999%
availability, less than 5.26 minutes of downtime per year
üDedicated servers or virtual machines managed manually by
administrators
üConsumes large SANs or persistent block storage
üConsumes high CPU (GPU) or high-speed SSD storage
üBig failure domains
üRequires high performance hardware to make infrastructure
highly available
Complex Integrated apps
23. Workload discovery in Public cloud
• Take
an
inventory
of
all
the
applications
• For
each
application,
note
sizing
(cores,
memory,
storage
on
each
instance,
map
to
the
right
instance
flavor)
• Make
a
list
of
the
regions
where
the
applications
are
deployed
(East,
West,
EU,
Asia)
24. Network and storage requirements
• Take
an
inventory
of
all
the
VPC
network(s)
and
security
requirements
• Understand
DR
requirements
(covering
RTO
– Recovery
Time
Objective
and
RPO
– Recovery
Point
Objective
25. Decoupling from AWS native services
• DNS
– Route
S3
dependency
• AWS
Storage
dependency
– S3
(Object
Storage),
Glacier
(Archival),
and
EBS
storage
usage
across
the
workloads
• Deployment
&
automation
services
– Cloudformation
• Databases
being
used
– RDS
(Oracle,
SQL,
Postgres),
DynamoDB,
ElastiCache or
Redshift
• Notifications
(SNS),
Queuing
(SQS),
or
email
(SES)
services
in
use
26. Planning the workloads for private clouds
• Based
on
compute,
network
and
storage
requirements,
propose
a
private
cloud
infrastructure
and
a
hypervisor
strategy
• Propose
alternatives
to
replace
the
in-‐use
AWS
native
services
• Plan
for
POC
and
performance
benchmarking
for
application
workloads
• Update
any
necessary
audit
controls
(e.g.
SSAE16,
ISO,
FedRAMP)
27. Testing the workloads
• Choose
DevOps
tools
to
automate
deployment
(e.g.
Chef,
Puppet,
Ansible)
• Test
deployments
of
the
workloads
and
measure
the
time
it
takes
to
deploy
a
workload
• Perform
a
full
performance
benchmarking
testing
for
all
workloads
• Optimize
the
instance
sizes
based
on
the
performance
testing
• Test
data
migration
strategy
and
procedures
and
measure
the
time
to
copy
data
(especially
for
DB
migrations
• Run
multiple
dry
runs
of
the
migration
for
each
workload
• Implement
security
controls
and
ensure
desire
application
performance
can
be
met
with
security
controls
enabled
28. Executing the migration
• Form
a
cross-‐functional
steering
committee
to
review
the
migration
strategy
and
plan
• Develop
a
detailed
migration
plan
for
each
application
workload
–
make
sure
you
can
roll
back
• Ensure
monitoring
and
ticketing
integration
are
in
place
before
going
live
• Ensure
end-‐to-‐end
User
Acceptance
Testing
is
done
before
cutting
over.
Keep
the
public
cloud
infrastructure
live
for
at
least
2-‐3
weeks
post
cut-‐over
29. Pro Tips
• Ensure
business
validation
is
complete
by
a
select
group
of
users
• Put
in
place
proper
capacity
governance
is
in
place.
Need
to
be
able
to
anticipate
future
hardware
needs
and
know
lead
times
• Ensure
continuous
infrastructure
monitoring,
application
performance
monitoring
and
automation
optimization
are
in
place
30. People Tips
• Encourage
DevOps
professionals
to
get
certified
on
AWS
and
OpenStack
• Midokura’s analytics
are
going
to
the
cloud,
our
DevOps
skills
helped
paved
the
way
for
product
development
• Skills
gained
from
operating
the
on-‐premise OpenStack
cloud
led
to
the
development
and
productization of
operations
and
troubleshooting
tools
– a
win/win
31. • Susan
Wu
• Email:
susan@midokura.com
• Twitter
@susanwu88