Hi Mihaela, The old neutron-lbaas haproxy namespace driver does not have L7 support. Only the Octavia driver and some vendor provider drivers have L7 support.
Michael On Tue, Oct 3, 2017 at 11:35 PM, Pawel Suder <[email protected]> wrote: > Hello, > > > It seems that HaproxyOnHostPluginDriver from > https://github.com/openstack/neutron-lbaas/blob/mitaka-eol/neutron_lbaas/drivers/haproxy/plugin_driver.py#L21 > extends AgentDriverBase > https://github.com/openstack/neutron-lbaas/blob/mitaka-eol/neutron_lbaas/drivers/common/agent_driver_base.py#L301 > where I could not located L7 things. > > L7 things might be related to Octavia (only?). What I found is that HAProxy > (https://www.haproxy.com/doc/aloha/7.0/haproxy/index.html) has L7 things. > > > It seems that in old good times that thing was not taken into the > consideration. > > > Cheers, > > Paweł > > ________________________________ > Od: [email protected] <[email protected]> > Wysłane: 3 października 2017 14:45:11 > Do: OpenStack Development Mailing List (not for usage questions) > Temat: Re: [openstack-dev] Odp.: [neutron][lbaasv2][agent implementation] L7 > policy support > > > Hi, > > > > I appreciate the help. In neutron-server I have the following service > providers enabled: > > > > service_provider = > LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default > > service_provider = > LOADBALANCERV2:Octavia:neutron_lbaas.drivers.octavia.driver.OctaviaDriver > > > > With Octavia provider L7 policy works fine. With haproxy (agent provider) I > receive the error below. > > > > On the haproxy agent I have the following setting (however, the > neutron-server throws that error and not even sends any request to agent): > > > > interface_driver = neutron.agent.linux.interface.OVSInterfaceDriver > > device_driver = > neutron_lbaas.drivers.haproxy.namespace_driver.HaproxyNSDriver > > > > Mihaela > > > > From: Pawel Suder [mailto:[email protected]] > Sent: Tuesday, October 03, 2017 3:10 PM > To: OpenStack Development Mailing List (not for usage questions) > Subject: [openstack-dev] Odp.: [neutron][lbaasv2][agent implementation] L7 > policy support > > > > Hello Mihaela, > > > > It seems that you are referring to that part of code > https://github.com/openstack/neutron-lbaas/blob/mitaka-eol/neutron_lbaas/drivers/driver_base.py#L36 > > > > I found that document for Mitaka > https://docs.openstack.org/mitaka/networking-guide/config-lbaas.html > > > > It might be related to incorrectly configured driver for LBaaS (or indeed > not implemented driver for L7 policy for specific driver). > > > > Questions: > > > > * What do you have configured in neutron configuration in section > [service_providers]? > > * Which driver do you want to use? > > > > Example line > > > > service_provider = > LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default > > > > Cheers, > > Paweł > > ________________________________ > > Od: [email protected] <[email protected]> > Wysłane: 3 października 2017 11:13:34 > Do: OpenStack Development Mailing List (not for usage questions) > Temat: [openstack-dev] [neutron][lbaasv2][agent implementation] L7 policy > support > > > > Hello, > > > > Does the agent implementation of LBaaSv2 support L7 policies? I am testing > with Mitaka version and I get “Not Implemented Error”. > > > > {"asctime": "2017-10-03 07:34:42.764","process": "18","levelname": > "INFO","name": "neutron_lbaas.services.loadbalancer.plugin", "request_id": > "req-186bf812-1cdf-496b-a117-711f1e42c6bd", "user_identity": {"user_id": > "44364a07de754daa9ffeb2911fe3620a", "project_id": > "a5f15235c0714365b98a50a11ec956e7", "domain_id": "-", "user_domain_id": "-", > "project_domain_id": "-"},"instance": {},"message":"Calling driver operation > NotImplementedManager.create"} > > {"asctime": "2017-10-03 07:34:42.765","process": "18","levelname": > "ERROR","name": "neutron_lbaas.services.loadbalancer.plugin", "request_id": > "req-186bf812-1cdf-496b-a117-711f1e42c6bd", "user_identity": {"user_id": > "44364a07de754daa9ffeb2911fe3620a", "project_id": > "a5f15235c0714365b98a50a11ec956e7", "domain_id": "-", "user_domain_id": "-", > "project_domain_id": "-"},"instance": {},"message":"There was an error in > the driver"} > > 2017-10-03 07:34:42.765 18 TRACE neutron_lbaas.services.loadbalancer.plugin >>>>>>Traceback (most recent call last): > > 2017-10-03 07:34:42.765 18 TRACE neutron_lbaas.services.loadbalancer.plugin >>>>>> File > "/opt/neutron/lib/python2.7/site-packages/neutron_lbaas/services/loadbalancer/plugin.py", > line 486, in _call_driver_operation > > 2017-10-03 07:34:42.765 18 TRACE neutron_lbaas.services.loadbalancer.plugin >>>>>> driver_method(context, db_entity) > > 2017-10-03 07:34:42.765 18 TRACE neutron_lbaas.services.loadbalancer.plugin >>>>>> File > "/opt/neutron/lib/python2.7/site-packages/neutron_lbaas/drivers/driver_base.py", > line 36, in create > > 2017-10-03 07:34:42.765 18 TRACE neutron_lbaas.services.loadbalancer.plugin >>>>>> raise NotImplementedError() > > 2017-10-03 07:34:42.765 18 TRACE neutron_lbaas.services.loadbalancer.plugin >>>>>>NotImplementedError > > 2017-10-03 07:34:42.765 18 TRACE neutron_lbaas.services.loadbalancer.plugin >>>>>> > > {"asctime": "2017-10-03 07:34:42.800","process": "18","levelname": > "ERROR","name": "neutron.api.v2.resource", "request_id": > "req-186bf812-1cdf-496b-a117-711f1e42c6bd", "user_identity": {"user_id": > "44364a07de754daa9ffeb2911fe3620a", "project_id": > "a5f15235c0714365b98a50a11ec956e7", "domain_id": "-", "user_domain_id": "-", > "project_domain_id": "-"},"instance": {},"message":"create failed"} > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>>Traceback > (most recent call last): > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/neutron/api/v2/resource.py", line > 84, in resource > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> result = > method(request=request, **args) > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/neutron/api/v2/base.py", line 410, > in create > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> return > self._create(request, body, **kwargs) > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/oslo_db/api.py", line 148, in > wrapper > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> > ectxt.value = e.inner_exc > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, > in __exit__ > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> > self.force_reraise() > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, > in force_reraise > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> > six.reraise(self.type_, self.value, self.tb) > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/oslo_db/api.py", line 138, in > wrapper > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> return > f(*args, **kwargs) > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/neutron/api/v2/base.py", line 521, > in _create > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> obj = > do_create(body) > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/neutron/api/v2/base.py", line 503, > in do_create > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> > request.context, reservation.reservation_id) > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, > in __exit__ > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> > self.force_reraise() > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, > in force_reraise > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> > six.reraise(self.type_, self.value, self.tb) > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/neutron/api/v2/base.py", line 496, > in do_create > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> return > obj_creator(request.context, **kwargs) > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/neutron_lbaas/services/loadbalancer/plugin.py", > line 1086, in create_l7policy > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> > l7policy_db) > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> File > "/opt/neutron/lib/python2.7/site-packages/neutron_lbaas/services/loadbalancer/plugin.py", > line 494, in _call_driver_operation > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> raise > loadbalancerv2.DriverError() > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>>DriverError: > An error happened in the driver > > 2017-10-03 07:34:42.800 18 TRACE neutron.api.v2.resource >>>>> > > > > Thanks you, > > Mihaela Balas > > _________________________________________________________________________________________________________________________ > > > > Ce message et ses pieces jointes peuvent contenir des informations > confidentielles ou privilegiees et ne doivent donc > > pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu > ce message par erreur, veuillez le signaler > > a l'expediteur et le detruire ainsi que les pieces jointes. Les messages > electroniques etant susceptibles d'alteration, > > Orange decline toute responsabilite si ce message a ete altere, deforme ou > falsifie. Merci. > > > > This message and its attachments may contain confidential or privileged > information that may be protected by law; > > they should not be distributed, used or copied without authorisation. > > If you have received this email in error, please notify the sender and > delete this message and its attachments. > > As emails may be altered, Orange is not liable for messages that have been > modified, changed or falsified. > > Thank you. > > _________________________________________________________________________________________________________________________ > > Ce message et ses pieces jointes peuvent contenir des informations > confidentielles ou privilegiees et ne doivent donc > pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu > ce message par erreur, veuillez le signaler > a l'expediteur et le detruire ainsi que les pieces jointes. Les messages > electroniques etant susceptibles d'alteration, > Orange decline toute responsabilite si ce message a ete altere, deforme ou > falsifie. Merci. > > This message and its attachments may contain confidential or privileged > information that may be protected by law; > they should not be distributed, used or copied without authorisation. > If you have received this email in error, please notify the sender and > delete this message and its attachments. > As emails may be altered, Orange is not liable for messages that have been > modified, changed or falsified. > Thank you. > > > __________________________________________________________________________ > OpenStack Development Mailing List (not for usage questions) > Unsubscribe: [email protected]?subject:unsubscribe > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: [email protected]?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
