Newton Series Release Notes

6.0.0

New Features

  • The 2.37 microversion is now supported. This introduces the following changes:

    • CLI: The –nic value for the nova boot command now takes two

      special values, ‘auto’ and ‘none’. If –nic is not specified, the CLI defaults to ‘auto’.

    • Python API: The nics kwarg is required when creating a server using

      the novaclient.v2.servers.ServerManager.create API. The nics value can be a list of dicts or a string with value ‘auto’ or ‘none’.

Upgrade Notes

  • The ability to update the following network-related resources via the nova quota-update and nova quota-class-update commands is now deprecated:

    • Fixed IPs

    • Floating IPs

    • Security Groups

    • Security Group Rules

    By default the quota and limits CLIs will not update or show those resources using microversion >= 2.36. You can still use them, however, by specifying --os-compute-api-version 2.35. Quota information for network resources should be retrieved from python-neutronclient or python-openstackclient.

  • With the 2.37 microversion, the nics kwarg is required when creating a server using the novaclient.v2.servers.ServerManager.create API. The nics value can be a list of dicts or an enum string with one of the following values:

    • auto: This tells the Compute service to automatically allocate a network for the project if one is not available and then associate an IP from that network with the server. This is the same behaviour as passing nics=None before the 2.37 microversion.

    • none: This tells the Compute service to not allocate any networking for the server.

Deprecation Notes

  • The following commands are now deprecated:

    • dns-create

    • dns-create-private-domain

    • dns-create-public-domain

    • dns-delete

    • dns-delete-domain

    • dns-domains

    • dns-list

    • fixed-ip-get

    • fixed-ip-reserve

    • fixed-ip-unreserve

    • floating-ip-create

    • floating-ip-delete

    • floating-ip-list

    • floating-ip-pool-list

    • floating-ip-bulk-create

    • floating-ip-bulk-delete

    • floating-ip-bulk-list

    • network-create

    • network-delete

    • network-disassociate

    • network-associate-host

    • network-associate-project

    • network-list

    • network-show

    • scrub

    • secgroup-create

    • secgroup-delete

    • secgroup-list

    • secgroup-update

    • secgroup-add-group-rule

    • secgroup-delete-group-rule

    • secgroup-add-rule

    • secgroup-delete-rule

    • secgroup-list-rules

    • secgroup-list-default-rules

    • secgroup-add-default-rule

    • secgroup-delete-default-rule

    • tenant-network-create

    • tenant-network-delete

    • tenant-network-list

    • tenant-network-show

    With the 2.36 microversion these will fail in the API. The CLI will fallback to passing the 2.35 microversion to ease the transition. Network resource information should be retrieved from python-neutronclient or python-openstackclient.

5.1.0

New Features

  • Added microversion v2.33 that adds pagination support for hypervisors with the help of new optional parameters ‘limit’ and ‘marker’ which were added to hypervisor-list command.

  • Added microversion v2.35 that adds pagination support for keypairs with the help of new optional parameters ‘limit’ and ‘marker’ which were added to keypair-list command.

Upgrade Notes

  • Support for microversion 2.34 added.

  • The 2.36 microversion deprecated the image proxy API. As such, CLI calls now directly call the image service to get image details, for example, as a convenience to boot a server with an image name rather than the image id. To do this the following is assumed:

    1. There is an image entry in the service catalog.

    2. The image v2 API is available.

  • The 2.36 microversion deprecated the network proxy APIs in Nova. Because of this we now go directly to neutron for name to net-id lookups. For nova-net deployements the old proxies will continue to be used.

    To do this the following is assumed:

    1. There is a network entry in the service catalog.

    2. The network v2 API is available.

5.0.0

New Features

  • The 2.32 microverison adds support for virtual device role tagging. Device role tagging is an answer to the question ‘Which device is which?’ from inside the guest. When booting an instance, an optional arbitrary ‘tag’ parameter can be set on virtual network interfaces and/or block device mappings. This tag is exposed to the instance through the metadata API and on the config drive. Each tagged virtual network interface is listed along with information about the virtual hardware, such as bus type (ex: PCI), bus address (ex: 0000:00:02.0), and MAC address. For tagged block devices, the exposed hardware metadata includes the bus (ex: SCSI), bus address (ex: 1:0:2:0) and serial number.

    In the client, device tagging is exposed with the ‘tag’ key in the –block-device and –nic boot arguments.

Known Issues

  • While not an issue with the client itself, it should be noted that if a tagged network interface or volume is detached from a guest, its metadata will continue to appear in the config drive, even after instance reboot.

Upgrade Notes

  • Support for microversion 2.31 which fixes a bug in the os-console-auth-tokens API

  • The following deprecated options have been removed:

    • create instances:

      • –num-instance replaced by –min-count and –max-count

      • –key_name replaced by –key-name

      • –user_data replaced by –user-data

      • –availability_zone replaced by – availability-zone

      • –security_groups replaced by –security-groups

      • –block_device_mapping replaced by –block-device-mapping

    • list servers:

      • –reservation_id replaced by –reservation-id

      • –instance_name replaced by –instance-name

      • –all_tenants replaced by –all-tenants

    • rebuild instance:

      • –rebuild_password replaced by –rebuild-password

    • get serial console:

      • –console_type replaced by –console-type

    • create dns private domain:

      • –availability_zone replaced by –availability-zone

    • list security groups:

      • –all_tenants replaced by –all-tenants

    • add key pairs:

      • –pub_key replaced by –pub-key

    • live-migrate servers:

      • –block_migrate replaced by –block-migrate

      • –disk_over_commit replaced by –disk-over-commit

    • update quotas:

      • –floating_ips replaced by –floating-ips

      • –metadata_items replaced by –metadata-items

      • –injected_files replaced by –injected-files

      • –injected_file_content_bytes replaced by –injected-file-content-bytes

    • update quota classes:

      • –floating_ips replaced by –floating-ips

      • –metadata_items replaced by –metadata-items

      • –injected_files replaced by –injected-files

      • –injected_file_content_bytes replaced by –injected-file-content-bytes

    • create server groups:

      • –policy

    • Authentication Options:

      • –os_username replaced by –os-username

      • –os_password replaced by –os-password

      • –os_tenant_name replaced by –os-tenant-name

      • –os_auth_url replaced by –os-auth-url

      • –os_region_name replaced by –os-region-name

      • –os_auth_system replaced by –os-auth-system

      • –endpoint-type replaced by –os-endpoint-type

    • Optional arguments:

      • –service_type replaced by –service-type

      • –service_name replaced by –service-name

      • –volume_service_name replaced by –volume-service-name

      • –os_compute_api_version replaced by –os-compute-api-version

      • –bypass_url replaced by –bypass-url

  • novaclient.v2.client.Client raises an exception in case of direct usage instead of warning message. novaclient.client.Client is a primary interface to initialize the python client for Nova.

Deprecation Notes

  • The following CLIs and python API bindings are now deprecated for removal:

    • nova baremetal-node-list

    • nova baremetal-node-show

    • nova baremetal-interface-list

    These will be removed in the first major python-novaclient release after the Nova 15.0.0 Ocata release. Use python-ironicclient or python-openstackclient for CLI and python-ironicclient or openstacksdk for python API bindings.

4.1.0

Prelude

  • Log ‘x-openstack-request-id’ or ‘x-compute-request-id’ in each API call. If the caller (e.g. heat) uses oslo.log, the caller’s request id in oslo.context and the callee’s request id can be output in the same log message (same line).

New Features

  • Log ‘x-openstack-request-id’ or ‘x-compute-request-id’ in each API call. If the caller (e.g. heat) uses oslo.log, the caller’s request id in oslo.context and the callee’s request id can be output in the same log message (same line).

Upgrade Notes

  • Support v2.28 microversion

  • cpu_info property of hypervisor resource is a json now (previously it was text).

4.0.0

Upgrade Notes

  • Volume, volume-type and volume-snapshot create/update/delete/list CLIs and python API bindings are removed. Use python-cinderclient or python-openstackclient for CLIs instead. Use python-cinderclient or python-openstacksdk for python API bindings instead.

Deprecation Notes

  • The following CLIs and python API bindings are now deprecated for removal:

    • nova image-delete

    • nova image-list

    • nova image-meta

    • nova image-show

    These will be removed in the first major python-novaclient release after the Nova 15.0.0 Ocata release. Use python-glanceclient or python-openstackclient for CLI and python-glanceclient or openstacksdk for python API bindings.