2.10. バージョンに依存しないように GitOps ZTP サイト設定リポジトリーを準備する


GitOps ZTP を使用して、OpenShift Container Platform のさまざまなバージョンを実行しているマネージドクラスターのソースカスタムリソース (CR) を管理できます。これは、ハブクラスター上で実行している OpenShift Container Platform のバージョンが、マネージドクラスター上で実行しているバージョンから独立している可能性があることを意味します。

注記

次の手順では、クラスターポリシー管理に PolicyGentemplate リソースではなく、PolicyGenerator リソースを使用していることを前提としています。

前提条件

  • OpenShift CLI (oc) がインストールされている。
  • cluster-admin 権限を持つユーザーとしてログインしている。

手順

  1. SiteConfig CR と PolicyGenerator CR の個別のパスを持つディレクトリー構造を作成します。
  2. PolicyGenerator ディレクトリー内に、使用可能にする OpenShift Container Platform バージョンごとにディレクトリーを作成します。バージョンごとに、次のリソースを作成します。

    • そのディレクトリー内のファイルを明示的に含む kustomization.yaml ファイル
    • source-crs ディレクトリーには、ztp-site-generate コンテナーからの参照 CR 設定ファイルが含まれます。

      ユーザー提供の CR を使用する場合は、CR 用に別のディレクトリーを作成する必要があります。

  3. /siteconfig ディレクトリーに、使用可能にする OpenShift Container Platform バージョンごとにサブディレクトリーを作成します。バージョンごとに、コンテナーからコピーされる参照 CR 用のディレクトリーを少なくとも 1 つ作成します。ディレクトリーの名前や参照ディレクトリーの数に制限はありません。カスタムマニフェストを使用する場合は、個別のディレクトリーを作成する必要があります。

    次の例では、OpenShift Container Platform のさまざまなバージョンのユーザー提供のマニフェストと CR を使用した構造を説明します。

    ├── acmpolicygenerator
    │   ├── kustomization.yaml 1
    │   ├── version_4.13 2
    │   │   ├── common-ranGen.yaml
    │   │   ├── group-du-sno-ranGen.yaml
    │   │   ├── group-du-sno-validator-ranGen.yaml
    │   │   ├── helix56-v413.yaml
    │   │   ├── kustomization.yaml 3
    │   │   ├── ns.yaml
    │   │   └── source-crs/ 4
    │   │      └── reference-crs/ 5
    │   │      └── custom-crs/ 6
    │   └── version_4.14 7
    │       ├── common-ranGen.yaml
    │       ├── group-du-sno-ranGen.yaml
    │       ├── group-du-sno-validator-ranGen.yaml
    │       ├── helix56-v414.yaml
    │       ├── kustomization.yaml 8
    │       ├── ns.yaml
    │       └── source-crs/ 9
    │         └── reference-crs/ 10
    │         └── custom-crs/ 11
    └── siteconfig
        ├── kustomization.yaml
        ├── version_4.13
        │   ├── helix56-v413.yaml
        │   ├── kustomization.yaml
        │   ├── extra-manifest/ 12
        │   └── custom-manifest/ 13
        └── version_4.14
            ├── helix57-v414.yaml
            ├── kustomization.yaml
            ├── extra-manifest/ 14
            └── custom-manifest/ 15
    1
    最上位の kustomization YAML ファイルを作成します。
    2 7
    カスタム /acmpolicygenerator ディレクトリー内にバージョン固有のディレクトリーを作成します。
    3 8
    バージョンごとに kustomization.yaml ファイルを作成します。
    4 9
    ztp-site-generate コンテナーからの参照 CR を含めるために、バージョンごとに source-crs ディレクトリーを作成します。
    5 10
    ZTP コンテナーから展開されるポリシー CR の reference-crs ディレクトリーを作成します。
    6 11
    オプション: ユーザー提供の CR 用に custom-crs ディレクトリーを作成します。
    12 14
    カスタム /siteconfig ディレクトリー内にディレクトリーを作成し、ztp-site-generate コンテナーからの追加のマニフェストを含めます。
    13 15
    ユーザーによって提供されるマニフェストを保持するフォルダーを作成します。
    注記

    前の例では、カスタム /siteconfig ディレクトリー内の各バージョンサブディレクトリーにはさらに 2 つのサブディレクトリーが含まれており、1 つはコンテナーからコピーされた参照マニフェストを含み、もう 1 つは提供するカスタムマニフェスト用です。これらのディレクトリーに割り当てられた名前は一例です。ユーザー提供の CR を使用する場合は、SiteConfig CR の extraManifests.searchPaths の下にリストされている最後のディレクトリーが、ユーザー提供の CR を含むディレクトリーである必要があります。

  4. SiteConfig CR を編集して、作成したディレクトリーの検索パスを含めます。extraManifests.searchPaths の下にリストされる最初のディレクトリーは、参照マニフェストを含むディレクトリーである必要があります。ディレクトリーがリストされている順序を考慮してください。ディレクトリーに同じ名前のファイルが含まれている場合は、最後のディレクトリーにあるファイルが優先されます。

    SiteConfig CR の例

    extraManifests:
        searchPaths:
        - extra-manifest/ 1
        - custom-manifest/ 2

    1
    参照マニフェストを含むディレクトリーは、extraManifests.searchPaths の下に最初にリストされる必要があります。
    2
    ユーザー提供の CR を使用している場合は、SiteConfig CR の extraManifests.searchPaths の下にリストされている最後のディレクトリーが、ユーザー提供の CR を含むディレクトリーである必要があります。
  5. トップレベルの kustomization.yaml ファイルを編集して、アクティブな OpenShift Container Platform バージョンを制御します。以下は、最上位レベルの kustomization.yaml ファイルの例です。

    resources:
    - version_4.13 1
    #- version_4.14 2
    1
    バージョン 4.13 をアクティブ化します。
    2
    コメントを使用してバージョンを非アクティブ化します。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.