Verrazzanoトレイトについて

Verrazzanoトレイトの詳細

Traitは、コンポーネント・ワークロードをカスタマイズし、デプロイメント中に関連リソースを生成します。Verrazzanoには、IngressTraitやMetricsTraitなどの複数のTraitが用意されています。プラットフォームは、デプロイメント中にApplicationConfigurationに含まれるTraitを抽出します。この処理は、Componentリソースからのワークロード・コンテンツの抽出に似ています。一部のKubernetesリソースでは、oam-kubernetes-runtimeオペレータにcreate権限を付与する必要があることに注意してください。

Kubernetesオペレータ(verrazzano-application-operatorなど)は、抽出されたこれらのTraitを処理し、追加の関連リソースを作成したり、関連するワークロードを変更します。各Trait実装の動作は異なります。

次の例は、参照先Componentに適用されるIngressTraitを示しています。

apiVersion: core.oam.dev/v1alpha2
kind: ApplicationConfiguration
...
spec:
  components:
    - componentName: example-component
      traits:
        - trait:
            apiVersion: oam.verrazzano.io/v1alpha1
            kind: IngressTrait
            spec:
              rules:
                - paths:
                    - path: "/greet"

各Traitタイプには、オプションでTraitDefinitionを関連付けることができます。これにより、TraitのスキーマおよびTraitを適用できるワークロードに関する追加情報がプラットフォームに提供されます。TraitDefintionは、通常、エンド・ユーザーではなくプラットフォームによって提供されます。

Verrazzanoプラットフォームには、複数のTrait定義および実装が用意されています: