22
Copyright © 2013 NTT Communications Corporation. All right reserved. Copyright © NTT Communica3ons Corpora3on. All right reserved. Building AWSCompatible Public Cloud Service Shinichiro Kashiwagi Cloud Services Division NTT Communications 1

Building AWS Compatible Cloud Services

Embed Size (px)

DESCRIPTION

Presentation at Apache CloudStack Collaboration Conference Europe in Amsterdam on 21st November 2013. http://lanyrd.com/2013/cloudstack-collaboration-conference-europe/scrdzm/

Citation preview

Page 1: Building AWS Compatible Cloud Services

Copyright © 2013 NTT Communications Corporation. All right reserved.

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Building  AWS-‐‑‒Compatible  Public  Cloud  Service

Shinichiro  KashiwagiCloud  Services  DivisionNTT  Communications

1  

Page 2: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

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

2

Page 3: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

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

3

Page 4: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Product  Line-‐‑‒up

•  Offering  most  popular  AWS  compatible  services  including  EC2,  S3,  ELB..–  Over  CloudStack!

4

Page 5: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Feature  Comparison

5

CloudStack  is  a  IaaS  pla?orm  while  AWS  is  a  comprehensive  service    

Page 6: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Challenges

6

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..)  

Service  Providers  have  to  prepare  

Page 7: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Region  

Architecture

7

Portal  

CloudStack  (Compute)  

Addi3onal  Services  

Compute  Nodes  

Monitoring   Opera3on  and  Support    

L7  Proxy  

Billing  

Zone  

Compute  Nodes  

Zone  

Page 8: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

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

8

Page 9: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Compute  GUI

9

Compute  GUI  for  CloudStack  2.x  zones  

Compute  GUI  for  CloudStack  3.x  zones  

Page 10: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

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

10

Page 11: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Load  Balancing  Advanced  -‐‑‒  GUI

11

Page 12: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

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

12

Page 13: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

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

13

Page 14: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

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

14

Page 15: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Provisioning

•  CloudStack  has  no  bulk  VM  provisioning  feature

•  Newly  implemented

15

Page 16: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Object  Storage

•  CloudStack  did  not  have  integrated  object  storage  service

•  Adpoted  Cloudian–  Offering  AWS  S3  compatible  API–  Emulate  the  similar  domain  hierarchy  as  CloudStack

16

Page 17: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Relational  Database•  Anything  to  do  with  CloudStack?•  We  implemented  anyway

–  offering  MySQL  clusters–  with  AWS  RDS  compatible  API

17

Page 18: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

PaaS

•  Anything  to  do  with  CloudStack?•  We  are  offering  CloudFoundry  on  top  of  CloudStack  IaaS

18

Page 19: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Various products

Portal    +    Authen3ca3on  Servers  

Account Management

Authentication

Product Management

Billing Calculation

Portal GUI (SSO to Product GUI)

Order Management

Customer Management

Billing Management

Payment Management

Customer  Support  

Customer  Management

Common function Reseller specific function

Reseller-Portal API

•  Create Customer

•  Delete Customer

•  Suspend Customer

•  Resume Customer

•  Get Billing Info

•  SSO

Portal-Product API

•  Add Account

• Delete Account

• Suspend Account

• Resume account

• Update API Keys

• Get Usage

Reseller  A  

Reseller  B  

…..  

Portal

Page 20: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

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

20

Page 21: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

“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

21

Page 22: Building AWS Compatible Cloud Services

Copyright  ©  NTT  Communica3ons  Corpora3on.  All  right  reserved.

Thank  you

http://www.ntt.com/cloudn_̲e/

[email protected]@skash88

22