Bug 1042187

Summary: [RFE][heat]: Implementation neutron metering resources
Product: Red Hat OpenStack Reporter: RHOS Integration <rhos-integ>
Component: openstack-heatAssignee: RHOS Maint <rhos-maint>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: low    
Version: unspecifiedCC: breeler, markmc, sbaker, sdake, shardy, yeylon
Target Milestone: gaKeywords: FutureFeature
Target Release: 5.0 (RHEL 7)   
Hardware: Unspecified   
OS: Unspecified   
URL: https://blueprints.launchpad.net/heat/+spec/neutron-metering-resources
Whiteboard: upstream_milestone_icehouse-2 upstream_status_implemented upstream_definition_approved
Fixed In Version: Doc Type: Enhancement
Doc Text:
A new feature has been added which implements OpenStack Networking metering resources. This allows template authors to configure IP ranges and to assign a label to them. For example, setting two labels: one for the internal traffic, and the other one for the external traffic. Each label will measure the traffic for a specific IP range. Then, bandwidth measurement will be sent for each label to the Oslo notification system and could be collected by the Telemetry service. This enhancement gives users the ability to define OpenStack Networking metering labels and rules in an Orchestration template.
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-07-22 19:08:58 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description RHOS Integration 2013-12-12 21:18:42 UTC
Cloned from launchpad blueprint https://blueprints.launchpad.net/heat/+spec/neutron-metering-resources.

Description:

Current blueprint propose implementation neutron metering resources in heat.
Original description of neutron metering system: (https://wiki.openstack.org/wiki/Neutron/Metering/Bandwidth)

Implementation plan:

- create resource OS::Neutron::MeterLabel

attributes_schema = {
      'name': _('Name of the label.'),
       'description': _('Description of the label.'),
       'tenant_id': _('Tenant owning the label.'),
}

property_schema = {
         'name': {
             'Type': 'String',
             'Description': _('Name of the label.')},
         'description': {
             'Type': 'String',
             'Description': _('Description of the label.')},
          'tenant_id': {
             'Type': 'String',
             'Description': _('Tenant owning the label.')},
}

- create resource OS::Neutron::MeterRule

attributes_schema = {
     'direction' :   _('Direction of traffic.'),
     'excluded' :    _('Exclude state for cidr.'),
     'metering_label' :   _('ID of metering label.'),
     'remote_ip_prefix' :  _(' cidr to match.'),
}

property_schema = {
         'label': {
             'Type': 'String',
             'Description': _('Name of the label for metering.')},
         'remote_ip_prefix': {
             'Type': 'String',
             'Description': _('cidr to match on.')},
         'direction': {
             'Type': 'String',
             'AllowedValues'  : ['ingress', 'egress'],
             'Default' : 'ingress',
             'Description': _('Direction of traffic, default:ingress.')},
          'excluded': {
             'Type': 'Boolean',
             'Default' : 'False',
             'Description': _('Exclude this cidr from the label, default:not excluded.')},
          'tenant_id': {
             'Type': 'String',
             'Description': _(Tenant owning the rule.')},
}

Specification URL (additional information):

None

Comment 2 Stephen Gordon 2014-01-23 20:50:39 UTC
Moving to POST based on upstream status (Implemented).

Comment 7 Steve Baker 2014-07-27 21:19:17 UTC
I've filled in the doc text and left the priority low since I'm not aware of customers asking for this feature.