#eventlet-removal - Announcing the New Threading Backend of oslo.service
I'm happy to announce the new version of oslo.service is out! [1] This new version came out with the new Threading backend [2]. OpenStack Upper constraints are on the way to be upgraded to this new version [3]. You can start using the new threading backend by following the steps below: ``` import oslo_service.backend as service service.init_backend(service.BackendType.THREADING) ``` Ideally this backend selection should be made in your patcher module. Almost all OpenStack services own a household patcher. Neutron and Nova already demonstrated a successful adoption of this new backend on Nova scheduler and Neutron L3 agent: - https://review.opendev.org/c/openstack/neutron/+/938404 - https://review.opendev.org/c/openstack/nova/+/948450/17 Devstack is on the way to be adapted to allow you to set up `SYSTEMD_ENV_VARS`. [4] This will allow passing environment variables from zuul job definitions to systemd service files via the local conf. During the Eventlet removal effort this will allow teams to have separate jobs testing the same service in different concurrency modes. The first use case of this is to implement scenarios like passing variable `OS_NOVA_DISABLE_EVENTLET_PATCHING=true` to nova services that already supports running in native threading mode instead of with Eventlet. To get a more concrete integration example, you can take inspiration from Nova patches [5][6] to see how to implement your backend switch on your deliverables. A comprehensive guide is currently under creation. [7] Next steps will be to address a couple of remaining comments, to introduce functional tests, and to democratize the usages of this new backend. Thank you to Daniel for his hard work and all his efforts on this topic. Also I wanted to specially thank Gibi and Rodolfo for their close collaborations on this new backend implementation. Please join me to warmfully thank them. Our mission is to equip the community with everything it needs to leave Eventlet behind. This backend is only a tiny piece of this giant puzzle. Your turn to place your piece: https://removal.eventlet.org Cheers, [1] https://review.opendev.org/c/openstack/releases/+/950646 [2] https://review.opendev.org/c/openstack/oslo.service/+/945720 [3] https://review.opendev.org/c/openstack/requirements/+/950653 [4] https://review.opendev.org/c/openstack/devstack/+/948436 [5] https://review.opendev.org/c/openstack/nova/+/948311 [6] https://review.opendev.org/c/openstack/nova/+/948450 [7] https://review.opendev.org/c/openstack/oslo.service/+/940664 -- Hervé Beraud Principal Software Engineer at Red Hat irc: hberaud https://github.com/4383/
participants (1)
-
Herve Beraud