@CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.
-
Upload
meryl-mason -
Category
Documents
-
view
228 -
download
0
Transcript of @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.
![Page 1: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/1.jpg)
@CloudOps_ www.cloudops.com
Swift UI in CloudStack with Single Sign-On
CloudStack Collaboration Conference 2012
![Page 2: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/2.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Professional ServicesManaged Services
Who is CloudOps
Private cloud management
CloudOps Lead DeveloperCloud building
Public cloud management
Cloud Architecture
• Management of private clouds based on 5 years experience
• Affordable solutions based on open-core technologies
• 24/7 management (servers, resources)
• Design and build-out of clouds tailored to enterprises and cloud service providers
• 24/7 management of customer’s solutions on Amazon Web Services
• Application architecture optimized for the cloud
Will Stevens
![Page 3: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/3.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
A shout out…
ca.movember.com/team/788849
{
![Page 4: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/4.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Let’s jump right in
• Swift UI integrated into CloudStack
![Page 5: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/5.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Some Examples
![Page 6: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/6.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Some Examples
![Page 7: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/7.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
The Basics
• Two main components of the implementation
– The actual UI for Swift integrated into CloudStack
– The Swift auth middleware which allows Swift to authenticate against CloudStack users
![Page 8: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/8.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
The Swift UI
• The Swift UI is integrated directly into the CloudStack UI
• Development sponsored by CloudOps
• We are in the process of Open Sourcing
![Page 9: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/9.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
The Swift UI
• Implemented entirely in the UI, no Java
• Thin JS wrapper around the Swift API• Supports public and private containers• Supports virtual directories• Supports cascade deletes• Multilingual support• Cross browser support using Plupload
(Requires some configuration in HAProxy)
![Page 10: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/10.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Swift Authentication
• Swift auth via cs_auth or mauth
• I developed these at CloudOps
• Get the code at: github.com/cloudops
![Page 11: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/11.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Swift Authentication
• Both cs_auth and mauth enable Swift to authenticate CloudStack users
• mauth is extensible, CS is the default
• Caches CS users to limit network usage
• No syncing of users between systems
• Role based ACL, including public access
• Supports the S3 API through swift3
![Page 12: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/12.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Swift Auth Flow
![Page 13: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/13.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
The ‘identity’
![Page 14: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/14.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Load Balancer Tweaks
• URL routing with HAProxy– Handles both CloudStack API and Swift
API
– URLs starting with /v1.0 and /v1 go to Swift
– All other URLs go to CloudStack
![Page 15: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/15.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Load Balancer Tweaks (haproxy.cfg)• Browser support for PUT requestsfrontend Public-HTTPmode httpbind *:80acl swift_path path_beg /v1 /v1.0use_backend swift if swift_pathdefault_backend cloudstack
backend swiftmode httpserver swift_proxy_1 10.100.1.100server swift_proxy_2 10.100.1.101option httpchkreqirep ^POST\s+(.*)$ PUT\ \1
backend cloudstackmode httpserver cloudstack 10.100.1.50:8080
![Page 16: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/16.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
The Final Configuration
• Putting it all together
![Page 17: @CloudOps_ Swift UI in CloudStack with Single Sign-On CloudStack Collaboration Conference 2012.](https://reader035.fdocuments.net/reader035/viewer/2022062518/56649ef35503460f94c05201/html5/thumbnails/17.jpg)
@CloudOps_ www.cloudops.com@CloudOps_ www.cloudops.com
Questions
?Will StevensEmail: [email protected]: www.cloudops.comBlog: www.swillops.comTwitter: swillops