Martin Chamambo - High Level Design-SDN BASED OPENSTACK IMPLEMENTATION IN ZIMBABWE
1. chamambom@gmail.com (0734386010)
Project Proposal for
Implementing a local based distributed SDN Public Cloud Computing
Platform
Provisioning SAAS, IAAS and PAAS cloud packages through a local based distributed
SDN public cloud computing service platform spanning across all datacenters hosted by
local ISPs.
Prepared by
MARTIN CHAMAMBO (BSc, RHCSA, CCNA, I.T.I.L, VCA-DCV, VCA-CLOUD)
W120 Charingira Flats
Cnr Tongogara and Leopold Takawira
Harare
June 23, 2015
Table of Contents
1. Acknowledgements....................................................................................................................2
2. Executive summary ...................................................................................................................2
3. Project background....................................................................................................................5
4. Project Action Plan ....................................................................................................................8
5. Project Costing..........................................................................................................................10
6. References...................................................................................................................................12
2. chamambom@gmail.com (0734386010)
1. Acknowledgements
I would like to express my sincere gratitude to Miss Mildred Nhidza for the thorough proof
reading of the project proposal and Promise Kumalo on the networking knowledge he provided.
2. Executive summary
Reduced operational costs , economies of scale and flexible business operating models for most
Zimbabwean companies is of paramount importance especially when starting a new business or
operating a business. Implementing on-premise business information systems to support daily
operations is proving costly and uneconomic. Cloud computing is here and it’s time local
companies embraced the idea of running their businesses in the cloud.
While many companies will easily warm up to the idea of saving costs, Government institutions
and hospitals and other existing private companies will find it difficult to quickly jump to the
idea. Various reasons exist and below are some reasons why organizations will not quickly adapt.
Most existing datacenters are not cloud ready.
No one understands the cloud computing business model.
People and culture change.
Zimbabwe has less cloud computing skilled people.
What will be our role in trying to change the business mindset towards cloud computing?
Designing and implementing a working cloud. To start with, some companies are already using
certain services in the cloud but are they really benefiting? How about Government institutions
and hospitals where data privacy and security is an issue?
Transforming businesses and Government operating models will definitely take time but that
will be our Job. Imagine all Government institutions accessing the same services from a secure
private cloud without the need for dispersed datacenters. This is where this project comes in. A
clear analysis is made ,institution by institution coming up with a working strategy for what
3. chamambom@gmail.com (0734386010)
needs to be done and calculating the cost savings over time not mentioning the flexibility that
cloud computing will bring.
Implementing a cloud strategy is not a day’s job given the state of our locally run datacenters, we
have to follow the right path and just to summarize analyze the datacenter ---- make decisions
based on defined metrics (e.g. critical apps) --- consolidate your servers ------ virtualize ----and
migrate to the private cloud -------and ultimately migrate to the public cloud. The audits (based
on how much money will be saved and what needs to be done) need to be done carefully in
order to realize the cloud computing benefits.
My goal is to design and implement an SDN based distributed cloud computing service platform
spanning across all datacenters hosted by local ISPs. (Utande, Africom, ZOL etc.) The service
platform will enable companies, both operating and startups to setup their businesses without
the need to worry about supporting infrastructure thereby enabling them to concentrate on their
core business, saving costs and time in the process.
We have already established ISPs with sound datacenters so why not take advantage of the
existing infrastructure and build a public cloud on top of that. Take the below scenario which
applies to our Zimbabwean setting,
Every internet customer in Zimbabwe is using Utande, Africom or ZOL (just to name a few) as
their ISP. The public cloud will consist of multiple distributed nodes on each datacenter
supported by a software defined network (SDN) which is going to help us distribute workloads
across the spanned datacenters by presenting the interconnected Openstack nodes as one big
datacenter. A customer accessing a service on the platform will not even realize where the
applications are sitting. SDN will provide the capacity of the cloud to scale horizontally even as
we add more nodes and services.
Is this the end game? Yes and no, this is why. Most operating companies right now are running
their business operations on outdated server infrastructure utilizing at most 20% of that. The
cost of running this infrastructure is not known to many but take for example any Government
4. chamambom@gmail.com (0734386010)
or private run institutions, all they need is basic email, internet, voice, rent for server premises
and electricity, financial and payroll services at a minimum and do they need all these services
locally hosted in their server rooms? My answer is NO. Most of the services can be run on a
shared cloud computing platform reducing cost and time spent by most of these companies in
setting up these supporting information systems.
a) Public cloud -Software as a Service (SAAS)for new startups/companies
The local public cloud is going to support on the go new startups and as I see it, it will be their
only option if saving costs and efficiency are important to them. One advantage is businesses
will realize their business objectives much faster than they ever could. The SAAS layer will
consist of most if not all business applications that most local companies use and will be
provided on a pay-as-you-go model
b) Private and Public clouds for existing organizations and companies
Gone are the days when information systems used to aid businesses. Now there are the primary
drivers behind successful businesses. Existing organizations are running “Substandard
Datacenters/Server rooms” where even I.T managers don’t have a clue on their operating costs.
So where do we come in? Using a defined cloud/virtualization migration strategy we have to
analyze currently existing systems and come up with a report on how much the company is
currently wasting ,how much the company can save and what application workloads can be
consolidated or migrated to the local cloud.
c) Private clouds for Government institutions and hospitals
Data security seems to be of concern for most government institutions and we perfectly
understand their concern, but not all applications are sensitive and when we do a consolidation
report, we identify which applications can be migrated to the cloud and which applications will
be left on premise.
5. chamambom@gmail.com (0734386010)
Since government institutions prefer their data to be on premise rather than the cloud, all we
need to do is prepare their local server rooms through server consolidation, virtualization and
ultimately migrate the applications to a private cloud.
3. Project background
ZOL Datacenter
Utande Datacenter
AfricomDatacenter
YoAfrica Datacenter
Distributed Local Cloud
integrated by an SDN Overlay
.e.g. NSX or Open Daylight
This is how users of the
cloud will be seeing it ,as
just a single cloud
Diagram 01: High level architecture of the public Cloud
This is the high level architecture design of the distributed public cloud and using SDN overlay
software, the cloud platform installed in each datacenter will be presented as a single interface to
the user while deployed workloads are distributed across the 4 datacenters.
Below is the internal design of the cloud software (Openstack) that is going to be deployed
6. chamambom@gmail.com (0734386010)
Diagram 02: Base Openstack Architecture
OpenStack is a free and open-source cloud computing software platform. The technology
consists of a series of interrelated projects that control pools of processing, storage, and
networking resources throughout a data center—which users manage through a web-based
dashboard, command-line tools, or a RESTful API .There are 12 integrated projects in the
OpenStack platform
Nova (compute): provides virtual servers/machines for cloud users on demand.
Neutron (networking): provides networking as a service (virtual networking services).
Swift (object storage): allows storage and retrieval of data images, files and documents that are
API accessible.
Cinder (block storage): provides persistent block storage to the user’s VM.
Glance (images): provides a list of virtual disk images to the compute node, which is utilized
by the VMs.
7. chamambom@gmail.com (0734386010)
Horizon (dashboard): provides a web-based graphic user interface (GUI) for managing
OpenStack by the administrator and tenants (users).
Keystone (identity): stores information for providing authentication and authorization for
OpenStack services.
Ceilometer (telemetry): monitors and measures OpenStack cloud usage for the purpose of
billing, benchmarking and statistics.
Heat (orchestration): provides an orchestration service for managing cloud applications by
using appropriate API calls.
Ironic (Baremetal provisioning): aims to provision bare metal machines instead of virtual
machines, forked from the Nova Baremetal driver.
Sahara (Big Data as a service): project provides a simple means to provision a data-intensive
application cluster (Hadoop or Spark) on top of OpenStack.
Trove (Database as a service): project aims at providing Cloud Database as a Service
provisioning functionality for both relational and non-relational database engines.
Through a competent team of 1 Infrastructure Architect, 2 infrastructure engineers, 1 network
engineer and 1 Python developers, I plan on deploying Openstack controllers on each
datacenter focusing mainly on the Nova, Neutron and Storage components in architectural
considerations.
8. chamambom@gmail.com (0734386010)
4. Project Action Plan
Phase 1 - Pilot: 6 months
Coming up with multiple design reference architectures that will cater for the following design
constraints.
Scaling out of the L2 virtual network (SDN implementation)
Scaling out of Storage nodes
Scaling out ,failover and high availability of compute nodes
Designing of the first Openstack node(s) will cater for all the design constraints involved in
implementing a scaling-out distributed cloud platform spanning physical datacenters.
Phase 2 - Prototype testing: 8 months
Selection of the first datacenter for deployment will depend on the following metrics
Datacenters with a high capacity bandwidth network.
Datacenters with a high network uptime
Datacenters with a good support history
Installation, configuration and testing of the first standalone Openstack deployment at Utande
taking into consideration networking and storage constraints above when we scale out
Phase 3 – Extending Utande Openstack node(s) into the second datacenter
– 6 months
The extension of the Utande cloud platform into the second ISP datacenter will take 6 months
and will mark the first successful distributed local cloud computing platform spanning physically
dispersed datacenters.
9. chamambom@gmail.com (0734386010)
Phase 4 – Provisioning SAAS and IAAS packages to pilot customers – 3 months
"The proof of the pudding is in the eating! After successfully implementing a distributed cloud
service platform, we will solicit new customers who are going to conduct some of their
businesses using the IAAS and SAAS packages. While other companies are still warming up to
the idea, we will enhance and improve on our SAAS AND IAAS offerings adding more
products to the portfolio concentrating more on collaboration with local companies selling local
software like Belina payroll and Afrosoft to create SAAS packages
Final Phase – Sequentially extending the first Openstack controller at Utande
into other local datacenters in 3 months timelines
This is where we add more Openstack node(s) to the already existing distributed Openstack
cloud
10. chamambom@gmail.com (0734386010)
5. Project Costing
The project is based on an opensource cloud platform so cost of implementing the project is
mostly going to be spent on buying the necessary servers , networking hardware and hiring
experienced engineers with expertise in Openstack, Cloud computing, Virtualization, Networks
and infrastructure.
The costing is based on a resilient and highly-available Openstack deployment at Utande
datacenter before scaling out to other datacenters
Compute
Count: 1 server(s), 4 rack unit(s) total
CPU: 4 x AMD Opteron (12 cores total)
RAM: 36 x 8GB
NIC: HP Ethernet 10Gb 2-port 530FLR-SFP+ Adapter (20Gb)
Controller
Count: 3 server(s), 12 rack unit(s) total
CPU: 4 x AMD Opteron (4 cores total)
RAM: 4 x 4GB
NIC: HP Ethernet 10Gb 2-port 530FLR-SFP+ Adapter (20Gb)
Network
Count: 1 switche(s), 1 rack unit(s) total
Model: CISCO - Nexus 3064T
Ports: 48
11. chamambom@gmail.com (0734386010)
SDN Software
NSX Software (perpetual license starts at $5,996 per CPU)
Total Price for Compute, Network and Controller
Compute price (1 total): $22,964.00
Controller price (3 total): $36,492.00
Switches price (1 total): $20,370.00
NSX Software (1 total): Perpetual license starts at $5,996 per CPU
Total (6 items): $85,826.00
Human resources
Resource Quantity Monthly Cost
Infrastructure Architect X1 Negotiable
Infrastructure engineer X2 $4000
Network Engineer X1 $2000
Python developer X1 $2000
Total Costs $8000+