Lessons Learned from   Converting a Web Applicationto Multitenancy and Deploying it to      Amazon Web Services          u...
Thomas Witt@thomas_witt  http://twitter.com/thomas_witt
Since 1997 …      Director Product & Business Development                  http://www.infopark.de/
Great Websites run Infopark Founded in 1994 in Berlin CMS, CRM and Online Marketing Software Large Websites for Enterprises
References             http://www.infopark.de/references
References         infopark.de/references             http://www.infopark.de/references
What are we going to learn …                          Why did Infopark move to                          «The Cloud»™?     ...
Why?(You will be cloudified. Resistance is futile.)
Enterprise Software Installation sucks.
http://www.alexa.com/siteinfo/cortalconsors.de
http://www.alexa.com/siteinfo/bundestag.de
http://www.alexa.com/siteinfo/munich-airport.de
Modern Web-Siteshave to be cloud    based.
Our partner              http://aws.amazon.com/
Multitenancy   (Yes, we scale!)
“Multitenancy refers to a principlein software architecture where asingle instance of the softwareruns on a server, servin...
Enabling MultitenancyCreate a "shared nothing"architectureMove all configuration intothe databaseExtract background tasksCh...
Implementing DB switching is easytenant = request.host.split(.).firstbegin  @@db ||= CouchRest.database(tenant)rescue  rai...
System Architecture Fiona on SaaS                                                                 SaaS Cluster            ...
Use multipleAvailability Zones!http://broadcast.oreilly.com/2011/04/the-aws-outage-the-clouds-shining-moment.html
Database (Choose wisely)
Problems with SQL databases in the cloud Bottleneck Doesn‘t scale Single point of failure Adding new Replicas Consistent b...
SQL databases are not built for the      cloud.
NoSQL databases  ARE built for the       cloud.… by trading off consistency for partition tolerance              http://en...
Database backendAdvantages Simple handling Better replication Stability and reliability SchemalessLots of flavours CouchDB/...
Automatize! (Scalarium is your friend)
Your server – à la carte                 http://www.opscode.com/chef/
Auto Healing (and scaling)
Automatize using ScalariumAutomated Machine Installs No hassle with AMI Images Always install from scratch Using Chef Reci...
Security(… theres lots of interesting data in the cloud)
Have multiple AWS accounts         https://aws-portal.amazon.com/gp/aws/developer/account/
IAM
Use MFA Devices                  http://aws.amazon.com/mfa/
Security is important! Have multiple AWS accounts Use IAM • Rotate your keys • Use an MFA Device • Lock up your master acc...
People(The Human Factor)
“I dont «own» my data anymore.
“What about data privacy?
“Is your security good  enough?  How can I trust you?
“My job went to SaaS!
Have good answersto these questions.   (Try to rationalize the discussion)
Disadvantages?    What‘s missing?
Disadvantages? What‘s missing?Amazon Automated creation of multiple accounts with separate billing API for BillingScalariu...
Conclusion Have a scalable multitenancy architecture Automatize everything Don‘t forget The Human Factor
Thats a wrap!                                                                       Twitter: @infopark                    ...
Infopark AG - AWS Customer Presentation
Infopark AG - AWS Customer Presentation
Infopark AG - AWS Customer Presentation
Infopark AG - AWS Customer Presentation
Infopark AG - AWS Customer Presentation
Infopark AG - AWS Customer Presentation
Infopark AG - AWS Customer Presentation
Upcoming SlideShare
Loading in...5
×

Infopark AG - AWS Customer Presentation

4,061

Published on

Presentation on how Infopark AG uses AWS. AWS Tech Summit, Berlin, May 2011

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,061
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Infopark AG - AWS Customer Presentation

  1. 1. Lessons Learned from Converting a Web Applicationto Multitenancy and Deploying it to Amazon Web Services using Scalarium AWS Tech Summit for Developers and Architects Berlin, 2011-05-16
  2. 2. Thomas Witt@thomas_witt http://twitter.com/thomas_witt
  3. 3. Since 1997 … Director Product & Business Development http://www.infopark.de/
  4. 4. Great Websites run Infopark Founded in 1994 in Berlin CMS, CRM and Online Marketing Software Large Websites for Enterprises
  5. 5. References http://www.infopark.de/references
  6. 6. References infopark.de/references http://www.infopark.de/references
  7. 7. What are we going to learn … Why did Infopark move to «The Cloud»™? How did we do it? What did we learn from it?
  8. 8. Why?(You will be cloudified. Resistance is futile.)
  9. 9. Enterprise Software Installation sucks.
  10. 10. http://www.alexa.com/siteinfo/cortalconsors.de
  11. 11. http://www.alexa.com/siteinfo/bundestag.de
  12. 12. http://www.alexa.com/siteinfo/munich-airport.de
  13. 13. Modern Web-Siteshave to be cloud based.
  14. 14. Our partner http://aws.amazon.com/
  15. 15. Multitenancy (Yes, we scale!)
  16. 16. “Multitenancy refers to a principlein software architecture where asingle instance of the softwareruns on a server, serving multipleclient organizations (tenants). http://en.wikipedia.org/wiki/Multitenancy
  17. 17. Enabling MultitenancyCreate a "shared nothing"architectureMove all configuration intothe databaseExtract background tasksChoose database tenantwise
  18. 18. Implementing DB switching is easytenant = request.host.split(.).firstbegin @@db ||= CouchRest.database(tenant)rescue raise "tenant name #{tenant} doesnt exist"end
  19. 19. System Architecture Fiona on SaaS SaaS Cluster Scalarium SES: E-Mail AZ 1 AZ 2 AZ 3 EC2: EC2: EC2: EC2: EC2: EC2: S3: DB Fiona, OMC, Fiona, OMC, Fiona, OMC, Fiona, OMC, Fiona, OMC, Fiona, OMC, Assets Backup DB, Search DB, Search DB, Search DB, Search DB, Search DB, Search (Blobs) Server Redis/ Elastic Load Balancing: *.saas.infopark.net Resque Customer AZ 1 AZ 2 EC2: EC2: GitHub S3 Rails, Rails, DB Replica DB Replica + Hoptoad Cloud Front Elastic Load Balancing: CDN customer.com New Relic
  20. 20. Use multipleAvailability Zones!http://broadcast.oreilly.com/2011/04/the-aws-outage-the-clouds-shining-moment.html
  21. 21. Database (Choose wisely)
  22. 22. Problems with SQL databases in the cloud Bottleneck Doesn‘t scale Single point of failure Adding new Replicas Consistent backups Recovery times after crashes
  23. 23. SQL databases are not built for the cloud.
  24. 24. NoSQL databases ARE built for the cloud.… by trading off consistency for partition tolerance http://en.wikipedia.org/wiki/CAP_theorem
  25. 25. Database backendAdvantages Simple handling Better replication Stability and reliability SchemalessLots of flavours CouchDB/BigCouch, SimpleDB, MongoDB, …We have chosen BigCouch. http://couchdb.apache.org/
  26. 26. Automatize! (Scalarium is your friend)
  27. 27. Your server – à la carte http://www.opscode.com/chef/
  28. 28. Auto Healing (and scaling)
  29. 29. Automatize using ScalariumAutomated Machine Installs No hassle with AMI Images Always install from scratch Using Chef RecipesMonitoring and Scaling Auto Healing Time Based Scaling Load Based Scaling http://www.scalarium.com/
  30. 30. Security(… theres lots of interesting data in the cloud)
  31. 31. Have multiple AWS accounts https://aws-portal.amazon.com/gp/aws/developer/account/
  32. 32. IAM
  33. 33. Use MFA Devices http://aws.amazon.com/mfa/
  34. 34. Security is important! Have multiple AWS accounts Use IAM • Rotate your keys • Use an MFA Device • Lock up your master account Clear concept how to handle policies, accounts, groups Have lots of Account/Key Pairs with restricted access Automatize everything • Security Groups • Regular Firewall checks • Account creation / deletion
  35. 35. People(The Human Factor)
  36. 36. “I dont «own» my data anymore.
  37. 37. “What about data privacy?
  38. 38. “Is your security good enough? How can I trust you?
  39. 39. “My job went to SaaS!
  40. 40. Have good answersto these questions. (Try to rationalize the discussion)
  41. 41. Disadvantages? What‘s missing?
  42. 42. Disadvantages? What‘s missing?Amazon Automated creation of multiple accounts with separate billing API for BillingScalarium Access Rights Security Groups MFA Support
  43. 43. Conclusion Have a scalable multitenancy architecture Automatize everything Don‘t forget The Human Factor
  44. 44. Thats a wrap! Twitter: @infopark facebook.com/infopark Thank you! Thomas Witt Director Product & Business Development thomas.witt@infopark.de +49-151-140690-23 Twitter: @thomas_witt Infopark AG • Kitzingstraße 15 • D-12277 Berlin • www.infopark.de • info@infopark.de

×