実行手順
1. 実行環境の構築・設定以下のページを参照して、実行環境の構築・設定を行います。
Kubernetes python clientでMicrok8sのnamespaceを列挙する
2. サンプルプログラムの作成と実行
以下のサンプルプログラムでPodを列挙することが出来ます。
list-pod.py
from kubernetes import config, client
# configを読み込み
cfg = config.load_kube_config()
namespace = 'default'
# クライアントを作成
with client.ApiClient(cfg) as api_client:
api = client.CoreV1Api(api_client)
# podの列挙
pods = api.list_namespaced_pod(namespace, watch=False)
for pod in pods.items:
# print(type(pod))
print("-----------")
# pod名とphase
print("{}:{}".format(pod.metadata.name, pod.status.phase))
# pod内のコンテナ
for container in pod.spec.containers:
# イメージ名
print(" image: {}".format(container.image))
# ポート
if container.ports is not None:
for port in container.ports:
print(" container port: {}".format(port.container_port))
print(" host port: {}".format(port.host_port))
# restart policy
print("restart policy: {}".format(pod.spec.restart_policy))
# スケジューラ名
print("scheduler_name: {}".format(pod.spec.scheduler_name))
# サービスアカウント
print("service_account_name: {}".format(pod.spec.service_account_name))
# ボリューム
for volume in pod.spec.volumes:
# ボリューム名
print(" volume name: {}".format(volume.name))
# Persistent Volume Claim
print(" PVC: {}".format(volume.persistent_volume_claim))
・実行コマンド
python3 list-pod.py
関連情報
・Kubernetes Python Clientのリポジトリhttps://github.com/kubernetes-client/python
0 件のコメント:
コメントを投稿