You are on page 1of 13

Building a Cloud Infrastructure

Tabassum Sharif Gihan Munasinghe


Operations Director R&D Manager
Flexiant Ltd Flexiant Ltd
tsharif@flexiant.com gihan@flexiant.com
What is Cloud Computing?
Is it a software (SaaS)?
Salesforce, google docs etc
Is it a platform (PaaS)?
Google App Engine
Is it an infrastructure (IaaS) ?
FlexiScale, EC2
Wikipedia definition- Cloud computing describes systems
that provide computation, software, and data access services
without requiring end-user knowledge of or dependence on the
system's physical location and configuration.
Infrastructure as a Service
There are more aspects than PaaS or SaaS model.
Virtualization holds the key.
But virtualization itself is not enough!
Things to consider:
Storage
Network
Security
Accounting
Scalability
Clouds vs Traditional Hosting
Instant provisioning.
Servers are now just a mouse click/api call away.
No hardware maintenance.
On demand resources.
Adding extra RAM/CPU to your server is a few mouse clicks.
Pay as you play model.
No long term binding contracts.
Throw away the servers, no more Capex.
Ideal for development environments.
Demo
Building your own
Clusters of physical nodes with considarable amount
of RAM/CPU.
Your choice of Hypervisor .
Open source Hypervisors give more flexibility when
building a cloud platform.
Important consideration- The Hypervisor is just another
component in the cloud stack.
Storage Network.
ISCSI, NFS & FC, always ensure an API/CLI is available.
Using local storage will loose the ability to live migrate and
live recover as well as recover data from a local hardware
failure.
Building your own
Programmable Network.
Linux routers are ideal.
Switches that support multiple static VLAN .
Important : Some coding to glue everything together.
Keep it simple.
Considerations
Management of Servers.
Ability to create, delete, start and stop multiple VMs
simultaneously.
Finding the ideal physical node to run a VM.
Automatic recovery on physical node failures .
Single point of failures.
SAN, Routers and Switches.
Minimum human intervention on day to day running
of the cluster ensures a cost rffrctive solution.
You cannot stop failures, but you need to recover fast
Our Approach
The idea of programming the data centre.
Separate management services.
Management of Nodes/Hypervisors.
Management of Network .
Management of Storage.
A cluster manager will combine all management
services.
Business logic has to be built on top of the cluster
management layer.
Each layer has its own SOAP API.
Distributing the working intelligence.
Avoiding Dependencies
Imagine Nodes are just containers.
You should be able to move between containers .
Nodes are PXE booted, rebooting will put it back to clean state.
Be Hypervisor-Independent!
Cloud based services should not worry about underlying fabric.
Multiple SAN support .
Abstract layers.
Simple driver architecture.
Allow us to easily use multiple SANs/Routers and Hypervisor s
in the same management stack.
What is in the Pipeline
IPv6 Support.
Ready for release.
Affinity.
Customer level control which would allow a customer to
determine positive or negative affinity for VMs.
Working in our lab environment.
Elvira.
Distributed block layer which can sit on top of any
different vendor SANs.
Question Time

You might also like