Need help with kubernetes_asyncio?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

175 Stars 36 Forks Apache License 2.0 245 Commits 12 Opened issues


Python asynchronous client library for Kubernetes

Services available


Need anything else?

Contributors list

Kubernetes Python Client

Build status PyPI version codecov pypi supported versions Client Capabilities Client Support Level

Asynchronous (AsyncIO) client library for the Kubernetes API.

This library is created in the same way as official but uses asynchronous version of OpenAPI Generator. My motivation is described here:


From PyPi directly:

pip install kubernetes_asyncio

It requires Python 3.6+

OpenAPI generator

Starting from v9.0.0 OpenAPI generator is used to generate code instead of swagger-codegen. This change should be transparent from the client point of view.


To list all pods:

import asyncio
from kubernetes_asyncio import client, config
from kubernetes_asyncio.client.api_client import ApiClient

async def main(): # Configs can be set in Configuration class directly or using helper # utility. If no argument provided, the config will be loaded from # default location. await config.load_kube_config()

# use the context manager to close http sessions automatically
async with ApiClient() as api:

    v1 = client.CoreV1Api(api)
    print("Listing pods with their IPs:")
    ret = await v1.list_pod_for_all_namespaces()

    for i in ret.items:
        print(i.status.pod_ip, i.metadata.namespace,

if name == 'main': loop = asyncio.get_event_loop() loop.run_until_complete(main()) loop.close()

More complicated examples, like asynchronous multiple watch or tail logs from pods, you can find in



This library is generated in the same way as the official Kubernetes Python Library. It uses swagger-codegen and the same concepts like streaming, watching or reading configuration. Because of an early stage of this library some differences still exist:

| | synchronous library kubernetes-client/python | this library | |--|--------------------------------------------------------------------|---------------------------------------------------------------| | authentication method | gcp-token, azure-token, user-token, oidc-token, user-password, in-cluster | gcp-token (only via gcloud command), user-token, oidc-token, user-password, in-cluster | | streaming data via websocket from PODs | bidirectional | read-only is already implemented |


This library is versioned in the same way as the synchronous library. The scehma version has been changed with version v18.20.0. Now, first two numbers from version are Kubernetes version (v.1.18.20). The last number is for changes in the library not directly connected with K8s.


Install the development packages:

pip install -r requirements.txt
pip install -r test-requirements.txt

You can run the style checks and tests with

flake8 kubernetes_asyncio/
isort --diff kubernetes_asyncio/

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.