単一ノードへのインストール


OpenShift Container Platform 4.12

シングルノードへの OpenShift Container Platform のインストール

Red Hat OpenShift Documentation Team

概要

このドキュメントでは、OpenShift Container Platform をシングルノードにインストールする方法を説明します。

第1章 単一ノードへのインストールの準備

1.1. 前提条件

1.2. 単一ノードでの OpenShift について

標準のインストール方法で単一ノードクラスターを作成できます。単一ノード上の OpenShift Container Platform は、特別な Ignition 設定 ISO の作成を必要とする特殊なインストールです。プライマリーユースケースは、断続的な接続、ポータブルクラウド、および 5G ラジオアクセスネットワーク (RAN) などのエッジコンピューティングのワークロード向けです。単一ノードでのインストールに関する主なトレードオフは、高可用性がないことです。

重要

単一ノードの OpenShift での OpenShiftSDN の使用はサポートされていません。OVN-Kubernetes は、単一ノードの OpenShift デプロイメントのデフォルトのネットワークプラグインです。

1.3. 単一ノードに OpenShift をインストールするための要件

OpenShift Container Platform を単一ノードにインストールすると、高可用性および大規模なクラスターの一部の要件が軽減されます。ただし、以下の要件を満たす必要があります。

  • 管理ホスト: ISO を準備して USB ブートドライブを作成し、インストールを監視するためのコンピューターが必要です。
  • サポートされているプラットフォーム: 単一ノードへの OpenShift Container Platform のインストールは、ベアメタルおよび 認定されたサードパーティーのハイパーバイザー でサポートされています。いずれの場合も、install-config.yaml 設定ファイルで platform.none: {} パラメーターを指定する必要があります。
  • 実稼働環境グレードサーバー: OpenShift Container Platform を単一ノードにインストールし、OpenShift Container Platform サービスと実稼働のワークロードを実行するのに十分なリソースを持つサーバーが必要です。

    Expand
    表1.1 最小リソース要件
    Profileコンピュートメモリーストレージ

    最低限

    仮想 CPU 8 個

    16 GB のメモリー

    120 GB

    注記

    通常、1 つの仮想 CPU は 1 つの物理コアに相当します。ただし、同時マルチスレッディング (SMT) またはハイパースレッディングを有効にすると、各 CPU スレッドは仮想 CPU としてカウントされます。

    インストールプロセス中に Operator を追加すると、最小リソース要件が増加する可能性があります。

    仮想メディアを使用して起動する場合は、サーバーには Baseboard Management Controller (BMC) が必要です。

  • ネットワーク: サーバーは、ルーティング可能なネットワークに接続されていない場合は、インターネットまたはローカルレジストリーにアクセスできるようにする必要があります。サーバーには、Kubernetes API、Ingress ルート、およびクラスターノードドメイン名の DHCP 予約または静的 IP アドレスが必要です。DNS が、以下の完全修飾ドメイン名 (FQDN) のそれぞれに IP アドレスを解決できるように設定する必要があります。

    Expand
    表1.2 必要な DNS レコード
    使用法FQDN説明

    Kubernetes API

    api.<cluster_name>.<base_domain>

    DNS A/AAAA または CNAME レコードを追加します。このレコードは、クラスター外のクライアントで解決できる必要があります。

    内部 API

    api-int.<cluster_name>.<base_domain>

    ISO を手動で作成する場合は、DNS A/AAAA または CNAME レコードを追加します。このレコードは、クラスター内のノードにより解決可能である必要があります。

    Ingress ルート

    *.apps.<cluster_name>.<base_domain>

    ノードをターゲットにするワイルドカード DNS A/AAAA または CNAME レコードを追加します。このレコードは、クラスター外のクライアントで解決できる必要があります。

    永続的な IP アドレスがない場合、apiserveretcd の間の通信で失敗する可能性があります。

第2章 単一ノードでの OpenShift のインストール

Web ベースの Assisted Installer または coreos-installer ツールを使用して検出 ISO イメージを生成することで、シングルノードの OpenShift をインストールできます。この検出 ISO イメージにより、Red Hat Enterprise Linux CoreOS (RHCOS) のシステム設定がターゲットのインストールディスクに書き込まれます。そのため、ニーズに合わせてシングルクラスターノードを実行できます。

テスト、トラブルシューティング、トレーニング、または小規模プロジェクトために、リソースが少ない環境や隔離環境でクラスターを実行する場合は、シングルノード OpenShift の使用を検討してください。

2.1. Assisted Installer を使用した単一ノード OpenShift のインストール

OpenShift Container Platform を単一ノードにインストールするには、Web ベースのアシステッドインストーラーウィザードのガイドに従い、インストールを管理します。

2.1.1. アシステッドインストーラーを使用したディスカバリー ISO の生成

OpenShift Container Platform を単一ノードにインストールするには、Assisted Installer が生成できる検出 ISO が必要です。

手順

  1. 管理ホストでブラウザーを開き、Red Hat OpenShift Cluster Manager に移動します。
  2. Create New Cluster をクリックして新規クラスターを作成します。
  3. Cluster name フィールドにクラスターの名前を入力します。
  4. Base domain フィールドにベースドメインを入力します。以下に例を示します。

    example.com
    Copy to Clipboard Toggle word wrap

    すべての DNS レコードはこのベースドメインのサブドメインである必要があり、クラスター名が含まれる必要があります。以下に例を示します。

    <cluster_name>.example.com
    Copy to Clipboard Toggle word wrap
    注記

    クラスターのインストール後にベースドメインまたはクラスター名を変更することはできません。

  5. Install single node OpenShift (SNO) を選択し、ウィザードの残りの手順を完了します。検出 ISO をダウンロードします。
  6. Assisted Installer ウィザードの残りの手順を完了します。

    重要

    仮想メディアを使用してインストールする場合は、検出 ISO の URL を必ずメモしておいてください。

    このプロセス中に OpenShift Virtualization を有効にする場合は、仮想マシン用に 50 GiB 以上の 2 つ目のローカルストレージデバイスが必要です。

2.1.2. Assisted Installer を使用した単一ノード OpenShift のインストール

Assisted Installer を使用して、単一ノードクラスターをインストールします。

前提条件

  • サーバーの BIOS 設定のブートドライブの順序が、デフォルトでターゲットインストールディスクからサーバーを起動するように設定されていることを確認する。

手順

  1. 検出 ISO イメージをターゲットホストに接続します。
  2. 検出 ISO イメージからサーバーを起動します。検出 ISO イメージは、システム設定をターゲットのインストールディスクに書き込み、サーバーの再起動を自動的にトリガーします。
  3. 管理ホストで、ブラウザーに戻ります。ホストが、検出されたホストのリストに表示されるまで待ちます。必要に応じて、Assisted Clusters ページを再読み込みし、クラスター名を選択します。
  4. インストールウィザードの手順を完了します。使用可能なサブネットからのサブネットを含む、ネットワークの詳細を追加します。必要に応じて SSH 公開鍵を追加します。
  5. インストールの進捗を監視します。クラスターイベントを確認します。インストールプロセスがサーバーのハードディスクへのオペレーティングシステムイメージの書き込みを完了すると、サーバーが再起動します。
  6. オプション: 検出 ISO イメージを削除します。

    サーバーが自動的に数回再起動し、コントロールプレーンがデプロイされます。

2.2. 単一ノードの OpenShift を手動でインストール

OpenShift Container Platform を単一ノードにインストールするには、最初にインストール ISO を生成してから、ISO からサーバーを起動します。openshift-install インストールプログラムを使用して、インストールを監視できます。

2.2.1. coreos-installer によるインストール ISO の生成

OpenShift Container Platform を単一ノードにインストールするには、インストール ISO が必要です。これは、以下の手順で生成できます。

前提条件

  • podman をインストールします。

手順

  1. OpenShift Container Platform バージョンを設定します。

    $ export OCP_VERSION=<ocp_version> 
    1
    Copy to Clipboard Toggle word wrap
    1
    <ocp_version> を現在のバージョン (latest-4.12 など) に置き換えます。
  2. ホストアーキテクチャーを設定します。

    $ export ARCH=<architecture> 
    1
    Copy to Clipboard Toggle word wrap
    1
    <architecture> をターゲットホストアーキテクチャー (aarch64x86_64 など) に置き換えます。
  3. OpenShift Container Platform クライアント (oc) をダウンロードし、次のコマンドを入力して使用できるようにします。

    $ curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/$OCP_VERSION/openshift-client-linux.tar.gz -o oc.tar.gz
    Copy to Clipboard Toggle word wrap
    $ tar zxf oc.tar.gz
    Copy to Clipboard Toggle word wrap
    $ chmod +x oc
    Copy to Clipboard Toggle word wrap
  4. OpenShift Container Platform インストーラーをダウンロードし、以下のコマンドを入力して使用できるようにします。

    $ curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/$OCP_VERSION/openshift-install-linux.tar.gz -o openshift-install-linux.tar.gz
    Copy to Clipboard Toggle word wrap
    $ tar zxvf openshift-install-linux.tar.gz
    Copy to Clipboard Toggle word wrap
    $ chmod +x openshift-install
    Copy to Clipboard Toggle word wrap
  5. 次のコマンドを実行して、RHCOS ISO URL を取得します。

    $ export ISO_URL=$(./openshift-install coreos print-stream-json | grep location | grep $ARCH | grep iso | cut -d\" -f4)
    Copy to Clipboard Toggle word wrap
  6. RHCOS ISO をダウンロードします。

    $ curl -L $ISO_URL -o rhcos-live.iso
    Copy to Clipboard Toggle word wrap
  7. install-config.yaml ファイルを作成します。

    apiVersion: v1
    baseDomain: <domain> 
    1
    
    compute:
    - architecture: amd64 
    2
    
      name: worker
      replicas: 0 
    3
    
    controlPlane:
      architecture: amd64
      name: master
      replicas: 1 
    4
    
    metadata:
      name: <name> 
    5
    
    networking: 
    6
    
      clusterNetwork:
      - cidr: 10.128.0.0/14
        hostPrefix: 23
      machineNetwork:
      - cidr: 10.0.0.0/16 
    7
    
      networkType: OVNKubernetes
      serviceNetwork:
      - 172.30.0.0/16
    platform:
      none: {}
    bootstrapInPlace:
      installationDisk: /dev/disk/by-id/<disk_id> 
    8
    
    pullSecret: '<pull_secret>' 
    9
    
    sshKey: |
      <ssh_key> 
    10
    Copy to Clipboard Toggle word wrap
    1
    クラスタードメイン名を追加します。
    2
    64 ビット ARM アーキテクチャーの場合はアーキテクチャーを arm64 に、64 ビット x86 アーキテクチャーの場合は amd64 に設定します。これは、ターゲットホストアーキテクチャーに明示的に設定する必要があります。
    3
    compute レプリカを 0 に設定します。これにより、コントロールプレーンノードがスケジュール可能になります。
    4
    controlPlane レプリカを 1 に設定します。この設定は、以前の compute 設定と組み合わせて、クラスターが単一ノードで実行されるようにします。
    5
    メタデータ 名をクラスター名に設定します。
    6
    networking の詳細を設定します。OVN-Kubernetes は、単一ノードクラスターで許可されている唯一のネットワークプラグインタイプです。
    7
    単一ノードの OpenShift クラスターのサブネットと一致するように cidr 値を設定します。
    8
    インストールディスクドライブへのパスを設定します (例: /dev/disk/by-id/wwn-0x64cd98f04fde100024684cf3034da5c2)
    9
    Red Hat OpenShift Cluster Manager からプルシークレット をコピーし、その内容をこの設定に追加します。
    10
    インストール後にクラスターにログインできるように、管理ホストから公開 SSH 鍵を追加します。
  8. 以下のコマンドを実行して、OpenShift Container Platform アセットを生成します。

    $ mkdir ocp
    Copy to Clipboard Toggle word wrap
    $ cp install-config.yaml ocp
    Copy to Clipboard Toggle word wrap
    $ ./openshift-install --dir=ocp create single-node-ignition-config
    Copy to Clipboard Toggle word wrap
  9. 以下のコマンドを実行して、Ignition データを RHCOS ISO に埋め込みます。

    $ alias coreos-installer='podman run --privileged --pull always --rm \
            -v /dev:/dev -v /run/udev:/run/udev -v $PWD:/data \
            -w /data quay.io/coreos/coreos-installer:release'
    Copy to Clipboard Toggle word wrap
    $ coreos-installer iso ignition embed -fi ocp/bootstrap-in-place-for-live-iso.ign rhcos-live.iso
    Copy to Clipboard Toggle word wrap

2.2.2. openshift-install を使用したクラスターのインストールの監視

openshift-install を使用して、単一ノードクラスターのインストールの進行状況を監視します。

前提条件

  • サーバーの BIOS 設定のブートドライブの順序が、デフォルトでターゲットインストールディスクからサーバーを起動するように設定されていることを確認する。

手順

  1. 検出 ISO イメージをターゲットホストに接続します。
  2. 検出 ISO イメージからサーバーを起動します。検出 ISO イメージは、システム設定をターゲットのインストールディスクに書き込み、サーバーの再起動を自動的にトリガーします。
  3. 管理ホストで、次のコマンドを実行してインストールを監視します。

    $ ./openshift-install --dir=ocp wait-for install-complete
    Copy to Clipboard Toggle word wrap

    コントロールプレーンのデプロイ中にサーバーが数回再起動します。

検証

  • インストールが完了したら、次のコマンドを実行して環境を確認します。

    $ export KUBECONFIG=ocp/auth/kubeconfig
    Copy to Clipboard Toggle word wrap
    $ oc get nodes
    Copy to Clipboard Toggle word wrap

    出力例

    NAME                         STATUS   ROLES           AGE     VERSION
    control-plane.example.com    Ready    master,worker   10m     v1.25.0
    Copy to Clipboard Toggle word wrap

2.3. USB ドライブに起動可能な ISO イメージを作成する

ISO イメージを含む起動可能な USB ドライブを使用して、ソフトウェアをインストールできます。USB ドライブを使用してサーバーを起動すると、ソフトウェアをインストールするサーバーの準備が整います。

手順

  1. 管理ホストで、USB ドライブを USB ポートに挿入します。
  2. 起動可能な USB ドライブを作成します。以下に例を示します。

    # dd if=<path_to_iso> of=<path_to_usb> status=progress
    Copy to Clipboard Toggle word wrap

    ここでは、以下のようになります。

    <path_to_iso>
    rhcos-live.iso など、ダウンロードした ISO ファイルへの相対パスです。
    <path_to_usb>
    /dev/sdb など、接続された USB ドライブの場所です。

    ISO が USB ドライブにコピーされたら、USB ドライブを使用してサーバーにソフトウェアをインストールできます。

2.4. Redfish API を使用した HTTP ホスト ISO イメージからの起動

Redfish Baseboard Management Controller (BMC) API を使用してインストールした ISO を使用して、ネットワーク内のホストをプロビジョニングできます。

前提条件

  1. インストール Red Hat Enterprise Linux CoreOS (RHCOS) ISO をダウンロードしている。

手順

  1. ネットワークでアクセス可能な HTTP サーバーに ISO ファイルをコピーします。
  2. ホストされている ISO ファイルからホストを起動します。以下に例を示します。

    1. 次のコマンドを実行して、redfish API を呼び出し、ホストされている ISO を VirtualMedia ブートメディアとして設定します。

      $ curl -k -u <bmc_username>:<bmc_password> -d '{"Image":"<hosted_iso_file>", "Inserted": true}' -H "Content-Type: application/json" -X POST <host_bmc_address>/redfish/v1/Managers/iDRAC.Embedded.1/VirtualMedia/CD/Actions/VirtualMedia.InsertMedia
      Copy to Clipboard Toggle word wrap

      詳細は以下のようになります。

      <bmc_username>:<bmc_password>
      ターゲットホスト BMC のユーザー名とパスワードです。
      <hosted_iso_file>
      ホストされたインストール ISO の URL です (例: http://webserver.example.com/rhcos-live-minimal.iso)。ISO は、ターゲットホストマシンからアクセスできる必要があります。
      <host_bmc_address>
      ターゲットホストマシンの BMC IP アドレスです。
    2. 次のコマンドを実行して、VirtualMedia デバイスから起動するようにホストを設定します。

      $ curl -k -u <bmc_username>:<bmc_password> -X PATCH -H 'Content-Type: application/json' -d '{"Boot": {"BootSourceOverrideTarget": "Cd", "BootSourceOverrideMode": "UEFI", "BootSourceOverrideEnabled": "Once"}}' <host_bmc_address>/redfish/v1/Systems/System.Embedded.1
      Copy to Clipboard Toggle word wrap
    3. ホストを再起動します。

      $ curl -k -u <bmc_username>:<bmc_password> -d '{"ResetType": "ForceRestart"}' -H 'Content-type: application/json' -X POST <host_bmc_address>/redfish/v1/Systems/System.Embedded.1/Actions/ComputerSystem.Reset
      Copy to Clipboard Toggle word wrap
    4. オプション: ホストの電源がオフになっている場合は、{"ResetType": "On"} スイッチを使用して起動できます。以下のコマンドを実行します。

      $ curl -k -u <bmc_username>:<bmc_password> -d '{"ResetType": "On"}' -H 'Content-type: application/json' -X POST <host_bmc_address>/redfish/v1/Systems/System.Embedded.1/Actions/ComputerSystem.Reset
      Copy to Clipboard Toggle word wrap

2.5. リモートサーバーアクセス用のカスタムライブ RHCOS ISO の作成

場合によっては、外部ディスクドライブをサーバーに接続できませんが、サーバーにリモートアクセスしてノードをプロビジョニングする必要があります。サーバーへの SSH アクセスを有効にすることが推奨されます。起動後にサーバーにアクセスできるように、SSHd を有効にし、事前定義された認証情報を使用してライブ RHCOS ISO を作成できます。

前提条件

  • butane ユーティリティーをインストールした。

手順

  1. coreos-installer イメージの mirror ページから coreos-installer バイナリーをダウンロードします。
  2. mirror.openshift.com から最新のライブ RHCOS ISO をダウンロードします。
  3. butane ユーティリティーが Ignition ファイルの作成に使用する embedded.yaml ファイルを作成します。

    variant: openshift
    version: 4.12.0
    metadata:
      name: sshd
      labels:
        machineconfiguration.openshift.io/role: worker
    passwd:
      users:
        - name: core 
    1
    
          ssh_authorized_keys:
            - '<ssh_key>'
    Copy to Clipboard Toggle word wrap
    1
    core ユーザーには sudo 権限があります。
  4. butane ユーティリティーを実行し、以下のコマンドを使用して Ignition ファイルを作成します。

    $ butane -pr embedded.yaml -o embedded.ign
    Copy to Clipboard Toggle word wrap
  5. Ignition ファイルが作成されたら、coreos-installer ユーティリティーを使用して、rhcos-sshd-4.12.0-x86_64-live.x86_64.iso という名前の新しいライブ RHCOS ISO に設定を含めることができます。

    $ coreos-installer iso ignition embed -i embedded.ign rhcos-4.12.0-x86_64-live.x86_64.iso -o rhcos-sshd-4.12.0-x86_64-live.x86_64.iso
    Copy to Clipboard Toggle word wrap

検証

  • 次のコマンドを実行して、カスタムライブ ISO を使用してサーバーを起動できることを確認します。

    # coreos-installer iso ignition show rhcos-sshd-4.12.0-x86_64-live.x86_64.iso
    Copy to Clipboard Toggle word wrap

    出力例

    {
      "ignition": {
        "version": "3.2.0"
      },
      "passwd": {
        "users": [
          {
            "name": "core",
            "sshAuthorizedKeys": [
              "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCZnG8AIzlDAhpyENpK2qKiTT8EbRWOrz7NXjRzopbPu215mocaJgjjwJjh1cYhgPhpAp6M/ttTk7I4OI7g4588Apx4bwJep6oWTU35LkY8ZxkGVPAJL8kVlTdKQviDv3XX12l4QfnDom4tm4gVbRH0gNT1wzhnLP+LKYm2Ohr9D7p9NBnAdro6k++XWgkDeijLRUTwdEyWunIdW1f8G0Mg8Y1Xzr13BUo3+8aey7HLKJMDtobkz/C8ESYA/f7HJc5FxF0XbapWWovSSDJrr9OmlL9f4TfE+cQk3s+eoKiz2bgNPRgEEwihVbGsCN4grA+RzLCAOpec+2dTJrQvFqsD alosadag@sonnelicht.local"
            ]
          }
        ]
      }
    }
    Copy to Clipboard Toggle word wrap

Legal Notice

Copyright © 2025 Red Hat

OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).

Modified versions must remove all Red Hat trademarks.

Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.

Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.

Linux® is the registered trademark of Linus Torvalds in the United States and other countries.

Java® is a registered trademark of Oracle and/or its affiliates.

XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.

MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.

Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.

The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.

All other trademarks are the property of their respective owners.

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat