diff options
| author | John Tran <jtran@attinteractive.com> | 2011-08-02 23:16:27 -0700 |
|---|---|---|
| committer | John Tran <jtran@attinteractive.com> | 2011-08-02 23:16:27 -0700 |
| commit | 6d7e5196db2e852476f7d14007cf155e15815071 (patch) | |
| tree | 202c6dfce8a2867c57889ff7dfbe18ded0f9e975 /bin | |
| parent | e239dc589982a0d90eb8a50967af05a10d5e4d5b (diff) | |
| parent | e2770a4558c95aa4b6e276ebe18dc580a82e6d67 (diff) | |
merged from trunk
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/nova-instancemonitor | 59 | ||||
| -rw-r--r-- | bin/nova-logspool | 1 | ||||
| -rwxr-xr-x | bin/nova-manage | 115 | ||||
| -rwxr-xr-x | bin/nova-objectstore | 2 |
4 files changed, 66 insertions, 111 deletions
diff --git a/bin/nova-instancemonitor b/bin/nova-instancemonitor deleted file mode 100755 index b9d4e49d7..000000000 --- a/bin/nova-instancemonitor +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env python -# vim: tabstop=4 shiftwidth=4 softtabstop=4 - -# Copyright 2010 United States Government as represented by the -# Administrator of the National Aeronautics and Space Administration. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -""" - Daemon for Nova RRD based instance resource monitoring. -""" - -import gettext -import os -import sys -from twisted.application import service - -# If ../nova/__init__.py exists, add ../ to Python search path, so that -# it will override what happens to be installed in /usr/(local/)lib/python... -possible_topdir = os.path.normpath(os.path.join(os.path.abspath(sys.argv[0]), - os.pardir, - os.pardir)) -if os.path.exists(os.path.join(possible_topdir, 'nova', '__init__.py')): - sys.path.insert(0, possible_topdir) - -gettext.install('nova', unicode=1) - -from nova import log as logging -from nova import utils -from nova import twistd -from nova.compute import monitor - -LOG = logging.getLogger('nova.instancemonitor') - - -if __name__ == '__main__': - utils.default_flagfile() - twistd.serve(__file__) - -if __name__ == '__builtin__': - LOG.warn(_('Starting instance monitor')) - # pylint: disable=C0103 - monitor = monitor.InstanceMonitor() - - # This is the parent service that twistd will be looking for when it - # parses this file, return it so that we can get it into globals below - application = service.Application('nova-instancemonitor') - monitor.setServiceParent(application) diff --git a/bin/nova-logspool b/bin/nova-logspool index 097459b12..a876f4c71 100644 --- a/bin/nova-logspool +++ b/bin/nova-logspool @@ -81,7 +81,6 @@ class LogReader(object): if level == 'ERROR': self.handle_logged_error(line) elif level == '[-]' and self.last_error: - # twisted stack trace line clean_line = " ".join(line.split(" ")[6:]) self.last_error.trace = self.last_error.trace + clean_line else: diff --git a/bin/nova-manage b/bin/nova-manage index ca60d28d6..78cc96818 100755 --- a/bin/nova-manage +++ b/bin/nova-manage @@ -632,40 +632,66 @@ class NetworkCommands(object): """Class for managing networks.""" @args('--label', dest="label", metavar='<label>', - help='Label(ex: public)') - @args('--network', dest="fixed_range", metavar='<x.x.x.x/yy>', - help='Network') + help='Label for network (ex: public)') + @args('--fixed_range_v4', dest="fixed_range_v4", metavar='<x.x.x.x/yy>', + help='IPv4 subnet (ex: 10.0.0.0/8)') @args('--num_networks', dest="num_networks", metavar='<number>', - help='How many networks create') + help='Number of networks to create') @args('--network_size', dest="network_size", metavar='<number>', - help='How many hosts in network') + help='Number of IPs per network') @args('--vlan', dest="vlan_start", metavar='<vlan id>', help='vlan id') @args('--vpn', dest="vpn_start", help='vpn start') - @args('--fixed_range_v6', dest="fixed_range_v6", help='fixed ipv6 range') + @args('--fixed_range_v6', dest="fixed_range_v6", + help='IPv6 subnet (ex: fe80::/64') @args('--gateway_v6', dest="gateway_v6", help='ipv6 gateway') - @args('--flat_network_bridge', dest="flat_network_bridge", - metavar='<flat network bridge>', help='Flat_network_bridge') + @args('--bridge', dest="bridge", + metavar='<bridge>', + help='VIFs on this network are connected to this bridge') @args('--bridge_interface', dest="bridge_interface", - metavar='<bridge interface>', help='Bridge_interface') + metavar='<bridge interface>', + help='the bridge is connected to this interface') @args('--multi_host', dest="multi_host", metavar="<'T'|'F'>", help='Multi host') @args('--dns1', dest="dns1", metavar="<DNS Address>", help='First DNS') @args('--dns2', dest="dns2", metavar="<DNS Address>", help='Second DNS') - def create(self, label=None, fixed_range=None, num_networks=None, + def create(self, label=None, fixed_range_v4=None, num_networks=None, network_size=None, multi_host=None, vlan_start=None, vpn_start=None, fixed_range_v6=None, gateway_v6=None, - flat_network_bridge=None, bridge_interface=None, - dns1=None, dns2=None): + bridge=None, bridge_interface=None, dns1=None, dns2=None): """Creates fixed ips for host by range""" + + # check for certain required inputs if not label: - msg = _('a label (ex: public) is required to create networks.') - print msg - raise TypeError(msg) - if not fixed_range: - msg = _('Fixed range in the form of 10.0.0.0/8 is ' - 'required to create networks.') - print msg - raise TypeError(msg) + raise exception.NetworkNotCreated(req='--label') + if not (fixed_range_v4 or fixed_range_v6): + req = '--fixed_range_v4 or --fixed_range_v6' + raise exception.NetworkNotCreated(req=req) + + bridge = bridge or FLAGS.flat_network_bridge + if not bridge: + bridge_required = ['nova.network.manager.FlatManager', + 'nova.network.manager.FlatDHCPManager'] + if FLAGS.network_manager in bridge_required: + # TODO(tr3buchet) - swap print statement and following line for + # raise statement in diablo 4 + print _('--bridge parameter required or FLAG ' + 'flat_network_bridge must be set to create networks\n' + 'WARNING! ACHTUNG! Setting the bridge to br100 ' + 'automatically is deprecated and will be removed in ' + 'Diablo milestone 4. Prepare yourself accordingly.') + time.sleep(10) + bridge = 'br100' + #raise exception.NetworkNotCreated(req='--bridge') + + bridge_interface = bridge_interface or FLAGS.flat_interface or \ + FLAGS.vlan_interface + if not bridge_interface: + interface_required = ['nova.network.manager.FlatDHCPManager', + 'nova.network.manager.VlanManager'] + if FLAGS.network_manager in interface_required: + raise exception.NetworkNotCreated(req='--bridge_interface') + + # sanitize other input using FLAGS if necessary if not num_networks: num_networks = FLAGS.num_networks if not network_size: @@ -686,42 +712,31 @@ class NetworkCommands(object): vlan_start = FLAGS.vlan_start if not vpn_start: vpn_start = FLAGS.vpn_start - if not fixed_range_v6: - fixed_range_v6 = FLAGS.fixed_range_v6 - if not flat_network_bridge: - flat_network_bridge = FLAGS.flat_network_bridge - if not bridge_interface: - bridge_interface = FLAGS.flat_interface or FLAGS.vlan_interface - if not gateway_v6: - gateway_v6 = FLAGS.gateway_v6 if not dns1 and FLAGS.flat_network_dns: dns1 = FLAGS.flat_network_dns - net_manager = utils.import_object(FLAGS.network_manager) - try: - net_manager.create_networks(context.get_admin_context(), - label=label, - cidr=fixed_range, - multi_host=multi_host, - num_networks=int(num_networks), - network_size=int(network_size), - vlan_start=int(vlan_start), - vpn_start=int(vpn_start), - cidr_v6=fixed_range_v6, - gateway_v6=gateway_v6, - bridge=flat_network_bridge, - bridge_interface=bridge_interface, - dns1=dns1, - dns2=dns2) - except ValueError, e: - print e - raise e + # create the network + net_manager = utils.import_object(FLAGS.network_manager) + net_manager.create_networks(context.get_admin_context(), + label=label, + cidr=fixed_range_v4, + multi_host=multi_host, + num_networks=int(num_networks), + network_size=int(network_size), + vlan_start=int(vlan_start), + vpn_start=int(vpn_start), + cidr_v6=fixed_range_v6, + gateway_v6=gateway_v6, + bridge=bridge, + bridge_interface=bridge_interface, + dns1=dns1, + dns2=dns2) def list(self): """List all created networks""" print "%-18s\t%-15s\t%-15s\t%-15s\t%-15s\t%-15s\t%-15s" % ( - _('network'), - _('netmask'), + _('IPv4'), + _('IPv6'), _('start address'), _('DNS1'), _('DNS2'), @@ -730,7 +745,7 @@ class NetworkCommands(object): for network in db.network_get_all(context.get_admin_context()): print "%-18s\t%-15s\t%-15s\t%-15s\t%-15s\t%-15s\t%-15s" % ( network.cidr, - network.netmask, + network.cidr_v6, network.dhcp_start, network.dns1, network.dns2, diff --git a/bin/nova-objectstore b/bin/nova-objectstore index 1aef3a255..4d5aec445 100755 --- a/bin/nova-objectstore +++ b/bin/nova-objectstore @@ -18,7 +18,7 @@ # under the License. """ - Twisted daemon for nova objectstore. Supports S3 API. + Daemon for nova objectstore. Supports S3 API. """ import gettext |
