There is no lack of deployment software in the OpenStack market, and each one of them provides great value from different perspective and scenario. These deployment solutions did a great job on software deployment layer based upon OS provisioning tools like Cobbler and configuration management tools like Puppet/Chef, but they generally do not go deep down to networking and server hardware level configuration, which is a key step for large scale OpenStack solution. As part of a networking company and a server vendor, Huawei Cloud team are developing Compass, a system not only for OpenStack software deployment, but also for fully automated hardware level server and networking gear configuration. Our system automates hardware resource discovery, hardware configuration (e.g., hardware RAID configuration, switch configuration), topology-aware OpenStack
service deployment and etc. Therefore, end users have a streamlined OpenStack deployment experience with Compass. We are using Compass for deploying OpenStack cloud in several deployments and got very constructive feedback for us to make more robust and open deployment solution. We plan to open source our project. One major goal we have in designing the system is to achieve true openness at hardware level, so that other hardware vendors can write plug-in toward their special server designs. Just
like OpenStack’s openness makes it a valuable game-changing cloud solution, we hope we can work with other hardware vendors to make OpenStack universally available on various hardware platforms in a
streamlined fashion.
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
Compass: Yet Another Deployment System or An Networking Gear Company’s Embrace to OpenStack Community?, Shuo YANG, Huawei
1. 2013年11月13日星期三
Compass – A Streamlined
OpenStack Deployment System
Shuo Yang
Principal Architect of Cloud Computing, US R&D Center
2. Outline of This Talk
1
Scope of Problem for Compass
2
Compass Explained
3
DRY, Truly Open Deployment
1
3. Compass at a Glimpse
Think Big, Start Small
A General System to Deploy Distributed Systems, Extensibility as a Primary Design Goal
Not Limited to OpenStack, but Streamlined Our OpenStack Deployment Like a Charm
To Be Open Sourced – Apache 2.0 Soon
100% Python, 5000 Line of Python Code
Successfully Deployed Several Dogfood Clusters
Compass Wiki Page: https://wiki.openstack.org/wiki/Compass
2
4. Data Center as a Computer
Open Cloud OS (OpenStack)
Open Deployment (Compass)
OpenStack
Linux
Quantum
eth0, lo
NIC
Switch
Switch
Switch
NIC
(5020)
Nova
/proc
Live
Auto
CD /
Deploy
GRUB
Cinder
/dev
CPU
CPU
CPU
Server
CPU
(2285/1285)
OpenStack Control Channel
Disk
Disk
Storage
Disk
(N8000/N900)
LILO/GRUB/LiveCD
for OpenStack
HW/SW Configuration Deployment Channel
3
5. Why We Are Doing This?
Full HW Portfolio in Data Center
No.1 as Storage Revenue Growth
No. 2 as `x86 Server Revenue Growth
Needless to Say, Networking Gears..
OpenStack Makes the Above a Full
Cloud Solution
4
Global Excellent Telecom Cloud Solution
Provider of year 2012
6. Outline of This Talk
1
Scope of Problem for Compass
2
Compass Explained
3
DRY, Truly Open Deployment
5
7. A Life of Deployment – How to Streamline All Controls
Plus a lot of scripts:
Boilerplate
Target system
description
Chef / Puppet / …
Host OS
Host OS
Host OS
Cobbler / Razor / …
IPMI
Server 1
Server 2
Server n
SNMP
Switch 1
Switch 2
6
Switch k
8. Compass Philosophies – Programmability and
Extensibility
Programmability – To Be a Programmable Framework
A Restful API service instead of a web app
Extensibility – NOT To Be A Conglomerate
Functional modules with plug-in architecture (e.g., 200 Loc to support HP Switch)
Carefully designed boundary to mature tools like Cobbler, Chef and etc.
Work WITH the above tools, not to replace any of them.
7
9. Compass Internals
Rest
Client
Huawei UI
Compass -- Open Source
Restful API Server
Message bus (RabbitMQ)
DB
Package Deployment
Hardware Discover
Huawei Plugin
3rd Party ISV UI
Chef plugin
microkernel
8
Ansible plugin
OS Provisioning
Cobbler plugin
Razor plugin
10. NOT to Be Conglomerate – Plug-in Architecture
Plug-in architecture for configuration management system
Currently we use Chef as deployment management Engine
Puppet or Ansible devopers, we want to work with you
Plug-in architecture for Hardware vendors IPMI / SNMP
Networking gear based bare metal discovery (topolology awareness)
Currently we are working on RAID Controller for Huawei
OCP community, what’s your thought
9
11. NOT to Be Conglomerate – Roles in the System
Policy Databag (e.g., exclusive; default)
OpenStack Cookbook
Lib writer
Chef-Server
Restful Reqs
Compass
snippets
kickstart files
App writer
Cobbler-server
10
12. Outline of This Talk
1
Scope of Problem for Compass
2
Compass Explained
3
DRY, Truly Open Deployment
11
13. Extensible in Use Cases
OS
ESXi ?
Windows Server?
CentOS
Ubuntu
Huawei
OpenStack Hadoop
HP
OCP?
Hardware
12
Ceph?
Distributed System
14. Extensible in Tool Chain
OS Provisioning Tools
Razor
Cobbler
Chef
Puppet
13
Ansible Salt
Configuration Management Tools
15. To Summarize
Open Sourced under Apache 2.0
General Purpose Deployment System (Ultimate Goal)
Deploys OpenStack Cloud Infrastructure Smoothly (Dogfoods Done)
Restful API: Allow Third-party UI Integration
Open to Collaboration
Contact us:
shuo.yang@huawei.com
Santa Clara R&D Center, US
14