11.11. アノテーションの関数への追加
デプロイされたサーバーレス機能に Kubernetes アノテーションを追加できます。注釈を使用すると、関数の目的に関するメモなど、任意のメタデータを関数に添付できます。注釈は、func.yaml
設定ファイルの annotations
セクションに追加されます。
関数アノテーション機能には、以下の 2 つの制限があります。
-
関数アノテーションがクラスター上の対応する Knative サービスに伝播されると、
func.yaml
ファイルから削除することでサービスから削除することはできません。サービスの YAML ファイルを直接変更するか、または OpenShift Container Platform Web コンソールを使用して、Knative サービスからアノテーションを削除する必要があります。 -
autoscaling
アノテーションなど、Knative によって設定されるアノテーションを設定することはできません。
11.11.1. 関数へのアノテーションの追加
関数にアノテーションを追加できます。ラベルと同様に、アノテーションはキーと値のマップとして定義されます。アノテーションは、関数の作成者など、関数に関するメタデータを提供する場合などに役立ちます。
前提条件
- OpenShift Serverless Operator および Knative Serving がクラスターにインストールされている。
-
Knative (
kn
) CLI をインストールしている。 - 関数を作成している。
手順
-
関数の
func.yaml
ファイルを開きます。 追加するすべてのアノテーションについて、以下の YAML を
annotations
セクションに追加します。name: test namespace: "" runtime: go ... annotations: <annotation_name>: "<annotation_value>" 1
- 1
<annotation_name>: "<annotation_value>"
をお使いのアノテーションに置き換えます。
たとえば、関数が Alice によって作成者されたことを示すには、以下のアノテーションを含めることができます。
name: test namespace: "" runtime: go ... annotations: author: "alice@example.com"
- 設定を保存します。
次に関数をクラスターにデプロイすると、アノテーションが対応する Knative サービスに追加されます。