2. Who am I?
• Cofounder/CTO of RSAWEB & other companies in
RAMPGroup
• Chief Architect / Product owner of RSAWEBCloud.com
• Twitter: @markslingsby
• mark@rsaweb.co.za
3.
4. Content
• Intro to Cloud/Iaas/Paas
• Infrastructure Evolution
• RSAWEBCloud.com (a Ruby project)
• Scaling
•
5. The Goal
IT as a Service
Just like the Telephone or Electricity
• Inexpensive, pay as you go
• Usage and consumption based
• Always up and Available
• Reliable
• Choice of providers
6. The Evolution of Applications
Cloud
Web
PC/Client-Server
Mainframe
4
7. Different types of Cloud Computing
3 Main Types:
SaaS = Application/Information – Sometimes referred
to as Software-as-a-Service, a wide ranging services
delivered via varied business models normally
available as public offering.
PaaS = Development – Sometimes referred
to as Platform-as-a-Service, application development
platforms enable application authoring and runtime
environment.
IaaS = Infrastructure – Sometimes referred
to as elastic compute clouds or Infrastructure-as-a-
Service, virtual hardware made available for varied
uses.
2 Main Deployment External – Accessible Internal – Behind
over the internet for corporate firewall for use
Environments general consumption by limited, pre-
determined audience
9. as a Service examples
Application/
Information
(SaaS)
Development
(PaaS)
Infrastructure
(IaaS)
10. What is IaaS?
• Utility computing service and billing model.
• Automation of administrative tasks.
• Dynamic scaling.
• Desktop virtualization.
• Policy-based services.
• Internet connectivity.
12. Client owned hardware
The Dark Ages: Client managed maintenance
Weeks to set up
Colocation Weeks to order and configure
Redundancy expensive to setup
13. Leased hardware
The Present:
Managed maintenance
Days to set up
Dedicated Servers Days to order and configure
Redundancy expensive to setup
14. Pooled hardware resources
The Future:
Hardware on demand
Instant set up
Cloud Servers Minutes to order and configure
Inherent redundancy
15. RSAWEBCloud.com
Dedicate Virtual Cloud
Design Goal Simple, Low cost Low cost Flexiblity, Scalability
FrontEnd
Dedicated Resources
d
Baremetal, YES Virtualised, Maybe Virtualised, YES
(Rails)
High Availability No No (possible but $$) Yes
Fault Tolerant No No Yes *
Disk Storage On machine On machine SAN / Block Storage
Scalability None Medium High
Advantages Full access to Flexibility Flexibility
hardware
Disadvantages Not flexible Customers perception Provider must be
good
Access Root Root Root
Provision time Days to weeks Hours Seconds
API Access (Create VM, Stop, None None YES
Start)
Add more disk space None Limited Yes
Shared disk space between Limited Limited Yes
servers
16. The advantages of using Cloud Hosting or IaaS
• Performance
• Scalability and flexibility
• High availability & Redundancy
• Integrated management Control Panel
• Pay as you use model
29. Why RSAWEBCloud?
Hows it different to AWS
• Persistent storage (no loss of data or state)
• Public IP remains bound to machine of choice
30. Why RSAWEBCloud?
Hows it different to AWS
• Persistent storage (no loss of data or state)
• Public IP remains bound to machine of choice
• Can run SQL DB’s with HA (and it works!)
31. Why RSAWEBCloud?
Hows it different to AWS
• Persistent storage (no loss of data or state)
• Public IP remains bound to machine of choice
• Can run SQL DB’s with HA (and it works!)
• Infinitely easier to migrate existing apps
35. Challenges for developers
• Works great on my machine
• Works great in testing
• Why is it slow & unresponsive live?
36. Challenges for developers
• Works great on my machine
• Works great in testing
• Why is it slow & unresponsive live?
• Why is the server grinding to a halt?
49. Scaling OUT
Shared IP / Carp
Load Load
Balancer Balancer
50. Scaling OUT
Shared IP / Carp
Load Load
Balancer Balancer
Web Server Web Server Web Server Web Serve
51. Scaling OUT
Shared IP / Carp
Load Load
Balancer Balancer
Web Server Web Server Web Server Web Serve
NosQL DB
NoSQL DB
NoSQL DB
52. Scaling OUT
Shared IP / Carp
Load Load
Balancer Balancer
Web Server Web Server Web Server Web Serve
MySQL DB NosQL DB
MySQL DB NoSQL DB
NoSQL DB
53. Scaling OUT
Shared IP / Carp
Load Load
Balancer Balancer
Web Server Web Server Web Server Web Serve
MySQL DB NosQL DB
MySQL DB NoSQL DB
NoSQL DB
MySQL Slave(s)
54. Scaling OUT
Shared IP / Carp
Load Load
Memcache Balancer Balancer
Web Server Web Server Web Server Web Serve
MySQL DB NosQL DB
MySQL DB NoSQL DB
NoSQL DB
MySQL Slave(s)
56. Scaling OUT - Critical must do’s
1. Think asynchronously
57. Scaling OUT - Critical must do’s
1. Think asynchronously
2. Think vertically
58. Scaling OUT - Critical must do’s
1. Think asynchronously
2. Think vertically
3. Keep data types separate
59. Scaling OUT - Critical must do’s
1. Think asynchronously
2. Think vertically
3. Keep data types separate
4. Separate hot & cold data
60. Scaling OUT - Critical must do’s
1. Think asynchronously
2. Think vertically
3. Keep data types separate
4. Separate hot & cold data
5. Memory ROCKS!
61. Scaling OUT - how???
- Difficulty of migration depends on
Existing existing complexity
- May need DB refactoring / migration
Apps - Sessions can be sorted in Memcache
- Loadbalancer & multiple webservers, app
needs to handle different IP’s
- Add slave SQL Db’s for read performance
- Add a monitoring server to start & deploy
new servers as needed
- Puppet / Chef
62. Scaling OUT - how???
- Files can be stored on centralised storage
New - Sessions can be sorted in Memcache
- Loadbalancer & multiple webservers
Apps - Add slave SQL Db’s for read performance
- Add a monitoring server to start & deploy
new servers
- Use NoSQL where appropriate
- Puppet / Chef
63. Scaling OUT - how???
- Monitor load - Nagios
- Do something about it
Managing - Autoprovision with Chef/Puppet
- Continue to monitor load
- Deploy & Recover on demand
65. Closing
Chat to us about:
• Cloud
• Scaling
• High volume sites/apps
• 1 month off:
• Or signup for 7 day trial
www.rsawebcloud.com
Twitter: @markslingsby
Notes de l'éditeur
\n
\n
KEY SOUNDBITE: “Just like the landline phone or the power socket on \nthe wall, Cloud Computing is using the same model for IT—inexpensive, pay as \nyou go, operates on a base infrastructure and just works.”\n
\n
KEY SOUNDBITE: “Just like the landline phone or the power socket on \nthe wall, Cloud Computing is using the same model for IT—inexpensive, pay as \nyou go, operates on a base infrastructure and just works.”\n
Historically, industry shifts are driven by new needs and new economics\nWe are in this shift right now …a new era in IT that finally addresses complexity rather than adding it. \n
Key Talking Points: We see 3 different basic types of cloud computing today. \n\nApplication or Information are the best known, highly visible as consumer web sites and in general are focused on the delivery of information.\n\nPros: Usually very inexpensive to use. In case of commercial centered solutions many are driven by ad revenues.\n\nCons: Not customizable. Limited ability to integrate with internal systems and limited application coverage for business purposes.\n\nKey Talking Points: Second type of cloud computing is least well known and is focused on delivering software development environments and runtimes as a service. A consumer of such a service would write an application using the using the service and then make use of the supplied runtime environment for that application. \n\nPros: Facilitates rapid development\n\nCons:Not compatible with existing applications thus creating need to rewrite applications before they can make use of such service\n\nFinally, the 3rd type of cloud computing is focused on providing the most generalizable solution and that is basic infrastructure as a service. These solutions provide to the consumer storage, networking and computing capacity as a service, sometimes in very high granularities of billing such as hourly.\n\nA vast majority of these solutions are based on virtualization.\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
But the decision for enterprises on how far to leverage computing platforms in the cloud will be much more complicated. The economics will increasingly make more sense to run business applications on these new platforms now that major competition has emerged in the PaaS marketplace that will put major downward pressure on already strikingly low costs to operate. But the issues around governance, security, privacy, and control will be hard to overcome. Make no mistake however, these platforms offer not only major cost savings but non-trivial productivity boosts as they competitively strive to be the cheapest and lowest barrier place online to run your business applications and engage your employees, customers, and partners.\n