Name: Syed Armani
Time zone: GMT +05:30
(1) Who are you ?
- I am a Computer Science Engineering Student at Dronacharya College of Engineering, Greater Noida, INDIA.
(2) Technical Skills ?
- I have been coding in C++ for more than 6 years.
- I have good experience of working with different languages like C/C++, Python, Shell Scripting, etc.
- I am also comfortable with Linux System Administration and Networking.
- I also work on developing automation frameworks for automated testing of applications.
- I have sound understanding of various components of IaaS cloud.
- In the past I have worked with teams developing automation frameworks.
- I have compiled a Linux Distribution entirely from Source.
I have also tested private cloud Infrastructure based on OpenStack and tested its functionality.
(4) What makes me the best person to work on this project
I have good understanding of different components of OpenStack and their architecture.
- I have worked extensively on compiling GNU/Linux software.
- I am confident in my ability that i can successfully complete this Project.
Project title: Package an OpenStack Use Case.
Project details: Nova+Quantum multi-tier network provisioning with Openvswitch.This use case discuss the ability of Quantum to let a cloud tenant create rich multi-tier network topologies connecting Nova VMs. The components involved are:
Quantum running Openvswitch plugin.
Nova running Quantum Manager as its Network Manager.
Simple Quantum Orchestrator that speaks to Quantum/Nova API's.
Single Node Setup.
Nova using KVM for Compute.
Tenants can dynamically create network via API and spawn VM, User Creates a Layer-2 network i.e. create-network dmz-net, web-net, db-net.
Quantum returns network identifier, ‘xyz’.
User Creates a VM using Cloud Controller API (e.g.: POST /Servers) and specifies a network for the VM’s virtual NICs in the create server request.
The Cloud Controller dispatches the call to the Compute Service which creates the VM.
Compute Service tells Quantum to create a logical port on the ‘xyz’ network.
Quantum creates the logical port and returns the port number.
Compute Service instructs Quantum to plug the VM’s Virtual NIC into the previously created port; The Virtual NIC's unique identifier is provided in the request body.
Quantum invokes the Openvswitch plugin to attach the Virtual NIC to the logical network. This operation might require the Openvswitch plugin to contact the hypervisor on which the VM has been created in order to setup networking according to the technology adopted by the Openvswitch plugin.
User can verify that the attachment has been plugged into the network by querying Quantum for attachments for the ‘xyz’ network.
Quantum returns a list of currently configured attachments, together with their state (e.g.: in Progress, Attached/DOWN, Attached/UP, Failed).
When creating VMs, Tenants can specify the vNICs and the network they connect to. create-server image = fw-img nics = dmz-net create-server image = web-img nics = web-net, db-net create-server image = db-img nics=db-net
Once you wait for the VMs to boot, you can access them directly using SSH from the local machine, which acts as the gateway and DHCP server for VMs.
To view allocated IP's run “show” at cmd, Vms can be reached directly using SSH or VNC. To clear all existing setup , run “Delete” at cmd. This setup will give Tenant control of Network topology, Advanced services like firewall can be inserted. Tenants can create multiple private networks using Openvswitch plugin, plugin take the networking decision. The plugin may use drivers to communicate the results of this decision to different devices, i.e. It may configure the VLAN on a vSwitch port and tell the upstream physical switch to trunk the VLAN.
Synopsis: OpenStack Nova currently have very limited support for complex networking scenarios. Quantum along with various plugins help the System Adminstrators to implement complex networking scenarios like multi-tier network creation with Quantum, Creating multiple private virtual networks, Attaching virtual ports to virtual interfaces in cloud. Nova+Quantum with Openvswitch packages can help the debian users to easily manage cloud tenants and give them control to create multi-tier L2 networks.
Benefits to Debian: Cloud computing is not a trend anymore, it has become neccessity for today's Data centers. System Administrators and Devops using debian to deploy their private/public cloud infrastructure will have more options in the form of debian packages. It will be easy for them to deploy complex multi-tier networking in their private or public cloud deployments. Nova+Quantum with Openvswitch packages can help the debian users to easily manage cloud tenants and give them control to create multi-tier L2 networks. More options in the form of debian packages will help Debian GNU/Linux to become a leader in the cloud.
A comprehensive documentation for the project describing the manual steps and HOWTOs.
A proper set of Debian packages implementing the Nova+Quantum multi-tier network provisioning with Openvswitch.
Project schedule: The schedule will depend on the intermediate deliverables approved by the mentor. A general rough schedule is given below:
1st May - 20th May :
- Documentation of the use case into a HOWTO with manual steps.
21th May - 24th June :
- Start Translating the HOWTO into a proper set of debian packages.
- Modify the existing Openstack Nova package.
Modifying OpenStack Quantum package and configuring the quantum-server.
25th June - 22th July :
- Setting up quantum with the openvswitch plugin. Configuring quantum-server to use the openvswitch plugin and create its database.
- Configure the openvswitch plugin and agent daemons.
- Testing the packages.
23th July - 12 th August :
- Modifying Openstack nova to use Quantum-manager as its Network-manager and to use the proper drivers.
- Configure quantum server and any agents it needs running sanity testing the configuration using the command line interface.
12th August- 19th August :
- Improving the documentation, testing the packages.
Exams and other commitments: I will be having University Exams in June.
Other summer plans: No other plans.
Why Debian?: I have been using Debian based distros since my first introduction with Linux based operating systems. I have learned a lot since then. It will be a pleasure to work with Debian community and contribute to the growth of Debian in Cloud arena.
- Are you applying for other projects in SoC? Yes
I have experience of working with teams developing quality software in the past. Debian is a vivid community and If someone works with me on the same topic then it will be a great experience for me.