This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.2.7. カスタムリソース定義からのリソースの管理
以下では、開発者がカスタムリソース定義 (CRD) にあるカスタムリソース (CR) をどのように管理できるかについて説明します。
2.7.1. カスタムリソース定義 リンクのコピーリンクがクリップボードにコピーされました!
Kubernetes API では、リソースは特定の種類の API オブジェクトのコレクションを保管するエンドポイントです。たとえば、ビルトインされた Pod リソースには Pod オブジェクトのコレクションが含まれます。
カスタムリソース定義 (CRD) オブジェクトは、クラスター内に新規の固有オブジェクト Kind
を定義し、Kubernetes API サーバーにそのライフサイクル全体を処理させます。
カスタムリソース (CR) オブジェクトは、クラスター管理者によってクラスターに追加された CRD から作成され、すべてのクラスターユーザーが新規リソースタイプをプロジェクトに追加できるようにします。
Operator はとりわけ CRD を必要な RBAC ポリシーおよび他のソフトウェア固有のロジックでパッケージ化することで CRD を利用します。またクラスター管理者は、Operator のライフサイクル外にあるクラスターに CRD を手動で追加でき、これらをすべてのユーザーに利用可能にすることができます。
クラスター管理者のみが CRD を作成できる一方で、開発者は CRD への読み取りおよび書き込みパーミッションがある場合には、既存の CRD から CR を作成することができます。
2.7.2. ファイルからのカスタムリソースの作成 リンクのコピーリンクがクリップボードにコピーされました!
カスタムリソース定義 (CRD) がクラスターに追加された後に、クラスターリソース (CR) は CR 仕様を使用するファイルを使って CLI で作成できます。
前提条件
- CRD がクラスター管理者によってクラスターに追加されている。
手順
CR の YAML ファイルを作成します。以下の定義例では、
cronSpec
とimage
のカスタムフィールドがKind: CronTab
のCR に設定されます。このKind
は、CRD オブジェクトのspec.kind
フィールドから取得します。CR の YAML ファイルサンプル
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルの作成後に、オブジェクトを作成します。
oc create -f <file_name>.yaml
$ oc create -f <file_name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.3. カスタムリソースの検査 リンクのコピーリンクがクリップボードにコピーされました!
CLI を使用してクラスターに存在するカスタムリソース (CR) オブジェクトを検査できます。
前提条件
- CR オブジェクトがアクセスできる namespace にあること。
手順
CR の特定の
Kind
についての情報を取得するには、以下を実行します。oc get <kind>
$ oc get <kind>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例:
oc get crontab
$ oc get crontab NAME KIND my-new-cron-object CronTab.v1.stable.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow リソース名では大文字と小文字が区別されず、CRD で定義される単数形または複数形のいずれか、および任意の短縮名を指定できます。例:
oc get crontabs oc get crontab oc get ct
$ oc get crontabs $ oc get crontab $ oc get ct
Copy to Clipboard Copied! Toggle word wrap Toggle overflow CR の未加工の YAML データを確認することもできます。
oc get <kind> -o yaml
$ oc get <kind> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow