SlideShare une entreprise Scribd logo
1  sur  40
MongoDB and AWS
Integrating with AWS Services
Partner Technical Solutions, MongoDB Inc.
Sandeep Parikh
#mongodb
Recap: Deployment and Availability
• MongoDB basics
• Deployment configurations
• Instance types
• Best practices
• Slides and recording:
– http://www.mongodb.com/presentations/mongodb-and-
amazon-web-services-deploying-high-availability
Recap: Storage Configurations
• Storage options
• Simple recommendations
• Backup and restore
• Advanced configurations
• Slides and recording:
– http://www.mongodb.com/presentations/mongodb-and-
amazon-web-services-storage-options-mongodb-
deployments
Agenda
• Available Services
• Integrations
• Infrastucture
• Future Directions
• Questions
Available Services
AWS Services
Compute Storage Persistent IPs DNS
Hadoop
Data
Warehouse
Stream
processing
App
deployment
Orchestration Provisioning App services Caching
AWS Services
Compute Storage Persistent IPs DNS
Hadoop
Data
Warehouse
Stream
processing
App
deployment
Orchestration Provisioning Security Caching
Integrations
CloudFormation
• Simplify provisioning and deployment
• JSON-based templates
• Manage like source code
• Specify all manner ofAWS components
• Boostrap for other tools like Chef or Puppet
"Parameters" : {
"KeyPairName" : {
"Description" : "EC2 KeyPair to enable SSH access",
"Type" : "String"
},
"SecurityGroupName" : {
"Description" : "EC2 Security Group",
"Type" : "String”
},
"InstanceType" : {
"Type" : "String",
"Default" : ”m3.large",
"AllowedValues" : [”m3.large”,”m3.xlarge”,”m3.2xlarge”],
"Description" : "EC2 instance type"
}
},
CloudFormation Sample
"Properties" : {
"InstanceType" : { "Ref" : "InstanceType" },
"ImageId" : { … },
"SecurityGroups" : [{ "Ref”: “SecurityGroupName" }],
"KeyName" : { "Ref" : "KeyPairName" },
"EbsOptimized" : "true",
"BlockDeviceMappings" : [{
"DeviceName" : "/dev/xvdf",
"Ebs" : { "VolumeSize" : "200”, "Iops" : "1000",
"VolumeType" : "io1”, "DeleteOnTermination" : “false”
}}]
CloudFormation Sample
CloudFormation Templates
• https://github.com/crcsmnky/aws-cfn-mongodb
• Templates to launch single-node MongoDB
deployment
• Each one implements our best practices
– EBS-optimized, PIOPS, ulimit, readahead
• Used to generateAWS Marketplace instances
CloudFormation Templates
Clone the
repo
Upload the
CF template
Instance
provisioning
starts
Instance
clones repo
Instance runs
setup script
Instance
provisioned
and deployed
CloudFormation Tools
• https://github.com/cloudtools/troposphere
• Python package to generate CF templates
• Next versions of our templates will leverage this
• Coming soon: Replica Sets
• Coming later: Sharded Cluster
Elastic Map Reduce
• Quickly deploy and run Hadoop in AWS
• Tuned distributions to run on top of EC2
• Provision deployments with any number of nodes
• Supports Spot and Reserved pricing for savings
EMR and MongoDB
• https://github.com/mongodb/mongo-hadoop
• MongoDB-Hadoop connector
– Bi-directional access to/from MongoDB
• Supports MapReduce, Hive, Pig, Streaming
• Read/write from
– MongoDB deployments or
– BSON backup files
EMR with MongoDB
MongoDB
BSON
S3
EMR
EMR
EMR
EMR
EMR
EMR
EMR
EMR
EMR
EMR
EMR Workflow
Bootstrap script
• MongoDB-Hadoop
• MongoDB Java
driver
Copy resources
• Bootstrap script
• MapReduce job
Launch EMR
• Instance type
• Instance count
• Arguments
MapReduce
Output
• MongoDB
• BSON in S3
EMR Logs
• Written to S3
$ elastic-mapreduce --create --jobflow ENRON000
--instance-type m1.xlarge --num-instances 5
--bootstrap-action s3://$S3_BUCKET/bootstrap.sh
--log-uri s3://$S3_BUCKET/enron_logs
--jar s3://$S3_BUCKET/enron-example.jar
--arg -D --arg mongo.job.input.format =
com.mongodb.hadoop.BSONFileInputFormat
--arg -D --arg mapred.input.dir =
s3n://mongo-test-data/messages.bson
--arg -D --arg mapred.output.dir =
s3n://$S3_BUCKET/BSON_OUT
--arg -D --arg mongo.job.output.format =
com.mongodb.hadoop.BSONFileOutputFormat
EMR Launch
Elastic Beanstalk
• Deploy and manage applications
• Handles provisioning, scaling, load balancing
• Built on EC2, S3, SNS,Auto Scaling
Elastic Beanstalk Architecture
App
Serve
r
App
Serve
r
App
Serve
r
Security Group
Elastic Load Balancer
Auto Scaling Group
Elastic Beanstalk with MongoDB
App
Serve
r
App
Serve
r
App
Serve
r
Security Group
Elastic Load Balancer
Auto Scaling Group
mongo
s
mongo
s
mongo
s
MongoDB
Elastic Beanstalk with MongoDB
• Customize and configure software that your app
needs (e.g. mongos)
• Install packages
• Create files
• Execute commands (before or after app is setup)
• Control system services
• http://docs.aws.amazon.com/elasticbeanstalk/latest/
dg/customize-containers-ec2.html
Infrastructure
Elastic IPs
• EC2 instances use dynamic IP addresses
• EIPs are static addresses that can be assigned to
individual EC2 instances
• Unfortunately you have a limited number
Route53
• Highly available and scalable DNS service in AWS
• Hostnames can be assigned to EC2 instances, ELB
instances, or S3 buckets
• DNS load balancing with weighted-round-robin
• Supports hostnames for non-AWS infrastructure
Route53 and MongoDB
• Short answer: use hostnames for all components
• With replica sets, hostnames can ease machine
replacement
• With sharded clusters, hostnames can simplify
config server maintenance
VPC
• Virtual Private Cloud lets you provision a logically
isolated network insideAWS
• You manage all aspects of networking including
– IP address ranges
– Subnets
– Routing tables and gateways
• Can be used as an extension to an offsite data
center with Hardware VPN
VPC Public and Private
http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_In
troduction.html
• Private subnets hidden
to outside world
• Internet Gateway and
EIPs can be used to
access
• Web tier in public
subnet
• Data tier in private
subnet
ElastiCache
• Distributed in-memory cache
• Backed by Memecached or Redis
• Can be a drop-in replacement for existing cache
deployments
• Supports auto-discovery and read-replicas
Future Directions
RedShift
• Fully-managed petabyte-scale data warehouse
service
• MongoDB not natively supported as a data source
• … So how do you get your data in?
Data Pipeline
• Process and move data between differentAWS compute and
storage services
• Date Pipeline handles resources, failures, and dependencies
http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/what-is-datapipeline.html
Data Pipeline with MongoDB
AWS Data Pipeline
MongoDB
S3
EMRor
Redshift
OpsWorks
• Complete DevOps stack
• Model and manage apps, load
balancers, databases
• Uses Chef recipes
• Load or time-based scaling
• Deploying MongoDB with OpsWorks:
– http://blogs.aws.amazon.com/application-
management/post/Tx1RB65XDMNVLUA/Deploying-
MongoDB-with-OpsWorks
CloudWatch
• Monitoring for
AWS
resources
• Supports
custom metrics
http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.ht
ml
aws cloudwatch put-metric-data
--metric-name ResidentMemory
--namespace MongoDB
--timestamp 2014-02-14T20:30:00Z
--value 32
--unit Gigabytes
CloudWatch Custom Metrics
Questions?
MongoDB World
New York City, June 23-25
#MongoDBWorld
See what’s next in MongoDB including
• MongoDB 2.6
• Sharding
• Replication
• Aggregation
http://world.mongodb.com
Save 25% with discount code 25SandeepParikh

Contenu connexe

Tendances

Tendances (20)

Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...
Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...
Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...
 
Amazon Web Services - Relational Database Service Meetup
Amazon Web Services - Relational Database Service MeetupAmazon Web Services - Relational Database Service Meetup
Amazon Web Services - Relational Database Service Meetup
 
Compare DynamoDB vs. MongoDB
Compare DynamoDB vs. MongoDBCompare DynamoDB vs. MongoDB
Compare DynamoDB vs. MongoDB
 
SRV413 Deep Dive on Elastic Block Storage (Amazon EBS)
SRV413 Deep Dive on Elastic Block Storage (Amazon EBS)SRV413 Deep Dive on Elastic Block Storage (Amazon EBS)
SRV413 Deep Dive on Elastic Block Storage (Amazon EBS)
 
AWS re:Invent 2016: Case Study: Librato's Experience Running Cassandra Using ...
AWS re:Invent 2016: Case Study: Librato's Experience Running Cassandra Using ...AWS re:Invent 2016: Case Study: Librato's Experience Running Cassandra Using ...
AWS re:Invent 2016: Case Study: Librato's Experience Running Cassandra Using ...
 
Running MongoDB 3.0 on AWS
Running MongoDB 3.0 on AWSRunning MongoDB 3.0 on AWS
Running MongoDB 3.0 on AWS
 
Choosing the Right Database Service (김상필, 유타카 호시노) - AWS DB Day
Choosing the Right Database Service (김상필, 유타카 호시노) - AWS DB DayChoosing the Right Database Service (김상필, 유타카 호시노) - AWS DB Day
Choosing the Right Database Service (김상필, 유타카 호시노) - AWS DB Day
 
(BDT305) Lessons Learned and Best Practices for Running Hadoop on AWS | AWS r...
(BDT305) Lessons Learned and Best Practices for Running Hadoop on AWS | AWS r...(BDT305) Lessons Learned and Best Practices for Running Hadoop on AWS | AWS r...
(BDT305) Lessons Learned and Best Practices for Running Hadoop on AWS | AWS r...
 
Getting Started with Amazon Redshift
Getting Started with Amazon RedshiftGetting Started with Amazon Redshift
Getting Started with Amazon Redshift
 
Bases de datos en la nube con AWS
Bases de datos en la nube con AWSBases de datos en la nube con AWS
Bases de datos en la nube con AWS
 
Amazon RDS for Microsoft SQL: Performance, Security, Best Practices (DAT303) ...
Amazon RDS for Microsoft SQL: Performance, Security, Best Practices (DAT303) ...Amazon RDS for Microsoft SQL: Performance, Security, Best Practices (DAT303) ...
Amazon RDS for Microsoft SQL: Performance, Security, Best Practices (DAT303) ...
 
Cloud Storage in Azure, AWS and Google Cloud
Cloud  Storage in Azure, AWS and Google CloudCloud  Storage in Azure, AWS and Google Cloud
Cloud Storage in Azure, AWS and Google Cloud
 
Getting Started with Amazon EC2 and Compute Services
Getting Started with Amazon EC2 and Compute ServicesGetting Started with Amazon EC2 and Compute Services
Getting Started with Amazon EC2 and Compute Services
 
AWS 마이그레이션 서비스 - 김일호 :: 2015 리인벤트 리캡 게이밍
AWS 마이그레이션 서비스 - 김일호 :: 2015 리인벤트 리캡 게이밍AWS 마이그레이션 서비스 - 김일호 :: 2015 리인벤트 리캡 게이밍
AWS 마이그레이션 서비스 - 김일호 :: 2015 리인벤트 리캡 게이밍
 
Everything You Need for a Viral Game (Except the Game)
Everything You Need for a Viral Game (Except the Game)Everything You Need for a Viral Game (Except the Game)
Everything You Need for a Viral Game (Except the Game)
 
Deep Dive on Amazon Elastic Block Store
Deep Dive on Amazon Elastic Block StoreDeep Dive on Amazon Elastic Block Store
Deep Dive on Amazon Elastic Block Store
 
Intro to AWS: Database Services
Intro to AWS: Database ServicesIntro to AWS: Database Services
Intro to AWS: Database Services
 
Understanding AWS Storage Options
Understanding AWS Storage OptionsUnderstanding AWS Storage Options
Understanding AWS Storage Options
 
AWS Summit London 2014 | Maximising EC2 and EBC Performance (400)
AWS Summit London 2014 | Maximising EC2 and EBC Performance (400)AWS Summit London 2014 | Maximising EC2 and EBC Performance (400)
AWS Summit London 2014 | Maximising EC2 and EBC Performance (400)
 
Making (Almost) Any Database Faster and Cheaper with Caching
Making (Almost) Any Database Faster and Cheaper with CachingMaking (Almost) Any Database Faster and Cheaper with Caching
Making (Almost) Any Database Faster and Cheaper with Caching
 

En vedette

[110730/아꿈사발표자료] mongo db 완벽 가이드 : 7장 '고급기능'
[110730/아꿈사발표자료] mongo db 완벽 가이드 : 7장 '고급기능'[110730/아꿈사발표자료] mongo db 완벽 가이드 : 7장 '고급기능'
[110730/아꿈사발표자료] mongo db 완벽 가이드 : 7장 '고급기능'
sung ki choi
 
Mongodb 특징 분석
Mongodb 특징 분석Mongodb 특징 분석
Mongodb 특징 분석
Daeyong Shin
 
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
Amazon Web Services
 

En vedette (20)

AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...
AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...
AWS re:Invent 2016: How Thermo Fisher Is Reducing Mass Spectrometry Experimen...
 
Best Practices for Running MongoDB on AWS - AWS May 2016 Webinar Series
Best Practices for Running MongoDB on AWS - AWS May 2016 Webinar SeriesBest Practices for Running MongoDB on AWS - AWS May 2016 Webinar Series
Best Practices for Running MongoDB on AWS - AWS May 2016 Webinar Series
 
AWS OpsWorks Under the Hood (DMG304) | AWS re:Invent 2013
AWS OpsWorks Under the Hood (DMG304) | AWS re:Invent 2013AWS OpsWorks Under the Hood (DMG304) | AWS re:Invent 2013
AWS OpsWorks Under the Hood (DMG304) | AWS re:Invent 2013
 
MongoDB on AWS in 5 min
MongoDB on AWS in 5 minMongoDB on AWS in 5 min
MongoDB on AWS in 5 min
 
Scaling MongoDB on AWS
Scaling MongoDB on AWSScaling MongoDB on AWS
Scaling MongoDB on AWS
 
MongoDB Ops Manager
MongoDB Ops ManagerMongoDB Ops Manager
MongoDB Ops Manager
 
(BDT205) Your First Big Data Application On AWS
(BDT205) Your First Big Data Application On AWS(BDT205) Your First Big Data Application On AWS
(BDT205) Your First Big Data Application On AWS
 
[110730/아꿈사발표자료] mongo db 완벽 가이드 : 7장 '고급기능'
[110730/아꿈사발표자료] mongo db 완벽 가이드 : 7장 '고급기능'[110730/아꿈사발표자료] mongo db 완벽 가이드 : 7장 '고급기능'
[110730/아꿈사발표자료] mongo db 완벽 가이드 : 7장 '고급기능'
 
Mongodb 특징 분석
Mongodb 특징 분석Mongodb 특징 분석
Mongodb 특징 분석
 
Mongodb 관리
Mongodb 관리Mongodb 관리
Mongodb 관리
 
Mongo db monitoring 어떤 것이 좋을까(mongodb korea, 김인범)
Mongo db monitoring 어떤 것이 좋을까(mongodb korea, 김인범)Mongo db monitoring 어떤 것이 좋을까(mongodb korea, 김인범)
Mongo db monitoring 어떤 것이 좋을까(mongodb korea, 김인범)
 
An Introduction to MongoDB Ops Manager
An Introduction to MongoDB Ops ManagerAn Introduction to MongoDB Ops Manager
An Introduction to MongoDB Ops Manager
 
Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기
 
Mongo DB 성능최적화 전략
Mongo DB 성능최적화 전략Mongo DB 성능최적화 전략
Mongo DB 성능최적화 전략
 
How to monitor MongoDB
How to monitor MongoDBHow to monitor MongoDB
How to monitor MongoDB
 
(BDT303) Construct Your ETL Pipeline with AWS Data Pipeline, Amazon EMR, and ...
(BDT303) Construct Your ETL Pipeline with AWS Data Pipeline, Amazon EMR, and ...(BDT303) Construct Your ETL Pipeline with AWS Data Pipeline, Amazon EMR, and ...
(BDT303) Construct Your ETL Pipeline with AWS Data Pipeline, Amazon EMR, and ...
 
Big Data Architectural Patterns
Big Data Architectural PatternsBig Data Architectural Patterns
Big Data Architectural Patterns
 
The Buffer Culture (with a new 10th value)
The Buffer Culture (with a new 10th value)The Buffer Culture (with a new 10th value)
The Buffer Culture (with a new 10th value)
 
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
 
AWS re:Invent 2016: Big Data Architectural Patterns and Best Practices on AWS...
AWS re:Invent 2016: Big Data Architectural Patterns and Best Practices on AWS...AWS re:Invent 2016: Big Data Architectural Patterns and Best Practices on AWS...
AWS re:Invent 2016: Big Data Architectural Patterns and Best Practices on AWS...
 

Similaire à MongoDB and AWS: Integrations

Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWSMigrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
Tom Laszewski
 

Similaire à MongoDB and AWS: Integrations (20)

Best Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft AzureBest Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft Azure
 
Amazon relational database service (rds)
Amazon relational database service (rds)Amazon relational database service (rds)
Amazon relational database service (rds)
 
DevOpsCon Cloud Workshop
DevOpsCon Cloud Workshop DevOpsCon Cloud Workshop
DevOpsCon Cloud Workshop
 
How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...
How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...
How Netflix’s Tools Can Help Accelerate Your Start-up (SVC202) | AWS re:Inven...
 
An MPI-IO Cloud Cluster Bioinformatics Summer Project (BDT205) | AWS re:Inven...
An MPI-IO Cloud Cluster Bioinformatics Summer Project (BDT205) | AWS re:Inven...An MPI-IO Cloud Cluster Bioinformatics Summer Project (BDT205) | AWS re:Inven...
An MPI-IO Cloud Cluster Bioinformatics Summer Project (BDT205) | AWS re:Inven...
 
Deep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
Deep Dive on AWS Lambda - January 2017 AWS Online Tech TalksDeep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
Deep Dive on AWS Lambda - January 2017 AWS Online Tech Talks
 
Best of re:Invent
Best of re:InventBest of re:Invent
Best of re:Invent
 
Migrating enterprise workloads to AWS
Migrating enterprise workloads to AWSMigrating enterprise workloads to AWS
Migrating enterprise workloads to AWS
 
Migrate from SQL Server or Oracle into Amazon Aurora using AWS Database Migra...
Migrate from SQL Server or Oracle into Amazon Aurora using AWS Database Migra...Migrate from SQL Server or Oracle into Amazon Aurora using AWS Database Migra...
Migrate from SQL Server or Oracle into Amazon Aurora using AWS Database Migra...
 
Svc 202-netflix-open-source
Svc 202-netflix-open-sourceSvc 202-netflix-open-source
Svc 202-netflix-open-source
 
AWS re:Invent 2016: Workshop: Using the Database Migration Service (DMS) for ...
AWS re:Invent 2016: Workshop: Using the Database Migration Service (DMS) for ...AWS re:Invent 2016: Workshop: Using the Database Migration Service (DMS) for ...
AWS re:Invent 2016: Workshop: Using the Database Migration Service (DMS) for ...
 
Aws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon ElishaAws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon Elisha
 
BDA 302 Deep Dive on Migrating Big Data Workloads to Amazon EMR
BDA 302 Deep Dive on Migrating Big Data Workloads to Amazon EMRBDA 302 Deep Dive on Migrating Big Data Workloads to Amazon EMR
BDA 302 Deep Dive on Migrating Big Data Workloads to Amazon EMR
 
Create cloud service on AWS
Create cloud service on AWSCreate cloud service on AWS
Create cloud service on AWS
 
Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...
Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...
Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...
 
Day 3 - AWS MySQL Relational Database Service Best Practices for Performance ...
Day 3 - AWS MySQL Relational Database Service Best Practices for Performance ...Day 3 - AWS MySQL Relational Database Service Best Practices for Performance ...
Day 3 - AWS MySQL Relational Database Service Best Practices for Performance ...
 
Day 2 - Amazon RDS - Letting AWS run your Low Admin, High Performance Database
Day 2 - Amazon RDS - Letting AWS run your Low Admin, High Performance DatabaseDay 2 - Amazon RDS - Letting AWS run your Low Admin, High Performance Database
Day 2 - Amazon RDS - Letting AWS run your Low Admin, High Performance Database
 
A Tale of 2 Systems
A Tale of 2 SystemsA Tale of 2 Systems
A Tale of 2 Systems
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
 
Webinar: Serverless Architectures with AWS Lambda and MongoDB Atlas
Webinar: Serverless Architectures with AWS Lambda and MongoDB AtlasWebinar: Serverless Architectures with AWS Lambda and MongoDB Atlas
Webinar: Serverless Architectures with AWS Lambda and MongoDB Atlas
 

Plus de MongoDB

Plus de MongoDB (20)

MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
 
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
 
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
 
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDBMongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
 
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
 
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series DataMongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
 
MongoDB SoCal 2020: MongoDB Atlas Jump Start
 MongoDB SoCal 2020: MongoDB Atlas Jump Start MongoDB SoCal 2020: MongoDB Atlas Jump Start
MongoDB SoCal 2020: MongoDB Atlas Jump Start
 
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
 
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
 
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
 
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
 
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your MindsetMongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
 
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas JumpstartMongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
 
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
 
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
 
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
 
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep DiveMongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
 
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & GolangMongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
 
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
 
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Dernier (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

MongoDB and AWS: Integrations

  • 1. MongoDB and AWS Integrating with AWS Services Partner Technical Solutions, MongoDB Inc. Sandeep Parikh #mongodb
  • 2. Recap: Deployment and Availability • MongoDB basics • Deployment configurations • Instance types • Best practices • Slides and recording: – http://www.mongodb.com/presentations/mongodb-and- amazon-web-services-deploying-high-availability
  • 3. Recap: Storage Configurations • Storage options • Simple recommendations • Backup and restore • Advanced configurations • Slides and recording: – http://www.mongodb.com/presentations/mongodb-and- amazon-web-services-storage-options-mongodb- deployments
  • 4. Agenda • Available Services • Integrations • Infrastucture • Future Directions • Questions
  • 6. AWS Services Compute Storage Persistent IPs DNS Hadoop Data Warehouse Stream processing App deployment Orchestration Provisioning App services Caching
  • 7. AWS Services Compute Storage Persistent IPs DNS Hadoop Data Warehouse Stream processing App deployment Orchestration Provisioning Security Caching
  • 9. CloudFormation • Simplify provisioning and deployment • JSON-based templates • Manage like source code • Specify all manner ofAWS components • Boostrap for other tools like Chef or Puppet
  • 10. "Parameters" : { "KeyPairName" : { "Description" : "EC2 KeyPair to enable SSH access", "Type" : "String" }, "SecurityGroupName" : { "Description" : "EC2 Security Group", "Type" : "String” }, "InstanceType" : { "Type" : "String", "Default" : ”m3.large", "AllowedValues" : [”m3.large”,”m3.xlarge”,”m3.2xlarge”], "Description" : "EC2 instance type" } }, CloudFormation Sample
  • 11. "Properties" : { "InstanceType" : { "Ref" : "InstanceType" }, "ImageId" : { … }, "SecurityGroups" : [{ "Ref”: “SecurityGroupName" }], "KeyName" : { "Ref" : "KeyPairName" }, "EbsOptimized" : "true", "BlockDeviceMappings" : [{ "DeviceName" : "/dev/xvdf", "Ebs" : { "VolumeSize" : "200”, "Iops" : "1000", "VolumeType" : "io1”, "DeleteOnTermination" : “false” }}] CloudFormation Sample
  • 12. CloudFormation Templates • https://github.com/crcsmnky/aws-cfn-mongodb • Templates to launch single-node MongoDB deployment • Each one implements our best practices – EBS-optimized, PIOPS, ulimit, readahead • Used to generateAWS Marketplace instances
  • 13. CloudFormation Templates Clone the repo Upload the CF template Instance provisioning starts Instance clones repo Instance runs setup script Instance provisioned and deployed
  • 14. CloudFormation Tools • https://github.com/cloudtools/troposphere • Python package to generate CF templates • Next versions of our templates will leverage this • Coming soon: Replica Sets • Coming later: Sharded Cluster
  • 15.
  • 16. Elastic Map Reduce • Quickly deploy and run Hadoop in AWS • Tuned distributions to run on top of EC2 • Provision deployments with any number of nodes • Supports Spot and Reserved pricing for savings
  • 17. EMR and MongoDB • https://github.com/mongodb/mongo-hadoop • MongoDB-Hadoop connector – Bi-directional access to/from MongoDB • Supports MapReduce, Hive, Pig, Streaming • Read/write from – MongoDB deployments or – BSON backup files
  • 19. EMR Workflow Bootstrap script • MongoDB-Hadoop • MongoDB Java driver Copy resources • Bootstrap script • MapReduce job Launch EMR • Instance type • Instance count • Arguments MapReduce Output • MongoDB • BSON in S3 EMR Logs • Written to S3
  • 20. $ elastic-mapreduce --create --jobflow ENRON000 --instance-type m1.xlarge --num-instances 5 --bootstrap-action s3://$S3_BUCKET/bootstrap.sh --log-uri s3://$S3_BUCKET/enron_logs --jar s3://$S3_BUCKET/enron-example.jar --arg -D --arg mongo.job.input.format = com.mongodb.hadoop.BSONFileInputFormat --arg -D --arg mapred.input.dir = s3n://mongo-test-data/messages.bson --arg -D --arg mapred.output.dir = s3n://$S3_BUCKET/BSON_OUT --arg -D --arg mongo.job.output.format = com.mongodb.hadoop.BSONFileOutputFormat EMR Launch
  • 21. Elastic Beanstalk • Deploy and manage applications • Handles provisioning, scaling, load balancing • Built on EC2, S3, SNS,Auto Scaling
  • 22. Elastic Beanstalk Architecture App Serve r App Serve r App Serve r Security Group Elastic Load Balancer Auto Scaling Group
  • 23. Elastic Beanstalk with MongoDB App Serve r App Serve r App Serve r Security Group Elastic Load Balancer Auto Scaling Group mongo s mongo s mongo s MongoDB
  • 24. Elastic Beanstalk with MongoDB • Customize and configure software that your app needs (e.g. mongos) • Install packages • Create files • Execute commands (before or after app is setup) • Control system services • http://docs.aws.amazon.com/elasticbeanstalk/latest/ dg/customize-containers-ec2.html
  • 26. Elastic IPs • EC2 instances use dynamic IP addresses • EIPs are static addresses that can be assigned to individual EC2 instances • Unfortunately you have a limited number
  • 27. Route53 • Highly available and scalable DNS service in AWS • Hostnames can be assigned to EC2 instances, ELB instances, or S3 buckets • DNS load balancing with weighted-round-robin • Supports hostnames for non-AWS infrastructure
  • 28. Route53 and MongoDB • Short answer: use hostnames for all components • With replica sets, hostnames can ease machine replacement • With sharded clusters, hostnames can simplify config server maintenance
  • 29. VPC • Virtual Private Cloud lets you provision a logically isolated network insideAWS • You manage all aspects of networking including – IP address ranges – Subnets – Routing tables and gateways • Can be used as an extension to an offsite data center with Hardware VPN
  • 30. VPC Public and Private http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_In troduction.html • Private subnets hidden to outside world • Internet Gateway and EIPs can be used to access • Web tier in public subnet • Data tier in private subnet
  • 31. ElastiCache • Distributed in-memory cache • Backed by Memecached or Redis • Can be a drop-in replacement for existing cache deployments • Supports auto-discovery and read-replicas
  • 33. RedShift • Fully-managed petabyte-scale data warehouse service • MongoDB not natively supported as a data source • … So how do you get your data in?
  • 34. Data Pipeline • Process and move data between differentAWS compute and storage services • Date Pipeline handles resources, failures, and dependencies http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/what-is-datapipeline.html
  • 35. Data Pipeline with MongoDB AWS Data Pipeline MongoDB S3 EMRor Redshift
  • 36. OpsWorks • Complete DevOps stack • Model and manage apps, load balancers, databases • Uses Chef recipes • Load or time-based scaling • Deploying MongoDB with OpsWorks: – http://blogs.aws.amazon.com/application- management/post/Tx1RB65XDMNVLUA/Deploying- MongoDB-with-OpsWorks
  • 37. CloudWatch • Monitoring for AWS resources • Supports custom metrics http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.ht ml
  • 38. aws cloudwatch put-metric-data --metric-name ResidentMemory --namespace MongoDB --timestamp 2014-02-14T20:30:00Z --value 32 --unit Gigabytes CloudWatch Custom Metrics
  • 40. MongoDB World New York City, June 23-25 #MongoDBWorld See what’s next in MongoDB including • MongoDB 2.6 • Sharding • Replication • Aggregation http://world.mongodb.com Save 25% with discount code 25SandeepParikh