ironic.common.mdns module¶
Multicast DNS implementation for API discovery.
This implementation follows RFC 6763 as clarified by the API SIG guideline https://review.opendev.org/651222.
- class ironic.common.mdns.Zeroconf[source]¶
Bases:
object
Multicast DNS implementation client and server.
Uses threading internally, so there is no start method. It starts automatically on creation.
Warning
The underlying library does not yet support IPv6.
- close()[source]¶
Shut down mDNS and unregister services.
Note
If another server is running for the same services, it will re-register them immediately.
- register_service(service_type, endpoint, params=None)[source]¶
Register a service.
This call announces the new services via multicast and instructs the built-in server to respond to queries about it.
- Parameters:
service_type – OpenStack service type, e.g. “baremetal”.
endpoint – full endpoint to reach the service.
params – optional properties as a dictionary.
- Raises:
ServiceRegistrationFailure
if the service cannot be registered, e.g. because of conflicts.