Jump to: navigation, search

Neutron/LBaaS/CLI

< Neutron‎ | LBaaS
Revision as of 13:15, 15 November 2012 by Ilya (talk)

<<TableOfContents()>>

Scope

This document describes commands that will be introduced into python-quantumclient in order to support LBaaS advanced service.

Implementation Details

All LBaaS commands have prefix lb- in order to avoid ambiguity. The set of commands corresponds to Quantum/LBaaS/API_1.0:


  lb-healthmonitor-create        Create a health monitor
  lb-healthmonitor-delete        Delete a given health monitor
  lb-healthmonitor-list          List health monitors that belong to a given tenant
  lb-healthmonitor-show          Show information of a given health monitor
  lb-healthmonitor-update        Update health monitor's information

  lb-healthmonitor-associate     Associate a health monitor with a pool
  lb-healthmonitor-disassociate  Disassociate a health monitor with a pool

  lb-member-create               Create a member
  lb-member-delete               Delete a given member
  lb-member-list                 List members that belong to a given tenant
  lb-member-show                 Show information of a given member
  lb-member-update               Update member's information

  lb-pool-create                 Create a pool
  lb-pool-delete                 Delete a given pool
  lb-pool-list                   List pools that belong to a given tenant
  lb-pool-show                   Show information of a given pool
  lb-pool-update                 Update pool's information

  lb-vip-create                  Create a vip
  lb-vip-delete                  Delete a given vip
  lb-vip-list                    List vips that belong to a given tenant
  lb-vip-show                    Show information of a given vip
  lb-vip-update                  Update vip's information


Command Specification

lb-healthmonitor-create

Create a new health monitor object.


lb-healthmonitor-create --type <type> --delay <delay> --max_retries <max_retries> --timeout <timeout> [--http_method <http method>] [--path <path>] [--expected-codes <expected codes>] [--tenant-id <tenant id>]


  • type: One of predefined health monitor types
  • delay: This is the minimum time in seconds between regular connections of the member.
  • timeout: Maximum number of seconds for a monitor to wait for a connection to be established before it times out. The value must be less than the delay value.
  • max_retries: Number of permissible connection failures before changing the member's status to INACTIVE. Must be a number between 1 and 10.
  • http_method: The HTTP method used for requests by the monitor of type HTTP. If this attribute is not specified, it defaults to "GET".
  • url_path: The HTTP path used in the HTTP request used by the monitor to test a member's health. This must be a string beginning with a / (forward slash). If this is not specified it defaults to "/".
  • expected_codes: These are the list of HTTP status codes expected in response from the member to declare it healthy. This attribute can contain one value, or a list of values separated by comma, or a range of values (e.g. "200-299"). If this attribute is not specified, it defaults to "200".
  • tenant-id: ID of tenant that owns the health monitor

lb-healthmonitor-delete

Delete a given healthmonitor object.

lb-healthmonitor-delete <healthmonitor-id>


lb-healthmonitor-list

Show list of health monitor objects available to tenant.

lb-healthmonitor-list


lb-healthmonitor-show

Shows information about a given health monitor object.

lb-healthmonitor-show <healthmonitor-id>


lb-healthmonitor-update

Update information of a given health monitor object.

lb-healthmonitor-update [--delay <delay>] [--max_retries <max_retries>] [--timeout <timeout>] [--name <name>] [--http_method <http method>] [--path <path>] [--expected-codes <expected codes>] <healthmonitor-id>


lb-healthmonitor-associate

Associate a healthmonitor with a pool.

lb-healthmonitor-associate <healthmonitor-id> <pool-id>


lb-healthmonitor-disassociate

Disassociate a healthmonitor with a pool.

lb-healthmonitor-disassociate <healthmonitor-id> <pool-id>


lb-member-create

Create a member

lb-member-create --address <IP> --port <tcp port> [--weight <weight>] [--admin-state <UP|DOWN>] [--tenant-id <tenant id>] <pool-id>


  • address: The IP address of the pool member on the pool's network.
  • port: The port on which the pool member listens for requests or connections.
  • weight: The weight of pool member in the pool.
  • admin-state: Specifies the state of member, by default UP.
  • pool_id: The pool to which the member is added.
  • tenant-id: ID of tenant that owns the member

lb-member-delete

Delete a given member

lb-member-delete <member-id>


lb-member-list

List members that belong to a given tenant

lb-member-list


lb-member-show

Show information of a given member

lb-member-show <member-id>


lb-member-update

Update member's information

lb-member-update [--pool-id <pool id>] [--weight <weight>] [--admin-state <UP|DOWN>] <member-id>


lb-pool-create

Create a pool

lb-pool-create --network-id <network-id> --lb-method <lb-method> --protocol <protocol> --name <name> [--description <description>] [--tenant-id <tenant id>]


  • name: name of the pool
  • network_id: The network on which the members of the pool will be located. Only members that are on this network can be added to the pool.
  • lb_method: The algorithm used to distribute load between the members of the pool.
  • protocol: The protocol used by the pool members
  • description: Human-readable description of the pool
  • tenant-id: ID of tenant that owns the pool

lb-pool-delete

Delete a given pool

lb-pool-delete <pool-id>


lb-pool-list

List pools that belong to a given tenant

lb-pool-list


lb-pool-show

Show information of a given pool

lb-pool-show <pool-id>


lb-pool-update

Update pool's information

lb-pool-update [--lb-method <lb-method>] [--description <description>] [--name <name>] <pool-id>


lb-vip-create

Create a vip

lb-vip-create --network-id <network-id> --protocol <protocol> --port <tcp port> --name <name> [--connection-limit <connection limit>] [--admin-state <UP|DOWN>] [--session-persistence <session-persistence-type>] [--description <description>] [--tenant-id <tenant id>] <pool-id> 


  • network_id: The network on which to allocate the vip's address. A tenant can only create vips on networks authorized by policy (e.g. her own networks or shared/provider networks).
  • protocol: the protocol of the vip address.
  • port: the port on which to listen for client traffic that is associated with the vip address.
  • connection-limit: the maximum number of connections per second allowed for the vip.
  • admin-state: initial state of vip, by default UP
  • session-persistence: the type of session persistence applied to traffic.
  • description: human-readable description of the vip
  • pool_id: the id of the pool that contains the real servers to which traffic is load balanced.
  • tenant-id: ID of tenant that owns the vip

lb-vip-delete

Delete a given vip

lb-vip-delete <vip-id>


lb-vip-list

List vips that belong to a given tenant

lb-vip-list


lb-vip-show

Show information of a given vip

lb-vip-show <vip-id>


lb-vip-update

Update vip's information

lb-vip-update [--connection-limit <connection limit>] [--admin-state <UP|DOWN>] [--session-persistence <session-persistence-type>] [--description <description>] [--pool-id <pool-id>] [--name <name>] <vip-id>