kubectl get crd に GROUP、SCOPE等の列を追加

概要

kubectl get crd コマンドの出力に GROUP、SCOPE、VERSIONS、CREATED AT の4列が新たに追加され、CRDの重要な情報が一覧で確認できるようになりました。

背景

CRD(Custom Resource Definition)はKubernetesを拡張するためのリソースで、独自のAPIオブジェクトを定義できます。たとえばIstioの VirtualService やPrometheusの ServiceMonitor などはCRDとして定義されています。

以前の kubectl get crd の出力はリソース名と作成日時しか表示されず、どのAPIグループに属しているか、どのバージョンが利用可能かなどを知るには kubectl get crd <name> -o yaml で詳細を確認する必要がありました。

詳細

新しい出力形式:

NAME                          GROUP               SCOPE        VERSIONS   CREATED AT
virtualservices.networking... networking.istio.io Namespaced   v1beta1    2024-01-15T...
servicemonitors.monitoring...  monitoring.coreos.com Namespaced v1        2024-01-15T...

追加された列:

  • GROUP: APIグループ(例: networking.istio.io
  • SCOPE: Namespaced または Cluster
  • VERSIONS: 利用可能なAPIバージョン
  • CREATED AT: 作成日時

使用例

kubectl get crd
# 以前はNAMEとCREATED ATのみ
# 今後はGROUP, SCOPE, VERSIONSも表示される

これにより、クラスターにインストールされているカスタムリソースを素早く把握しやすくなります。

参考リンク