python-novaclient
Client library for OpenStack Compute API
Decision gist · record as of 2026-08-14
Yes, if you need to interact with OpenStack Compute (Nova) from Python. The package is actively maintained, has low install friction, carries a permissive license, and implements the full API surface. Install it when you're building applications or tools that manage OpenStack compute resources programmatically.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires keystoneauth1 session for authentication to an OpenStack cloud; you must have credentials and access to an OpenStack deployment.
- Low install friction with a pure-Python wheel distribution.
- Active maintenance status with a recent release.
License · maintenance · safety
Apache License, Version 2.0 (permissive) — Apache License 2.0 (permissive) — you can use, modify, and distribute this package freely in commercial and open-source projects, with minimal restrictions.
last release 2026-05-13 (93 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 539,224 downloads/mo, #6,109 on PyPI
Alternatives
Verify before relying
pip install python-novaclient
from novaclient import client
nova = client.Client('2.1', session=keystone_session)
servers = nova.servers.list()- Whether the deprecated command-line script (nova) is still actively used or if programmatic access is the primary interface.
- Performance characteristics and scalability limits when managing large numbers of compute resources.
What it is and what it does
python-novaclient is the official Python client library for OpenStack's Compute API (Nova). It translates Python method calls into REST API requests to an OpenStack cloud, allowing developers to programmatically create, manage, and monitor virtual machine instances, images, flavors, and other compute resources. The package implements the full OpenStack Compute API surface and is maintained as part of the OpenStack project.
The library is built on keystoneauth1 for secure authentication and uses oslo libraries for serialization and internationalization. It's designed for both direct Python integration into applications and as a dependency for higher-level OpenStack tools. The package supports Python 3.9 through 3.12 and is classified as Production/Stable.
Use it for
- Automate provisioning and teardown of virtual machines in an OpenStack cloud from Python applications.
- Build infrastructure-as-code tools that manage compute resources programmatically rather than through the web UI.
- Query and monitor running instances, flavors, and images across an OpenStack deployment.
- Integrate OpenStack compute operations into CI/CD pipelines or orchestration frameworks.
- Develop custom management dashboards or reporting tools that interact with Nova compute services.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to interact with OpenStack Compute (Nova) from Python.
The package is actively maintained, has low install friction, carries a permissive license, and implements the full API surface. Install it when you're building applications or tools that manage OpenStack compute resources programmatically.
Install
python-novaclient on PyPI
Before you install
Low install friction with a pure-Python wheel distribution. Active maintenance status with a recent release. Depends on 8 runtime packages including keystoneauth1 for authentication and oslo libraries for serialization and utilities.
Requires keystoneauth1 session for authentication to an OpenStack cloud; you must have credentials and access to an OpenStack deployment.
License in practice
Apache License 2.0 (permissive) — you can use, modify, and distribute this package freely in commercial and open-source projects, with minimal restrictions.
Quickstart
pip install python-novaclient
from novaclient import client
nova = client.Client('2.1', session=keystone_session)
servers = nova.servers.list()
Verify before relying
- Whether the deprecated command-line script (nova) is still actively used or if programmatic access is the primary interface.
- Performance characteristics and scalability limits when managing large numbers of compute resources.
Package facts
| License | Apache License, Version 2.0 permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 8 packagespbrkeystoneauth1iso8601oslo.i18noslo.serializationoslo.utilsPrettyTablestevedore |
| Maintenance | Actively maintained 93 days since the last release |
| First released | |
| Downloads | 539,224 / month, #6,109 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableEnvironment :: ConsoleEnvironment :: OpenStackIntended Audience :: DevelopersIntended Audience :: Information TechnologyLicense :: OSI Approved :: Apache Software LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPython |
Evidence: python_novaclient-18.13.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “openstack compute client”
- python-novaclientPython bindings to the OpenStack Compute API, providing programmatic…
- python-openstackclientA unified command-line client for OpenStack cloud infrastructure that…
- openstacksdkopenstacksdk is a client library for interacting with OpenStack…
Give your agent the search over MCP, or paste the wish link into any chat.
More Distributed Computing packages
gRPC Python is an HTTP/2-based RPC framework that enables you to define and call remote procedures across network boundaries using protocol buffers for serialization.
Install it if you need RPC communication in a distributed system or are integrating with existing gRPC services.
execnet lets you spawn and communicate with Python interpreters across local processes, remote hosts, and different platforms, using a simple API for task distribution and inter-process messaging.
However, the aging maintenance status (275 days since last release) means you should verify it meets your concurrency and performance needs before committing to a…
Cloudpickle extends Python's standard pickle module to serialize lambda functions, interactively-defined functions and classes, and other constructs that the default pickle cannot handle, making it suitable for cluster computing and remote code execution.
Install it if you need to serialize lambda functions, interactively-defined code, or non-standard Python constructs for cluster computing or distributed execution.
Provides a unified, open()-compatible Python API for streaming large files from remote storage (S3, GCS, Azure, HDFS, SFTP, HTTP) and local filesystems, with transparent compression support.
Install it if you work with large files on cloud storage or remote systems and want to avoid writing boilerplate around multiple SDKs.
Portalocker provides cross-platform file locking with support for exclusive and shared locks, plus Redis-based distributed locks and process-aware PID file locking.
Install it if you need file or process coordination; the optional extras (pywin32, redis) are only required for specific lock types.
Ray is a distributed computing framework that scales Python applications from a single machine to multi-node clusters, providing abstractions for parallel tasks, stateful actors, and shared objects.
See also python-glanceclient · python-heatclient · python-neutronclient · python-designateclient · python-keystoneclient · python-troveclient · python-magnumclient · python-manilaclient · python-swiftclient · cudo-compute