~citrix-openstack/nova/xenapi

« back to all changes in this revision

Viewing changes to doc/source/adminguide/managing.networks.rst

  • Committer: Tarmac
  • Author(s): Todd Willey, root, Vishvananda Ishaya, Joe Heck, root, Andy Smith, Anne Gentle, Dean Troyer, Devin Carlen
  • Date: 2010-11-16 02:34:47 UTC
  • mfrom: (386.2.71 trunkdoc)
  • Revision ID: hudson@openstack.org-20101116023447-pz7n6ps5rf0fnjea
Lots of documentation and docstring updates.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
..
 
2
      Copyright 2010 United States Government as represented by the
 
3
      Administrator of the National Aeronautics and Space Administration.
 
4
      Overview Sections Copyright 2010 Citrix 
 
5
      All Rights Reserved.
 
6
 
 
7
      Licensed under the Apache License, Version 2.0 (the "License"); you may
 
8
      not use this file except in compliance with the License. You may obtain
 
9
      a copy of the License at
 
10
 
 
11
          http://www.apache.org/licenses/LICENSE-2.0
 
12
 
 
13
      Unless required by applicable law or agreed to in writing, software
 
14
      distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 
15
      WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 
16
      License for the specific language governing permissions and limitations
 
17
      under the License.
 
18
 
 
19
Networking Overview
 
20
===================
 
21
In Nova, users organize their cloud resources in projects. A Nova project consists of a number of VM instances created by a user. For each VM instance, Nova assigns to it a private IP address. (Currently, Nova only supports Linux bridge networking that allows the virtual interfaces to connect to the outside network through the physical interface. Other virtual network technologies, such as Open vSwitch, could be supported in the future.) The Network Controller provides virtual networks to enable compute servers to interact with each other and with the public network.
 
22
 
 
23
..
 
24
    (perhaps some of this should be moved elsewhere)
 
25
    Introduction
 
26
    ------------
 
27
 
 
28
    Nova consists of seven main components, with the Cloud Controller component representing the global state and interacting with all other components. API Server acts as the Web services front end for the cloud controller. Compute Controller provides compute server resources, and the Object Store component provides storage services. Auth Manager provides authentication and authorization services. Volume Controller provides fast and permanent block-level storage for the comput servers. Network Controller provides virtual networks to enable compute servers to interact with each other and with the public network. Scheduler selects the most suitable compute controller to host an instance.
 
29
 
 
30
    .. todo:: Insert Figure 1 image from "An OpenStack Network Overview" contributed by Citrix
 
31
 
 
32
    Nova is built on a shared-nothing, messaging-based architecture. All of the major components, that is Compute Controller, Volume Controller, Network Controller, and Object Store can be run on multiple servers. Cloud Controller communicates with Object Store via HTTP (Hyper Text Transfer Protocol), but it communicates with Scheduler, Network Controller, and Volume Controller via AMQP (Advanced Message Queue Protocol). To avoid blocking each component while waiting for a response, Nova uses asynchronous calls, with a call-back that gets triggered when a response is received.
 
33
 
 
34
    To achieve the shared-nothing property with multiple copies of the same component, Nova keeps all the cloud system state in a distributed data store. Updates to system state are written into this store, using atomic transactions when required. Requests for system state are read out of this store. In limited cases, the read results are cached within controllers for short periods of time (for example, the current list of system users.) 
 
35
 
 
36
    .. note:: The database schema is available on the `OpenStack Wiki <http://wiki.openstack.org/NovaDatabaseSchema>_`. 
 
37
 
 
38
Nova Network Strategies
 
39
-----------------------
 
40
 
 
41
Currently, Nova supports three kinds of networks, implemented in three "Network Manager" types respectively: Flat Network Manager, Flat DHCP Network Manager, and VLAN Network Manager. The three kinds of networks can c-exist in a cloud system. However, the scheduler for selecting the type of network for a given project is not yet implemented. Here is a brief description of each of the different network strategies, with a focus on the VLAN Manager in a separate section. 
 
42
 
 
43
Read more about Nova network strategies here:
 
44
 
 
45
.. toctree::
 
46
   :maxdepth: 1
 
47
 
 
48
   network.flat.rst
 
49
   network.vlan.rst
 
50
 
 
51
 
 
52
Network Management Commands
 
53
---------------------------
 
54
 
 
55
Admins and Network Administrators can use the 'nova-manage' command to manage network resources:
 
56
 
 
57
VPN Management
 
58
~~~~~~~~~~~~~~
 
59
 
 
60
* vpn list: Print a listing of the VPNs for all projects.
 
61
    * arguments: none
 
62
* vpn run: Start the VPN for a given project.
 
63
    * arguments: project
 
64
* vpn spawn: Run all VPNs.
 
65
    * arguments: none
 
66
 
 
67
 
 
68
Floating IP Management
 
69
~~~~~~~~~~~~~~~~~~~~~~
 
70
 
 
71
* floating create: Creates floating ips for host by range
 
72
    * arguments: host ip_range
 
73
* floating delete: Deletes floating ips by range
 
74
    * arguments: range
 
75
* floating list: Prints a listing of all floating ips
 
76
    * arguments: none
 
77
 
 
78
Network Management
 
79
~~~~~~~~~~~~~~~~~~
 
80
 
 
81
* network create: Creates fixed ips for host by range
 
82
    * arguments: [fixed_range=FLAG], [num_networks=FLAG],
 
83
                 [network_size=FLAG], [vlan_start=FLAG],
 
84
                 [vpn_start=FLAG]
 
85