Add pool_member related interfaces to neutron v2 driver
This patch added lbaas pool_member related interfaces to neutron v2 driver. Change-Id: I60eecdb9320b7238a27de47e2ad57dd74cb49629
This commit is contained in:
parent
94875cb5e0
commit
09b39d12da
|
@ -194,6 +194,61 @@ class NeutronClient(base.DriverBase):
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def pool_member_get(self, pool_id, member_identity):
|
||||||
|
try:
|
||||||
|
member = self.conn.network.find_pool_member(member_identity,
|
||||||
|
pool_id)
|
||||||
|
except sdk.exc.HttpException as ex:
|
||||||
|
msg = _('Failed in getting lb pool_member %(value)s: %(ex)s'
|
||||||
|
) % {'value': member_identity, 'ex': six.text_type(ex)}
|
||||||
|
raise exception.Error(msg=msg)
|
||||||
|
|
||||||
|
return member
|
||||||
|
|
||||||
|
def pool_member_list(self, pool_id):
|
||||||
|
try:
|
||||||
|
members = [m for m in self.conn.network.pool_members(pool_id)]
|
||||||
|
except sdk.exc.HttpException as ex:
|
||||||
|
msg = _('Failed in listing lb members of pool %(id)s: %(ex)s'
|
||||||
|
) % {'id': pool_id, 'ex': six.text_type(ex)}
|
||||||
|
raise exception.Error(msg=msg)
|
||||||
|
|
||||||
|
return members
|
||||||
|
|
||||||
|
def pool_member_create(self, pool_id, address, protocol_port, subnet_id,
|
||||||
|
weight=None, admin_state_up=True):
|
||||||
|
|
||||||
|
kwargs = {
|
||||||
|
'pool_id': pool_id,
|
||||||
|
'address': address,
|
||||||
|
'protocol_port': protocol_port,
|
||||||
|
'admin_state_up': admin_state_up,
|
||||||
|
'subnet_id': subnet_id,
|
||||||
|
}
|
||||||
|
|
||||||
|
if weight is not None:
|
||||||
|
kwargs['weight'] = weight
|
||||||
|
|
||||||
|
try:
|
||||||
|
res = self.conn.network.create_pool_member(**kwargs)
|
||||||
|
except sdk.exc.HttpException as ex:
|
||||||
|
msg = _('Failed in adding member to lb pool %(id)s: %(ex)s'
|
||||||
|
) % {'id': pool_id, 'ex': six.text_type(ex)}
|
||||||
|
raise exception.Error(msg=msg)
|
||||||
|
|
||||||
|
return res
|
||||||
|
|
||||||
|
def pool_member_delete(self, pool_id, member_id):
|
||||||
|
try:
|
||||||
|
self.conn.network.delete_pool_member(member_id, pool_id)
|
||||||
|
except sdk.exc.HttpException as ex:
|
||||||
|
msg = _('Failed in deleting lb member %(id)s from pool %(pool)s: '
|
||||||
|
'%(ex)s') % {'id': member_id, 'pool': pool_id,
|
||||||
|
'ex': six.text_type(ex)}
|
||||||
|
raise exception.Error(msg=msg)
|
||||||
|
|
||||||
|
return
|
||||||
|
|
||||||
def healthmonitor_get(self, hm_identity):
|
def healthmonitor_get(self, hm_identity):
|
||||||
try:
|
try:
|
||||||
hm = self.conn.network.find_health_monitor(hm_identity)
|
hm = self.conn.network.find_health_monitor(hm_identity)
|
||||||
|
|
Loading…
Reference in New Issue