Nova supports 3 types of instance metadata via config drive and the metadata API: user data, system metadata and vendor data. There are caveats in Nova's metadata that deserve exploring: user data has size limits, and is only useful to the API caller who made the boot request; metadata is modelled largely on what Amazon EC2 provided several years ago, and hasn't been updated in a while; and, there are a few known security issues that the Operations community needs to be aware of when deploying the metadata server.
Finally, recent releases of Nova have added support for a “vendor data” service, which allows Operators to provide information to instances about the deployment they run in, and inject information into an instance which might be unknowable to the user who requested the instance boot via the API.
This talk will explore all of these aspects of the Nova metadata implementation, while providing guidelines and examples for deployment.