SlideShare a Scribd company logo
1 of 40
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How Encirca Services by DuPont Pioneer
Exited Their Data Center in Less Than Six
Months
N o v e m b e r 2 8 , 2 0 1 7
E N T 2 1 3
AWS re:INVENT
2
Agenda
1. Intro and Background
2. Challenges and Enablers
3. Migration Details
4. The Future
I N T R O
3
What it takes to perform a lift-
and-shift to Amazon Web
Services (AWS)
Takeaway
I N T R O
4
Lift-and-Shift
What?
• Acloud migration strategy replicating in-house apps to the cloud
without
redesign and re-architecting
Why?
• Re-architecting is expensive
• Risk mitigation
• Quick wins
• Improved HAand DR—Disaster Prevention
I N T R O
5
Poll
How many people—
• Work for a company of > 1,000 employees?
• Entire company on AWS?
• Your area of your company is all-in on AWS?
• Some workloads are on AWS?
• Considering a migration to AWS?
• Don’t think AWS is right for them?
I N T R O
6
Background
7
About Me
From Des Moines, IA
Graduate of University of Iowa
Started in financial services
Last 10 years in agriculture
• DuPont Pioneer
• Encirca services
• Granular
Background in software engineering and cloud architecture
Email: brycehemme@granular.ag
Twitter: @brycehemme
Bryce Hemme – Director of Platform Engineering
8
B A C K G R O U N D
Parent
Companies
Agriculture Seed
Business
Agriculture
Software Business
Agriculture
Software Products
Merged in 2017
Iowa-based seed
company acquired
by DuPont in 1999
Silicon Valley based
software company
acquired by DuPont
in 2017
Atlanta-based
software company
acquired by DuPont
in 2015Software product
developed by
DuPont Pioneer
9
B A C K G R O U N D
Digital Agriculture
10
B A C K G R O U N D
Digital Agriculture
11
B A C K G R O U N D
Digital Agriculture
Managing Farm as a Business
Granular FMS
Managing Critical
Input
AcreValue
Advanced Agronomy Management
Encirca®
BUSINESS AGRONOMY LAND
12
Encirca Services
B A C K G R O U N D
Encirca Services by DuPont Pioneer provides advanced agronomic
support, services and online analysis tools to help increase farmer
productivity, profitability, and sustainability
13
Encirca Services
• Four engineering staff in 2013…300+ in 2017
• Windows, Linux, massive relational databases and big
compute
• Started in on-premises data center
• Small cloud footprint started in 2013
B A C K G R O U N D
14
The Team
Front row: Nate Faue, Seraj Islam, Rashmi Shrestha
Back row: Jeremy Hofman, Eduardo Gamboa, Nate Mecklenburg, Gary Jepsen, Robbie Hornung, Jason Thompson
Not pictured: Ryan Zanger, Josh Kehoe, Andrew Lear
I N T R O
15
Drivers for Our Cloud Migration
• Growing company with reduced IT budgets
• Silo between Dev and Ops
• Limited automation
• Desired autonomy
• Need to innovate and move fast
• Reliability
T H E C H A L L E N G E
16
Challenges and Enablers
17
Convincing Leadership
• Why would I leave a data center that costs me nothing?
• Quantify the gains/quantify the cost of doing nothing
• What is the cost of slowing innovation?
• How much time is wasted due to org silos? (dev as opposed to ops)
• What can be gained by increased reliability?
• Market the cloud
C H A L L E N G E S A N D E N A B L E R S
18
Leadership is convinced, now what?
19
Now you’re likely responsible for…
• Windows
• Linux - CentOS
• DBMS
• Appliances
PLATFORMS
• Web, app, and DB servers
• Load balancers
• Web application firewalls
• Source control
• Build infrastructure—don’t
forget Apple
• Networking
INFRASTRUCTURE SERVICES
• DNS
• Provisioning, patching,
base images
• Identity and access
management
• Monitoring
• Security
• Compliance
C H A L L E N G E S A N D E N A B L E R S
20
What are the challenges we had to address to
enable a successful migration?
21
People and Skills
Issue
• Engineering staff has limited knowledge of AWS and
cloud engineering
Solution
• Hire these skills early, before you think you need
them
• Identify an internal evangelist (or two), get them
proper training/exposure
• Leverage AWS Solutions Architect to develop a
training plan
C H A L L E N G E S A N D E N A B L E R S
22
Admin Connectivity
Issue
• No dedicated connection from corporate network to AWS
• Implementing would require significant help from corporate IT
• Don’t want AWS resources facing Internet, except when
necessary
Solution
• EC2 bastion hosts as SSH gateways
• Follow hub-and-spoke model outlined by AWS
• All traffic is tunneled through bastion hosts
C H A L L E N G E S A N D E N A B L E R S
http://amzn.to/2iX6gaN http://amzn.to/2yvQ7DE
23
Monitoring and Alerting
Issue
• Existing monitoring solutions work well for on-premise
applications
• Need insight into environment in order to self-support
Solution
• Heavily invest in SaaS based solutions
• Monitor applications, infrastructure, and use logs to identify
anomalies
• Simple integration with AWS services provides additional
insight
C H A L L E N G E S A N D E N A B L E R S
24
Source Control and Builds
Issue
• All source control and build infrastructure lives inside corporate
network
Solution
• Migrate to cloud hosted source control —GitLab
• Develop scalable build system in the cloud —Jenkins
• Develop tooling to make life easier at scale —Tauoneer and
Jenkins DSL
C H A L L E N G E S A N D E N A B L E R S
25
Authentication
Issue
• Used SAML 2.0 and a custom authentication provider
• Not easily portable
Solution
• Migrated to Amazon Cognito user pools
• Amazon Cognito and JWT fit much better with our needs
C H A L L E N G E S A N D E N A B L E R S
26
API Gateway Routing
Issue
• Used third-party API Gateway appliance for complex routing
scenarios
• Used it as an authentication gateway, also—great for
decoupling authentication from apps
Solution
• Custom-built Apache-based API Gateway
• Built completely with infrastructure-as-code approach
• Enhanced mod_authn_jwt to support Amazon Cognito JWTs
C H A L L E N G E S A N D E N A B L E R S
http://bit.ly/2xa8tWS
27
SQL Server Clustering
Issue
• Massive SQL Server cluster, too big for RDS
• Requires high disk IOPS
• SQL Server High Availability groups work for failover using
Microsoft’s drivers, but not for other clients/drivers
Solution
• EC2 based SQL Server High Availability groups
• Created RAID array using EBS volumes
• HAProxy to the rescue—handles routing of failover traffic and is
compatible with all clients/drivers
C H A L L E N G E S A N D E N A B L E R S
28
Coupling to Internal Systems
Issue
• Dependencies to internal systems exist and no connectivity will
exist post-lift-and-shift
Solution
• Identify dependencies early
• Establish remediation plans
• Focus engineers on implementing remediation
C H A L L E N G E S A N D E N A B L E R S
29
Testing of Deployment
Issue
• Doing a large cutover to the cloud is highly risky
Solution
• Test release through identical environments
• Run on premise and cloud in parallel—dogfooding
• Plan for the worst, hope for the best
C H A L L E N G E S A N D E N A B L E R S
30
Availability Zone - 1 Availability Zone - 2
API Gateways and
Web Servers
API Gateways and
Web Servers
Event Processing Event Processing
Lift-and-Shift Account
Elastic Load Balancer
S3 Web Assets
S3 Link
Shared Account
Cognito
AccessLift-and-Shift
Route 53
DNS Resolution
Replication and
Failover
C H A L L E N G E S A N D E N A B L E R S
VPC Peering w/
Other Accounts
Corporate Data Center
Jenkins and Source
Control
Testers
Customers
Customers and
31
The Migration
32
Migration
• Iterative over six months
• Slowly moving through each environment
• Production cutover started at 7:00 p.m. Saturday
• < 15 minutes of downtime
T H E M I G R A T I O N
33
Issues Encountered
Increased error rates
• Monitoring helped identify minor issues that were mostly related
to performance
Performance degraded
• Use of CDC and full-sync of replicas causes contention
• 1 DB in non-production didn’t mimic production (100 GB vs 4
TB)
• Lack of same load in non-production caused resize of DB
instances
T H E M I G R A T I O N
All issues resolved throughout the evening
34
T H E M I G R A T I O N
API Error Rates
Performance
degradation
Mistake in deploy job
35
T H E M I G R A T I O N
API Response Time
Shutdown of non-essential processing
Cutover of traffic
Performance
degradation
36
T H E M I G R A T I O N
Direct Customer Feedback
Lift and Shift Team,
I want to kiss all you…who moved everything to AWS. The speed…is
exceptional. But what impressed me the most is how fast a crop zone
change or DZ reset in Studio translates to Encirca!
I do that more than the average bear and it was lightning fast!
Everything looks and feels so good!
Happiest day ever.
37
Going Cloud Native
38
G O I N G C L O U D N A T I V E
Where We’re Going
• API redesign - AWS API Gateway,AWS Lambda, Python
• Break up SQL Server DBs into smaller, domain-focused
DBs - PostgreSQL, Amazon DynamoDB
• More robust event messaging and event sourcing
• Convergence of disparate systems - where it makes
sense
39
Availability Zone - 1 Availability Zone - 2
API Gateways and
Web Servers
API Gateways and
Web Servers
Event Processing Event Processing
Lift-and-Shift Account
Elastic Load Balancer
CloudNative Account
VPC Peering
Availability Zone - 1 Availability Zone - 2
S3 Web Assets
S3 Link
S3 Web Assets
API Gateway
Replication and
Failover
Microservices Microservices
Redis Cache Redis Cache
Replication
DynamoDB SQS
Shared Account
Auth
CloudFormation
Amazon Cognito
Route 53
DNS Resolution
Replication and
Failover
G O I N G C L O U D N A T I V E
40
WE’RE HIRING!
https://granular.ag/careers
San Francisco, CA
Des Moines, IA
Cumming, GA
Champaign, IL
Email: brycehemme@granular.ag
Twitter: @brycehemme

More Related Content

What's hot

SAP Teched 2012 Session Tec3438 Automate IaaS SAP deployments
SAP Teched 2012 Session Tec3438 Automate IaaS SAP deploymentsSAP Teched 2012 Session Tec3438 Automate IaaS SAP deployments
SAP Teched 2012 Session Tec3438 Automate IaaS SAP deploymentsChris Kernaghan
 
3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud3 Steps to Accelerate to Cloud
3 Steps to Accelerate to CloudRightScale
 
RightScale Roadtrip Atlanta - Accelerate to Cloud
RightScale Roadtrip Atlanta - Accelerate to CloudRightScale Roadtrip Atlanta - Accelerate to Cloud
RightScale Roadtrip Atlanta - Accelerate to CloudRightScale
 
Modernizing Your DNS Platform with NS1 and ThousandEyes
Modernizing Your DNS Platform with NS1 and ThousandEyesModernizing Your DNS Platform with NS1 and ThousandEyes
Modernizing Your DNS Platform with NS1 and ThousandEyesThousandEyes
 
16370 cics project opening and project update f
16370  cics project opening and project update f16370  cics project opening and project update f
16370 cics project opening and project update fnick_garrod
 
Your Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and ContainersYour Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and ContainersAtlassian
 
Accelerate to Cloud
Accelerate to CloudAccelerate to Cloud
Accelerate to CloudRightScale
 
Red Hat Summit - Discover the foundations of digital transformation
Red Hat Summit - Discover the foundations of digital transformationRed Hat Summit - Discover the foundations of digital transformation
Red Hat Summit - Discover the foundations of digital transformationEric D. Schabell
 
Connect Expo 2015 - Australia - Bringing OpenStack into the Enterprise
Connect Expo 2015 - Australia - Bringing OpenStack into the EnterpriseConnect Expo 2015 - Australia - Bringing OpenStack into the Enterprise
Connect Expo 2015 - Australia - Bringing OpenStack into the EnterpriseRandy Bias
 
ETL Is Dead, Long-live Streams
ETL Is Dead, Long-live StreamsETL Is Dead, Long-live Streams
ETL Is Dead, Long-live StreamsC4Media
 
All daydevops 2016 - Turning Human Capital into High Performance Organizati...
All daydevops   2016 - Turning Human Capital into High Performance Organizati...All daydevops   2016 - Turning Human Capital into High Performance Organizati...
All daydevops 2016 - Turning Human Capital into High Performance Organizati...John Willis
 
The 7 Principles of DevOps and Cloud Applications
The 7 Principles of DevOps and Cloud ApplicationsThe 7 Principles of DevOps and Cloud Applications
The 7 Principles of DevOps and Cloud ApplicationsSolarWinds
 
Ultimate AppDev Stack is Cloud Suite
Ultimate AppDev Stack is Cloud SuiteUltimate AppDev Stack is Cloud Suite
Ultimate AppDev Stack is Cloud SuiteEric D. Schabell
 
Red Hat Summit - What are your digital foundations?
Red Hat Summit - What are your digital foundations?Red Hat Summit - What are your digital foundations?
Red Hat Summit - What are your digital foundations?Eric D. Schabell
 
Corporate-Overview-Slides
Corporate-Overview-SlidesCorporate-Overview-Slides
Corporate-Overview-SlidesRISC Networks
 
Introduction to Microsoft R (Graph)
Introduction to Microsoft R (Graph)Introduction to Microsoft R (Graph)
Introduction to Microsoft R (Graph)Cheah Eng Soon
 
My Dad Won't Buy Me DevOps
My Dad Won't Buy Me DevOpsMy Dad Won't Buy Me DevOps
My Dad Won't Buy Me DevOpsXebiaLabs
 
The Application Server Platform of the Future - Container & Cloud Native and ...
The Application Server Platform of the Future - Container & Cloud Native and ...The Application Server Platform of the Future - Container & Cloud Native and ...
The Application Server Platform of the Future - Container & Cloud Native and ...Lucas Jellema
 

What's hot (20)

SAP Teched 2012 Session Tec3438 Automate IaaS SAP deployments
SAP Teched 2012 Session Tec3438 Automate IaaS SAP deploymentsSAP Teched 2012 Session Tec3438 Automate IaaS SAP deployments
SAP Teched 2012 Session Tec3438 Automate IaaS SAP deployments
 
3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud
 
RightScale Roadtrip Atlanta - Accelerate to Cloud
RightScale Roadtrip Atlanta - Accelerate to CloudRightScale Roadtrip Atlanta - Accelerate to Cloud
RightScale Roadtrip Atlanta - Accelerate to Cloud
 
Modernizing Your DNS Platform with NS1 and ThousandEyes
Modernizing Your DNS Platform with NS1 and ThousandEyesModernizing Your DNS Platform with NS1 and ThousandEyes
Modernizing Your DNS Platform with NS1 and ThousandEyes
 
DevOps and Cloud
DevOps and CloudDevOps and Cloud
DevOps and Cloud
 
16370 cics project opening and project update f
16370  cics project opening and project update f16370  cics project opening and project update f
16370 cics project opening and project update f
 
Your Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and ContainersYour Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
 
Accelerate to Cloud
Accelerate to CloudAccelerate to Cloud
Accelerate to Cloud
 
Red Hat Summit - Discover the foundations of digital transformation
Red Hat Summit - Discover the foundations of digital transformationRed Hat Summit - Discover the foundations of digital transformation
Red Hat Summit - Discover the foundations of digital transformation
 
Connect Expo 2015 - Australia - Bringing OpenStack into the Enterprise
Connect Expo 2015 - Australia - Bringing OpenStack into the EnterpriseConnect Expo 2015 - Australia - Bringing OpenStack into the Enterprise
Connect Expo 2015 - Australia - Bringing OpenStack into the Enterprise
 
ETL Is Dead, Long-live Streams
ETL Is Dead, Long-live StreamsETL Is Dead, Long-live Streams
ETL Is Dead, Long-live Streams
 
All daydevops 2016 - Turning Human Capital into High Performance Organizati...
All daydevops   2016 - Turning Human Capital into High Performance Organizati...All daydevops   2016 - Turning Human Capital into High Performance Organizati...
All daydevops 2016 - Turning Human Capital into High Performance Organizati...
 
The 7 Principles of DevOps and Cloud Applications
The 7 Principles of DevOps and Cloud ApplicationsThe 7 Principles of DevOps and Cloud Applications
The 7 Principles of DevOps and Cloud Applications
 
Why to Cloud Native
Why to Cloud NativeWhy to Cloud Native
Why to Cloud Native
 
Ultimate AppDev Stack is Cloud Suite
Ultimate AppDev Stack is Cloud SuiteUltimate AppDev Stack is Cloud Suite
Ultimate AppDev Stack is Cloud Suite
 
Red Hat Summit - What are your digital foundations?
Red Hat Summit - What are your digital foundations?Red Hat Summit - What are your digital foundations?
Red Hat Summit - What are your digital foundations?
 
Corporate-Overview-Slides
Corporate-Overview-SlidesCorporate-Overview-Slides
Corporate-Overview-Slides
 
Introduction to Microsoft R (Graph)
Introduction to Microsoft R (Graph)Introduction to Microsoft R (Graph)
Introduction to Microsoft R (Graph)
 
My Dad Won't Buy Me DevOps
My Dad Won't Buy Me DevOpsMy Dad Won't Buy Me DevOps
My Dad Won't Buy Me DevOps
 
The Application Server Platform of the Future - Container & Cloud Native and ...
The Application Server Platform of the Future - Container & Cloud Native and ...The Application Server Platform of the Future - Container & Cloud Native and ...
The Application Server Platform of the Future - Container & Cloud Native and ...
 

Similar to How Encirca Services by DuPont Pioneer Exited Their Data Center in Less Than Six Months - ENT213 - re:Invent 2017

AWS re:Invent 2016: Deploying Amazon WorkSpaces at Enterprise Scale to Delive...
AWS re:Invent 2016: Deploying Amazon WorkSpaces at Enterprise Scale to Delive...AWS re:Invent 2016: Deploying Amazon WorkSpaces at Enterprise Scale to Delive...
AWS re:Invent 2016: Deploying Amazon WorkSpaces at Enterprise Scale to Delive...Amazon Web Services
 
estrat AWS Cloud Breakfast
estrat AWS Cloud Breakfastestrat AWS Cloud Breakfast
estrat AWS Cloud BreakfastPaul Cooper
 
Building a Global Multi-Tenant Monitoring Platform
Building a Global Multi-Tenant Monitoring PlatformBuilding a Global Multi-Tenant Monitoring Platform
Building a Global Multi-Tenant Monitoring PlatformAmazon Web Services
 
Implementing Service Oriented Architecture
Implementing Service Oriented ArchitectureImplementing Service Oriented Architecture
Implementing Service Oriented ArchitectureAmazon Web Services
 
Implementing Service Oriented Architecture
Implementing Service Oriented Architecture Implementing Service Oriented Architecture
Implementing Service Oriented Architecture Amazon Web Services
 
Implementing Service Oriented Architecture
Implementing Service Oriented ArchitectureImplementing Service Oriented Architecture
Implementing Service Oriented ArchitectureAmazon Web Services
 
It summit 2014_migrating_applications_to_the_cloud-5
It summit 2014_migrating_applications_to_the_cloud-5It summit 2014_migrating_applications_to_the_cloud-5
It summit 2014_migrating_applications_to_the_cloud-5margaret_ronald
 
Risc and velostrata 2 28 2018 lessons_in_cloud_migration
Risc and velostrata  2 28 2018 lessons_in_cloud_migrationRisc and velostrata  2 28 2018 lessons_in_cloud_migration
Risc and velostrata 2 28 2018 lessons_in_cloud_migrationRISC Networks
 
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...RightScale
 
Digital transformation slideshare
Digital transformation   slideshareDigital transformation   slideshare
Digital transformation slideshareShivamPatsariya1
 
AWS vs Azure vs Google (GCP) - Slides
AWS vs Azure vs Google (GCP) - SlidesAWS vs Azure vs Google (GCP) - Slides
AWS vs Azure vs Google (GCP) - SlidesTobyWilman
 
Monolithic to Microservices + Docker = SDLC on Steroids!
Monolithic to Microservices + Docker = SDLC on Steroids!Monolithic to Microservices + Docker = SDLC on Steroids!
Monolithic to Microservices + Docker = SDLC on Steroids!Docker, Inc.
 
Right scale enterprise solution
Right scale enterprise solution Right scale enterprise solution
Right scale enterprise solution Brad , Yun Lee
 
Right scale enterprise solution
Right scale enterprise solution Right scale enterprise solution
Right scale enterprise solution Brad , Yun Lee
 
HOP! Airlines Jets to Real Time
HOP! Airlines Jets to Real TimeHOP! Airlines Jets to Real Time
HOP! Airlines Jets to Real Timeconfluent
 
Eliminate the Blind Spots in Your ServiceNow Discovery Environment
Eliminate the Blind Spots in Your ServiceNow Discovery EnvironmentEliminate the Blind Spots in Your ServiceNow Discovery Environment
Eliminate the Blind Spots in Your ServiceNow Discovery EnvironmentPrecisely
 

Similar to How Encirca Services by DuPont Pioneer Exited Their Data Center in Less Than Six Months - ENT213 - re:Invent 2017 (20)

Pentagon - Company Profile v1.4
Pentagon - Company Profile v1.4Pentagon - Company Profile v1.4
Pentagon - Company Profile v1.4
 
AWS re:Invent 2016: Deploying Amazon WorkSpaces at Enterprise Scale to Delive...
AWS re:Invent 2016: Deploying Amazon WorkSpaces at Enterprise Scale to Delive...AWS re:Invent 2016: Deploying Amazon WorkSpaces at Enterprise Scale to Delive...
AWS re:Invent 2016: Deploying Amazon WorkSpaces at Enterprise Scale to Delive...
 
estrat AWS Cloud Breakfast
estrat AWS Cloud Breakfastestrat AWS Cloud Breakfast
estrat AWS Cloud Breakfast
 
Building a Global Multi-Tenant Monitoring Platform
Building a Global Multi-Tenant Monitoring PlatformBuilding a Global Multi-Tenant Monitoring Platform
Building a Global Multi-Tenant Monitoring Platform
 
Implementing Service Oriented Architecture
Implementing Service Oriented ArchitectureImplementing Service Oriented Architecture
Implementing Service Oriented Architecture
 
Implementing Service Oriented Architecture
Implementing Service Oriented Architecture Implementing Service Oriented Architecture
Implementing Service Oriented Architecture
 
Implementing Service Oriented Architecture
Implementing Service Oriented ArchitectureImplementing Service Oriented Architecture
Implementing Service Oriented Architecture
 
It summit 2014_migrating_applications_to_the_cloud-5
It summit 2014_migrating_applications_to_the_cloud-5It summit 2014_migrating_applications_to_the_cloud-5
It summit 2014_migrating_applications_to_the_cloud-5
 
Risc and velostrata 2 28 2018 lessons_in_cloud_migration
Risc and velostrata  2 28 2018 lessons_in_cloud_migrationRisc and velostrata  2 28 2018 lessons_in_cloud_migration
Risc and velostrata 2 28 2018 lessons_in_cloud_migration
 
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
 
Digital transformation slideshare
Digital transformation   slideshareDigital transformation   slideshare
Digital transformation slideshare
 
AWS vs Azure vs Google (GCP) - Slides
AWS vs Azure vs Google (GCP) - SlidesAWS vs Azure vs Google (GCP) - Slides
AWS vs Azure vs Google (GCP) - Slides
 
Navigating Cloud and Multi-Cloud
Navigating Cloud and Multi-CloudNavigating Cloud and Multi-Cloud
Navigating Cloud and Multi-Cloud
 
Percona presentation v2
Percona presentation v2Percona presentation v2
Percona presentation v2
 
Monolithic to Microservices + Docker = SDLC on Steroids!
Monolithic to Microservices + Docker = SDLC on Steroids!Monolithic to Microservices + Docker = SDLC on Steroids!
Monolithic to Microservices + Docker = SDLC on Steroids!
 
Right scale enterprise solution
Right scale enterprise solution Right scale enterprise solution
Right scale enterprise solution
 
Right scale enterprise solution
Right scale enterprise solution Right scale enterprise solution
Right scale enterprise solution
 
HOP! Airlines Jets to Real Time
HOP! Airlines Jets to Real TimeHOP! Airlines Jets to Real Time
HOP! Airlines Jets to Real Time
 
DevOps Case Studies
DevOps Case StudiesDevOps Case Studies
DevOps Case Studies
 
Eliminate the Blind Spots in Your ServiceNow Discovery Environment
Eliminate the Blind Spots in Your ServiceNow Discovery EnvironmentEliminate the Blind Spots in Your ServiceNow Discovery Environment
Eliminate the Blind Spots in Your ServiceNow Discovery Environment
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

How Encirca Services by DuPont Pioneer Exited Their Data Center in Less Than Six Months - ENT213 - re:Invent 2017

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How Encirca Services by DuPont Pioneer Exited Their Data Center in Less Than Six Months N o v e m b e r 2 8 , 2 0 1 7 E N T 2 1 3 AWS re:INVENT
  • 2. 2 Agenda 1. Intro and Background 2. Challenges and Enablers 3. Migration Details 4. The Future I N T R O
  • 3. 3 What it takes to perform a lift- and-shift to Amazon Web Services (AWS) Takeaway I N T R O
  • 4. 4 Lift-and-Shift What? • Acloud migration strategy replicating in-house apps to the cloud without redesign and re-architecting Why? • Re-architecting is expensive • Risk mitigation • Quick wins • Improved HAand DR—Disaster Prevention I N T R O
  • 5. 5 Poll How many people— • Work for a company of > 1,000 employees? • Entire company on AWS? • Your area of your company is all-in on AWS? • Some workloads are on AWS? • Considering a migration to AWS? • Don’t think AWS is right for them? I N T R O
  • 7. 7 About Me From Des Moines, IA Graduate of University of Iowa Started in financial services Last 10 years in agriculture • DuPont Pioneer • Encirca services • Granular Background in software engineering and cloud architecture Email: brycehemme@granular.ag Twitter: @brycehemme Bryce Hemme – Director of Platform Engineering
  • 8. 8 B A C K G R O U N D Parent Companies Agriculture Seed Business Agriculture Software Business Agriculture Software Products Merged in 2017 Iowa-based seed company acquired by DuPont in 1999 Silicon Valley based software company acquired by DuPont in 2017 Atlanta-based software company acquired by DuPont in 2015Software product developed by DuPont Pioneer
  • 9. 9 B A C K G R O U N D Digital Agriculture
  • 10. 10 B A C K G R O U N D Digital Agriculture
  • 11. 11 B A C K G R O U N D Digital Agriculture Managing Farm as a Business Granular FMS Managing Critical Input AcreValue Advanced Agronomy Management Encirca® BUSINESS AGRONOMY LAND
  • 12. 12 Encirca Services B A C K G R O U N D Encirca Services by DuPont Pioneer provides advanced agronomic support, services and online analysis tools to help increase farmer productivity, profitability, and sustainability
  • 13. 13 Encirca Services • Four engineering staff in 2013…300+ in 2017 • Windows, Linux, massive relational databases and big compute • Started in on-premises data center • Small cloud footprint started in 2013 B A C K G R O U N D
  • 14. 14 The Team Front row: Nate Faue, Seraj Islam, Rashmi Shrestha Back row: Jeremy Hofman, Eduardo Gamboa, Nate Mecklenburg, Gary Jepsen, Robbie Hornung, Jason Thompson Not pictured: Ryan Zanger, Josh Kehoe, Andrew Lear I N T R O
  • 15. 15 Drivers for Our Cloud Migration • Growing company with reduced IT budgets • Silo between Dev and Ops • Limited automation • Desired autonomy • Need to innovate and move fast • Reliability T H E C H A L L E N G E
  • 17. 17 Convincing Leadership • Why would I leave a data center that costs me nothing? • Quantify the gains/quantify the cost of doing nothing • What is the cost of slowing innovation? • How much time is wasted due to org silos? (dev as opposed to ops) • What can be gained by increased reliability? • Market the cloud C H A L L E N G E S A N D E N A B L E R S
  • 19. 19 Now you’re likely responsible for… • Windows • Linux - CentOS • DBMS • Appliances PLATFORMS • Web, app, and DB servers • Load balancers • Web application firewalls • Source control • Build infrastructure—don’t forget Apple • Networking INFRASTRUCTURE SERVICES • DNS • Provisioning, patching, base images • Identity and access management • Monitoring • Security • Compliance C H A L L E N G E S A N D E N A B L E R S
  • 20. 20 What are the challenges we had to address to enable a successful migration?
  • 21. 21 People and Skills Issue • Engineering staff has limited knowledge of AWS and cloud engineering Solution • Hire these skills early, before you think you need them • Identify an internal evangelist (or two), get them proper training/exposure • Leverage AWS Solutions Architect to develop a training plan C H A L L E N G E S A N D E N A B L E R S
  • 22. 22 Admin Connectivity Issue • No dedicated connection from corporate network to AWS • Implementing would require significant help from corporate IT • Don’t want AWS resources facing Internet, except when necessary Solution • EC2 bastion hosts as SSH gateways • Follow hub-and-spoke model outlined by AWS • All traffic is tunneled through bastion hosts C H A L L E N G E S A N D E N A B L E R S http://amzn.to/2iX6gaN http://amzn.to/2yvQ7DE
  • 23. 23 Monitoring and Alerting Issue • Existing monitoring solutions work well for on-premise applications • Need insight into environment in order to self-support Solution • Heavily invest in SaaS based solutions • Monitor applications, infrastructure, and use logs to identify anomalies • Simple integration with AWS services provides additional insight C H A L L E N G E S A N D E N A B L E R S
  • 24. 24 Source Control and Builds Issue • All source control and build infrastructure lives inside corporate network Solution • Migrate to cloud hosted source control —GitLab • Develop scalable build system in the cloud —Jenkins • Develop tooling to make life easier at scale —Tauoneer and Jenkins DSL C H A L L E N G E S A N D E N A B L E R S
  • 25. 25 Authentication Issue • Used SAML 2.0 and a custom authentication provider • Not easily portable Solution • Migrated to Amazon Cognito user pools • Amazon Cognito and JWT fit much better with our needs C H A L L E N G E S A N D E N A B L E R S
  • 26. 26 API Gateway Routing Issue • Used third-party API Gateway appliance for complex routing scenarios • Used it as an authentication gateway, also—great for decoupling authentication from apps Solution • Custom-built Apache-based API Gateway • Built completely with infrastructure-as-code approach • Enhanced mod_authn_jwt to support Amazon Cognito JWTs C H A L L E N G E S A N D E N A B L E R S http://bit.ly/2xa8tWS
  • 27. 27 SQL Server Clustering Issue • Massive SQL Server cluster, too big for RDS • Requires high disk IOPS • SQL Server High Availability groups work for failover using Microsoft’s drivers, but not for other clients/drivers Solution • EC2 based SQL Server High Availability groups • Created RAID array using EBS volumes • HAProxy to the rescue—handles routing of failover traffic and is compatible with all clients/drivers C H A L L E N G E S A N D E N A B L E R S
  • 28. 28 Coupling to Internal Systems Issue • Dependencies to internal systems exist and no connectivity will exist post-lift-and-shift Solution • Identify dependencies early • Establish remediation plans • Focus engineers on implementing remediation C H A L L E N G E S A N D E N A B L E R S
  • 29. 29 Testing of Deployment Issue • Doing a large cutover to the cloud is highly risky Solution • Test release through identical environments • Run on premise and cloud in parallel—dogfooding • Plan for the worst, hope for the best C H A L L E N G E S A N D E N A B L E R S
  • 30. 30 Availability Zone - 1 Availability Zone - 2 API Gateways and Web Servers API Gateways and Web Servers Event Processing Event Processing Lift-and-Shift Account Elastic Load Balancer S3 Web Assets S3 Link Shared Account Cognito AccessLift-and-Shift Route 53 DNS Resolution Replication and Failover C H A L L E N G E S A N D E N A B L E R S VPC Peering w/ Other Accounts Corporate Data Center Jenkins and Source Control Testers Customers Customers and
  • 32. 32 Migration • Iterative over six months • Slowly moving through each environment • Production cutover started at 7:00 p.m. Saturday • < 15 minutes of downtime T H E M I G R A T I O N
  • 33. 33 Issues Encountered Increased error rates • Monitoring helped identify minor issues that were mostly related to performance Performance degraded • Use of CDC and full-sync of replicas causes contention • 1 DB in non-production didn’t mimic production (100 GB vs 4 TB) • Lack of same load in non-production caused resize of DB instances T H E M I G R A T I O N All issues resolved throughout the evening
  • 34. 34 T H E M I G R A T I O N API Error Rates Performance degradation Mistake in deploy job
  • 35. 35 T H E M I G R A T I O N API Response Time Shutdown of non-essential processing Cutover of traffic Performance degradation
  • 36. 36 T H E M I G R A T I O N Direct Customer Feedback Lift and Shift Team, I want to kiss all you…who moved everything to AWS. The speed…is exceptional. But what impressed me the most is how fast a crop zone change or DZ reset in Studio translates to Encirca! I do that more than the average bear and it was lightning fast! Everything looks and feels so good! Happiest day ever.
  • 38. 38 G O I N G C L O U D N A T I V E Where We’re Going • API redesign - AWS API Gateway,AWS Lambda, Python • Break up SQL Server DBs into smaller, domain-focused DBs - PostgreSQL, Amazon DynamoDB • More robust event messaging and event sourcing • Convergence of disparate systems - where it makes sense
  • 39. 39 Availability Zone - 1 Availability Zone - 2 API Gateways and Web Servers API Gateways and Web Servers Event Processing Event Processing Lift-and-Shift Account Elastic Load Balancer CloudNative Account VPC Peering Availability Zone - 1 Availability Zone - 2 S3 Web Assets S3 Link S3 Web Assets API Gateway Replication and Failover Microservices Microservices Redis Cache Redis Cache Replication DynamoDB SQS Shared Account Auth CloudFormation Amazon Cognito Route 53 DNS Resolution Replication and Failover G O I N G C L O U D N A T I V E
  • 40. 40 WE’RE HIRING! https://granular.ag/careers San Francisco, CA Des Moines, IA Cumming, GA Champaign, IL Email: brycehemme@granular.ag Twitter: @brycehemme