diff --git a/vmware_nsx/services/lbaas/lb_const.py b/vmware_nsx/services/lbaas/lb_const.py index ac55e6b1bf..3d07469d2e 100644 --- a/vmware_nsx/services/lbaas/lb_const.py +++ b/vmware_nsx/services/lbaas/lb_const.py @@ -38,6 +38,7 @@ LB_HEALTH_MONITOR_PING = 'PING' LB_HEALTH_MONITOR_TCP = 'TCP' LB_HEALTH_MONITOR_HTTP = 'HTTP' LB_HEALTH_MONITOR_HTTPS = 'HTTPS' +LB_HEALTH_MONITOR_UDP_CONNECT = 'UDP-CONNECT' HEALTH_MONITOR_MAP = { LB_HEALTH_MONITOR_PING: 'icmp', diff --git a/vmware_nsx/services/lbaas/octavia/octavia_driver.py b/vmware_nsx/services/lbaas/octavia/octavia_driver.py index 0fdb206c71..e9feac2c48 100644 --- a/vmware_nsx/services/lbaas/octavia/octavia_driver.py +++ b/vmware_nsx/services/lbaas/octavia/octavia_driver.py @@ -32,9 +32,9 @@ from octavia_lib.api.drivers import exceptions from octavia_lib.api.drivers import provider_base as driver_base +from vmware_nsx.services.lbaas import lb_const from vmware_nsx.services.lbaas.octavia import constants as d_const - LOG = logging.getLogger(__name__) cfg.CONF.import_group('oslo_messaging', 'octavia.common.config') @@ -492,6 +492,10 @@ class NSXOctaviaDriver(driver_base.ProviderDriver): # Health Monitor @log_helpers.log_method_call def health_monitor_create(self, healthmonitor): + if healthmonitor.type == lb_const.LB_HEALTH_MONITOR_UDP_CONNECT: + raise exceptions.UnsupportedOptionError( + user_fault_string="UDP-CONNECT monitor is not supported") + kw = {'healthmonitor': self.obj_to_dict(healthmonitor)} self.client.cast({}, 'healthmonitor_create', **kw)