VerrazzanoProjectカスタム・リソース定義

VerrazzanoProjectカスタム・リソースは、1つ以上のクラスタでアプリケーション・ネームスペースおよび関連セキュリティ設定を作成するために使用されます。ネームスペースは、常に管理クラスタ上に作成されます。managed1という名前のクラスタに作成するネームスペースを指定するサンプルVerrazzanoProjectを次に示します。

apiVersion: clusters.verrazzano.io/v1alpha1
kind: VerrazzanoProject
metadata:
  name: hello-helidon
  namespace: verrazzano-mc
spec:
  template:
    namespaces:
      - metadata:
          name: hello-helidon
  placement:
    clusters:
      - name: managed1

VerrazzanoProject

フィールド 説明 必須
apiVersion 文字列 clusters.verrazzano.io/v1alpha1 はい
kind 文字列 VerrazzanoProject はい
metadata ObjectMeta メタデータのフィールドについては、Kubernetes APIのドキュメントを参照してください。 はい
spec VerrazzanoProjectSpec プロジェクトの指定。 はい
status MultiClusterResourceStatus マルチクラスタ・リソースの実行時ステータス。 いいえ

VerrazzanoProjectSpec

VerrazzanoProjectSpecは、作成するネームスペースとこの作成先クラスタを指定します。

フィールド 説明 必須
template ProjectTemplate プロジェクト・テンプレート。 はい
placement Placement ネームスペースが作成されるクラスタ。 はい

ProjectTemplate

ProjectTemplateには、作成するネームスペースのリストと各ネームスペースのオプションのセキュリティ構成が含まれます。

フィールド 説明 必須
namespaces NamespaceTemplate配列 このプロジェクトに対して作成するアプリケーション・ネームスペースのリスト。 はい
security SecuritySpec プロジェクト・セキュリティ構成。 いいえ
networkPolicies NetworkPolicyTemplate配列 プロジェクト内のネームスペースに適用されるネットワーク・ポリシー。 いいえ

NamespaceTemplate

NamespaceTemplateには、Kubernetesネームスペースのメタデータおよび仕様が含まれています。

フィールド 説明 必須
metadata ObjectMeta メタデータのフィールドについては、Kubernetes APIのドキュメントを参照してください。 はい
spec NamespaceSpec types.goで定義されているstruct NamespaceSpecのインスタンス。 いいえ

SecuritySpec

SecuritySpecは、プロジェクトのセキュリティ構成を定義します。

フィールド 説明 必須
projectAdminSubjects Subject verrazzano-project-adminロールにバインドするサブジェクト。types.goで定義されているstruct Subjectのインスタンスとしてエンコードされます。 いいえ
projectMonitorSubjects Subject verrazzano-project-monitoringロールにバインドするサブジェクト。types.goで定義されているstruct Subjectのインスタンスとしてエンコードされます。 いいえ

NetworkPolicyTemplate

NetworkPolicyTemplateには、基礎となるNetworkPolicyのメタデータおよび仕様が含まれています。

フィールド 説明 必須
metadata ObjectMeta メタデータのフィールドについては、Kubernetes APIのドキュメントを参照してください。 はい
spec NetworkPolicySpec types.goで定義されているstruct NetworkPolicySpecのインスタンス。 いいえ