More Related Content Similar to Building AWS Compatible Cloud Services (20) Building AWS Compatible Cloud Services1. Building AWS-‐‑‒Compatible Public
Cloud Service
Shinichiro Kashiwagi
Cloud Services Division
NTT Communications
1
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
Copyright © 2013 NTT Communications Corporation. All right reserved.
2. Cloudn introduction
• Who I am
– Lead developer of a public cloud service in NTT
Communications
– Working in UK branch now for a VMware-‐‑‒based private cloud service
• Cloudn -‐‑‒ NTTComʼ’s public cloud service
– Starting from 6.9 EUR/VM
– AWS-‐‑‒compatible services and APIs
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
2
3. Service Concepts
• Comprehensive low-‐‑‒cost IaaS services
– We are a follower
– Support standard services, not only Compute
• AWS Compatible as much as possible
• Free Network traffic
– Benefit from our Tier-‐‑‒1 Global IP Backbone and
global DC coverage
• Multi-‐‑‒region, multi-‐‑‒zone
– Available in United States and Japan
– Planning to expand to other regions
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
3
4. Product Line-‐‑‒up
• Offering most popular AWS compatible
services including EC2, S3, ELB..
– Over CloudStack!
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
4
6. Challenges
Feature
AWS
CloudStack
Compute
✔ (EC2)
✔
Load
Balancing
✔ (ELB)
✔
(beIer
with
NetScaler)
Autoscaling
✔ (Autoscaling)
Dynamic
DNS
✔ (Route53)
Monitoring
✔ (CloudWatch)
Provisioning
✔ (EC2)
Object
Storage
✔ (S3)
Databases
✔ (RDS)
Content
Delivery
✔ (CloudFront)
Portal
✔ (console)
ApplicaBon
services
✔ (SQS,
SNS..)
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
Service
Providers
have
to
prepare
6
7. Architecture
Region
Portal
CloudStack
(Compute)
Addi3onal
Services
Zone
L7
Proxy
Monitoring
Opera3on
and
Support
Billing
Zone
Compute
Nodes
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
Compute
Nodes
7
8. Compute
• Cloudstack AWSAPI module
– Supporting important EC2 APIs
– Limitations
• CloudStack 3.0.6~∼
• Basic networking mode only
• Mapping AWS concepts to CloudStack world
• Regions, Zones
• Compute Offering names
• Differences in compute model
– IP address persistency
– Lack of local disk (Instance Store in AWS)
– Difficult to share templates
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
8
9. Compute GUI
Compute
GUI
for
CloudStack
2.x
zones
Compute
GUI
for
CloudStack
3.x
zones
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
9
10. Load Balancing
• Evaluated CloudStack native load
balancers
– VR (haproxy), NetScaler
– No AWS API!
• Newly implemented
– Load Balancing “Advanced”
– AWS ELB compatible features
• Multi-‐‑‒zone
• SSL termination
• AWS ELB compatible API
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
10
12. Dynamic DNS
• CloudStack VR DNS: dnsmasq
– DHCP server
– Static configuration
– No external API
• Newly implemented
– AWS Route53 compatible API
• Except some features such ash latency based round
robin
– No synchronisation with CloudStack DNS
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
12
13. Monitoring
• CloudStack native HA mechanism
– Slow to detect failure
– Not sure about DB integrity during convergence
– No external interface
• Newly implemented
– AWS CloudWatch compatible API
• Challenges
– KVM handler
• virsh operations should be serialised
• Security group bug in CloudPlatform 3.x
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
13
14. Autoscaling
• Available in CloudStack 4.1
– Needs NetScaler
– Coordination with
Monitoring and Load
Balancing
• CloudStack Autoscaling
uses SNMP for monitoring
and controls CloudStack
load balancing
• Not pluggable, not
extensitble yet
– No AWS API
• Newly implemented
– Works without NetScaler
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
14
15. Provisioning
• CloudStack has no bulk VM provisioning
feature
• Newly implemented
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
15
16. Object Storage
• CloudStack did not have integrated object storage
service
• Adpoted Cloudian
– Offering AWS S3 compatible API
– Emulate the similar domain hierarchy as CloudStack
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
16
17. Relational Database
• Anything to do with CloudStack?
• We implemented anyway
– offering MySQL clusters
– with AWS RDS compatible API
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
17
18. PaaS
• Anything to do with CloudStack?
• We are offering CloudFoundry on top of
CloudStack IaaS
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
18
19. Portal
Reseller specific function
Reseller
A
Customer Management
Billing Management
Payment Management
Customer
Support
Reseller-Portal API
• Create Customer
• Delete Customer
• Suspend Customer
• Resume Customer
• Get Billing Info
Reseller
B
…..
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
Various products
Portal
+
Authen3ca3on
Servers
Customer
Management
Order Management
Common function
• SSO
Authentication
Portal GUI
(SSO to Product GUI)
Account Management
Product Management
Billing Calculation
Portal-Product API
• Add Account
• Delete Account
• Suspend Account
• Resume account
• Update API Keys
• Get Usage
20. Lessons learned
• Built a subset of AWS service using CloudStack
– Using Ruby on Rails (and Java)
– AWSAPI module is good
– Users can benefit from AWS ecosystem, including various
tools and techniques
• Key design points
– Compute – difference in model and semantics
– API versions and authentication (signature versions)
– Behavior compatibility
• Error messages
• Abnormal cases
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
20
21. “Will CloudStack be following AWS?”
• AWS API is only available for Compute
– What about other services?
– Will such related services be included in
CloudStack?
• NetScaler-‐‑‒dependence
Copyright
©
NTT
Communica3ons
Corpora3on.
All
right
reserved.
21