検索

14.6. installer-provisioned のインストール後の設定

download PDF

installer-provisioned クラスターを正常にデプロイしたら、以下のインストール後の手順を考慮してください。

14.6.1. オプション: 非接続クラスターの NTP 設定

OpenShift Container Platform は、クラスターノードに chrony Network Time Protocol (NTP) サービスをインストールします。次の手順を使用して、コントロールプレーンノードに NTP サーバーを設定し、デプロイが成功した後にコンピュートノードをコントロールプレーンノードの NTP クライアントとして設定します。

非接続クラスター向けの NTP 設定

OpenShift Container Platform のノードは、適切に実行するために日付と時刻が一致している必要があります。コンピュートノードがコントロールプレーンノード上の NTP サーバーから日付と時刻を取得すると、ルーティング可能なネットワークに接続していないために上位層の NTP サーバーにアクセスできないクラスターのインストールと操作が可能になります。

手順

  1. 次のコマンドを使用して、インストールホストに Butane をインストールします。

    $ sudo dnf -y install butane
  2. コントロールプレーンノードの chrony.conf ファイルのコンテンツを含む Butane 設定 (99-master-chrony-conf-override.bu) を作成します。

    注記

    Butane の詳細は、「Butane を使用したマシン設定の作成」を参照してください。

    Butane 設定例

    variant: openshift
    version: 4.16.0
    metadata:
      name: 99-master-chrony-conf-override
      labels:
        machineconfiguration.openshift.io/role: master
    storage:
      files:
        - path: /etc/chrony.conf
          mode: 0644
          overwrite: true
          contents:
            inline: |
              # Use public servers from the pool.ntp.org project.
              # Please consider joining the pool (https://www.pool.ntp.org/join.html).
    
              # The Machine Config Operator manages this file
              server openshift-master-0.<cluster-name>.<domain> iburst 1
              server openshift-master-1.<cluster-name>.<domain> iburst
              server openshift-master-2.<cluster-name>.<domain> iburst
    
              stratumweight 0
              driftfile /var/lib/chrony/drift
              rtcsync
              makestep 10 3
              bindcmdaddress 127.0.0.1
              bindcmdaddress ::1
              keyfile /etc/chrony.keys
              commandkey 1
              generatecommandkey
              noclientlog
              logchange 0.5
              logdir /var/log/chrony
    
              # Configure the control plane nodes to serve as local NTP servers
              # for all compute nodes, even if they are not in sync with an
              # upstream NTP server.
    
              # Allow NTP client access from the local network.
              allow all
              # Serve time even if not synchronized to a time source.
              local stratum 3 orphan

    1
    <cluster-name> はクラスターの名前に置き換え、<domain> は完全修飾ドメイン名に置き換える必要があります。
  3. Butane を使用して、コントロールプレーンノードに配信される設定が含まれる MachineConfig オブジェクトファイル (99-master-chrony-conf-override.yaml) を生成します。

    $ butane 99-master-chrony-conf-override.bu -o 99-master-chrony-conf-override.yaml
  4. コントロールプレーンノード上の NTP サーバーを参照するコンピュートノードの chrony.conf ファイルの内容を含む Butane 設定 99-worker-chrony-conf-override.bu を作成します。

    Butane 設定例

    variant: openshift
    version: 4.16.0
    metadata:
      name: 99-worker-chrony-conf-override
      labels:
        machineconfiguration.openshift.io/role: worker
    storage:
      files:
        - path: /etc/chrony.conf
          mode: 0644
          overwrite: true
          contents:
            inline: |
              # The Machine Config Operator manages this file.
              server openshift-master-0.<cluster-name>.<domain> iburst 1
              server openshift-master-1.<cluster-name>.<domain> iburst
              server openshift-master-2.<cluster-name>.<domain> iburst
    
              stratumweight 0
              driftfile /var/lib/chrony/drift
              rtcsync
              makestep 10 3
              bindcmdaddress 127.0.0.1
              bindcmdaddress ::1
              keyfile /etc/chrony.keys
              commandkey 1
              generatecommandkey
              noclientlog
              logchange 0.5
              logdir /var/log/chrony

    1
    <cluster-name> はクラスターの名前に置き換え、<domain> は完全修飾ドメイン名に置き換える必要があります。
  5. Butane を使用して、ワーカーノードに配信される設定が含まれる MachineConfig オブジェクトファイル (99-worker-chrony-conf-override.yaml) を生成します。

    $ butane 99-worker-chrony-conf-override.bu -o 99-worker-chrony-conf-override.yaml
  6. 99-master-chrony-conf-override.yaml ポリシーをコントロールプレーンノードに適用します。

    $ oc apply -f 99-master-chrony-conf-override.yaml

    出力例

    machineconfig.machineconfiguration.openshift.io/99-master-chrony-conf-override created

  7. 99-worker-chrony-conf-override.yaml ポリシーをコンピュートノードに適用します。

    $ oc apply -f 99-worker-chrony-conf-override.yaml

    出力例

    machineconfig.machineconfiguration.openshift.io/99-worker-chrony-conf-override created

  8. 適用された NTP 設定のステータスを確認します。

    $ oc describe machineconfigpool

14.6.2. インストール後のプロビジョニングネットワークの有効化

ベアメタルクラスター用の Assisted Installer および installer-provisioned installation は、provisioning ネットワークなしでクラスターをデプロイする機能を提供します。この機能は、概念実証クラスターや、各ノードのベースボード管理コントローラーが baremetal ネットワークを介してルーティング可能な場合に Redfish 仮想メディアのみを使用してデプロイするなどのシナリオ向けです。

Cluster Baremetal Operator (CBO) を使用してインストール後に provisioning ネットワークを有効にすることができます。

前提条件

  • すべてのワーカーノードおよびコントロールプレーンノードに接続されている専用の物理ネットワークが存在する必要があります。
  • ネイティブのタグなしの物理ネットワークを分離する必要があります。
  • provisioningNetwork 設定が Managed に設定されている場合、ネットワークには DHCP サーバーを含めることはできません。
  • OpenShift Container Platform 4.10 の provisioningInterface 設定を省略して、bootMACAddress 設定を使用できます。

手順

  1. provisioningInterface 設定を設定する場合、まずクラスターノードのプロビジョニングインターフェイス名を特定します。たとえば、eth0 または eno1 などです。
  2. クラスターノードの provisioning ネットワークインターフェイスで Preboot eXecution Environment (PXE) を有効にします。
  3. provisioning ネットワークの現在の状態を取得して、これをプロビジョニングカスタムリソース (CR) ファイルに保存します。

    $ oc get provisioning -o yaml > enable-provisioning-nw.yaml
  4. プロビジョニング CR ファイルを変更します。

    $ vim ~/enable-provisioning-nw.yaml

    provisioningNetwork 設定までスクロールダウンして、これを Disabled から Managed に変更します。次に、provisioningNetwork 設定の後に、provisioningIPprovisioningNetworkCIDRprovisioningDHCPRangeprovisioningInterface、および watchAllNameSpaces 設定を追加します。各設定に適切な値を指定します。

    apiVersion: v1
    items:
    - apiVersion: metal3.io/v1alpha1
      kind: Provisioning
      metadata:
        name: provisioning-configuration
      spec:
        provisioningNetwork: 1
        provisioningIP: 2
        provisioningNetworkCIDR: 3
        provisioningDHCPRange: 4
        provisioningInterface: 5
        watchAllNameSpaces: 6
    1
    provisioningNetwork は、ManagedUnmanaged、または Disabled のいずれかになります。Managed に設定すると、Metal3 はプロビジョニングネットワークを管理し、CBO は設定済みの DHCP サーバーで Metal3 Pod をデプロイします。Unmanaged に設定すると、システム管理者は DHCP サーバーを手動で設定します。
    2
    provisioningIP は、DHCP サーバーおよび ironic がネットワークのプロビジョニングために使用する静的 IP アドレスです。この静的 IP アドレスは、DHCP 範囲外の provisioning 内でなければなりません。この設定を設定する場合は、provisioning ネットワークが Disabled の場合でも、有効な IP アドレスが必要です。静的 IP アドレスは metal3 Pod にバインドされます。metal3 Pod が失敗し、別のサーバーに移動する場合、静的 IP アドレスも新しいサーバーに移動します。
    3
    Classless Inter-Domain Routing (CIDR) アドレス。この設定を設定する場合は、provisioning ネットワークが Disabled の場合でも、有効な CIDR アドレスが必要です。例: 192.168.0.1/24
    4
    DHCP の範囲。この設定は、Managed プロビジョニングネットワークにのみ適用されます。provisioning ネットワークが Disabled の場合は、この設定を省略します。例: 192.168.0.64, 192.168.0.253
    5
    クラスターノードの provisioning インターフェイス用の NIC 名。provisioningInterface 設定は、Managed および Unmanaged プロビジョニングネットワークにのみ適用されます。provisioning ネットワークが Disabled の場合に、provisioningInterface 設定が省略されます。代わりに bootMACAddress 設定を使用するように provisioningInterface 設定を省略します。
    6
    metal3 がデフォルトの openshift-machine-api namespace 以外の namespace を監視するようにするには、この設定を true に設定します。デフォルト値は false です。
  5. 変更をプロビジョニング CR ファイルに保存します。
  6. プロビジョニング CR ファイルをクラスターに適用します。

    $ oc apply -f enable-provisioning-nw.yaml

14.6.2.1. オプション: カスタマイズされた br-ex ブリッジを含むマニフェストオブジェクトの作成

configure-ovs.sh シェルスクリプトを使用してベアメタルプラットフォーム上にカスタマイズされた br-ex ブリッジを設定する代わりに、カスタマイズされた br-ex ブリッジネットワーク設定を含む NodeNetworkConfigurationPolicy カスタムリソース (CR) を作成できます。

重要

カスタマイズされた br-ex ブリッジを含む NodeNetworkConfigurationPolicy CR の作成は、テクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

この機能は、次のタスクをサポートします。

  • クラスターの最大転送単位 (MTU) を変更します。
  • MIImon (Media Independent Interface Monitor)、ボンディングモード、Quality of Service (QoS) などのさまざまなボンディングインターフェイスの属性を変更します。
  • DNS 値を更新しています。

カスタマイズされた br-ex ブリッジを含むマニフェストオブジェクトを作成する場合は、次のユースケースを検討してください。

  • Open vSwitch (OVS) または OVN-Kubernetes br-ex ブリッジネットワークの変更など、ブリッジにインストール後の変更を加えたい場合。configure-ovs.sh シェルスクリプトは、ブリッジへのインストール後の変更をサポートしていません。
  • ホストまたはサーバーの IP アドレスで使用可能なインターフェイスとは異なるインターフェイスにブリッジをデプロイします。
  • configure-ovs.sh シェルスクリプトでは不可能な、ブリッジの高度な設定を実行したいと考えています。これらの設定にスクリプトを使用すると、ブリッジが複数のネットワークインターフェイスに接続できず、インターフェイス間のデータ転送が促進されない可能性があります。

前提条件

  • configure-ovs の代替方法を使用して、カスタマイズされた br-ex を設定している。
  • Kubernetes NMState Operator がインストールされている。

手順

  1. NodeNetworkConfigurationPolicy (NNCP) CR を作成し、カスタマイズされた br-ex ブリッジネットワーク設定を定義します。必要に応じて、ipv4.address.ipipv6.address.ip、またはその両方のパラメーターにマスカレード IP を設定するようにしてください。マスカレード IP アドレスは、使用中の IP アドレスブロックと一致する必要があります。

    IPv6 および IPv4 マスカレード IP アドレスを設定する NNCP CR の例

    apiVersion: nmstate.io/v1
    kind: NodeNetworkConfigurationPolicy
    metadata:
      name: worker-0-br-ex 1
    spec:
      nodeSelector:
        kubernetes.io/hostname: worker-0
        desiredState:
        interfaces:
        - name: enp2s0 2
          type: ethernet 3
          state: up 4
          ipv4:
            enabled: false 5
          ipv6:
            enabled: false
        - name: br-ex
          type: ovs-bridge
          state: up
          ipv4:
            enabled: false
            dhcp: false
          ipv6:
            enabled: false
            dhcp: false
          bridge:
            port:
            - name: enp2s0 6
            - name: br-ex
        - name: br-ex
          type: ovs-interface
          state: up
          copy-mac-from: enp2s0
          ipv4:
            enabled: true
            dhcp: true
            address:
            - ip: "169.254.169.2"
              prefix-length: 29
          ipv6:
            enabled: false
            dhcp: false
            address:
            - ip: "fd69::2"
            prefix-length: 125

    1
    ポリシーの名前。
    2
    インターフェイスの名前。
    3
    イーサネットのタイプ。
    4
    作成後のインターフェイスの要求された状態。
    5
    この例では、IPv4 と IPv6 を無効にします。
    6
    ブリッジが接続されているノード NIC。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.