RHV へのインストール

OpenShift Container Platform 4.5

OpenShift Container Platform RHV クラスターのインストール

概要

本書では、Red Hat Virtualization に OpenShift Container Platform クラスターをインストールし、アンインストールする方法について説明します。

第1章 RHV へのインストール

1.1. {rh-virtualization} へのクラスターのクイックインストール

警告

既知の問題により、このデフォルトのインストール手順は Red Hat Virtualization (RHV) 4.4.1 の OpenShift Container Platform バージョン 4.4 および 4.5 では機能しません。この不具合は RHV 4.4.2 で修正されました。

代わりに、カスタマイズを使用した RHV へのクラスターのインストール の手順を実行します。

警告

OpenShift Container Platform バージョン 4.6 を Red Hat Virtualization (RHV) にインストールするには、RHV バージョン 4.4 が必要です。RHV 4.3 で以前のバージョンの OpenShift Container Platform を実行している場合は、これを OpenShift Container Platform バージョン 4.6 に更新しないでください。Red Hat は、RHV バージョン 4.3 での OpenShift Container Platform バージョン 4.6 の実行をテストしていないため、この組み合わせをサポートしません。詳細は、OpenShift Container Platform 4.x Tested Integrations (x86_x64) を参照してください。

以下の図に示されるように、デフォルトの、カスタマイズされていない OpenShift Container Platform クラスターを Red Hat Virtualization (RHV) クラスターにすばやくインストールできます。

RHV クラスターの OpenShift Container Platform クラスターの図

インストールプログラムは、インストーラーでプロビジョニングされるインフラストラクチャーを使用してクラスターの作成およびデプロイを自動化します。

デフォルトのクラスターをインストールするには、環境を準備し、インストールプログラムを実行してプロンプトに応答します。次に、インストールプログラムは OpenShift Container Platform クラスターを作成します。

デフォルトクラスターの代替インストール方法については、カスタマイズによるクラスターのインストール について参照してください。

注記

このインストールプログラムは、Linux および macOS でのみ利用できます。

1.1.1. 前提条件

1.1.2. OpenShift Container Platform のインターネットアクセスおよび Telemetry アクセス

OpenShift Container Platform 4.5 では、クラスターをインストールするためにインターネットアクセスが必要になります。クラスターの健全性および正常に実行された更新についてのメトリクスを提供するためにデフォルトで実行される Telemetry サービスにもインターネットアクセスが必要です。クラスターがインターネットに接続されている場合、Telemetry は自動的に実行され、クラスターは Red Hat OpenShift Cluster Manager (OCM) に登録されます。

Red Hat OpenShift Cluster Manager インベントリーが Telemetry によって自動的に維持されるか、または OCM を手動で使用しているかのいずれによって正常であることを確認した後に、subscription watch を使用して、アカウントまたはマルチクラスターレベルで OpenShift Container Platform サブスクリプションを追跡します。

インターネットへのアクセスは以下を実行するために必要です。

  • Red Hat OpenShift Cluster Manager ページにアクセスし、インストールプログラムをダウンロードし、サブスクリプション管理を実行します。クラスターにインターネットアクセスがあり、Telemetry を無効にしない場合、そのサービスは有効なサブスクリプションでクラスターを自動的に使用します。
  • クラスターのインストールに必要なパッケージを取得するために Quay.io にアクセスします。
  • クラスターの更新を実行するために必要なパッケージを取得します。
重要

クラスターでインターネットに直接アクセスできない場合、プロビジョニングする一部のタイプのインフラストラクチャーでネットワークが制限されたインストールを実行できます。このプロセスで、必要なコンテンツをダウンロードし、これを使用してミラーレジストリーにクラスターのインストールおよびインストールプログラムの生成に必要なパッケージを設定します。インストールタイプによっては、クラスターのインストール環境でインターネットアクセスが不要となる場合があります。クラスターを更新する前に、ミラーレジストリーのコンテンツを更新します。

1.1.3. RHV 環境の要件

OpenShift Container Platform クラスターをインストールし、実行するには、RHV 環境が以下の要件を満たしている必要があります。これらの要件を満たさないと、エラーが発生する可能性があります。

CPU、メモリー、ストレージについての以下の要件は、インストールプログラムが作成する仮想マシンのデフォルト数で乗算した デフォルト 値に基づいています。

デフォルトでは、インストールプログラムは、1 つのブートストラップマシンを含む 7 つのマシンをインストールプロセスで作成します。インストールプログラムが完了すると、ブートストラップマシンが削除され、そのリソースが解放されます。カスタムインストールを実行する場合は、インストールプログラムが作成する仮想マシンの数を増やすことができます。

重要

install_config.yaml ファイルで仮想マシンまたはリソースの数を増やす場合は、これらの要件も増やす必要があります。

要件

  • RHV バージョン 4.3.10 以降。
  • RHV 環境に Up 状態のデータセンターが 1 つあること。
  • RHV データセンターに RHV クラスターが含まれていること。
  • RHV クラスターに OpenShift Container Platform クラスター専用の以下のリソースがあること。

    • 最小 28 vCPU (インストール時に作成される 7 仮想マシンのそれぞれに 4 vCPU)。
    • 以下を含む 112 GiB 以上の RAM。

      • 一時的なコントロールプレーンを提供するブートストラップマシン用に 16 GiB 以上。
      • コントロールプレーンを提供する 3 つのコントロールプレーンマシンのそれぞれに 16 GiB 以上。
      • アプリケーションワークロードを実行する 3 つのコンピュートマシンのそれぞれに 16 GiB 以上。
  • RHV ストレージドメインは、これらの etcd バックエンドのパフォーマンス要件 を満たす必要があります。
  • 実稼働環境では各仮想マシンに 120 GiB 以上を指定する必要があるため、ストレージドメインには OpenShift Container Platform クラスター用に 840 GiB 以上が必要になります。リソースに制約のある環境または非実稼働環境では、各仮想マシンに 32 GiB 以上を指定する必要があるため、ストレージドメインには OpenShift Container Platform クラスター用に 230 GiB 以上が必要になります。
  • RHV クラスターのインターネット接続へのアクセス。これは、インストールおよび更新時に Red Hat Ecosystem Catalog からイメージをダウンロードし、Telemetry サービスでサブスクリプションとエンタイトルメントのプロセスを単純化できるようにするために必要です。
  • RHV クラスターに RHV Manager の REST API にアクセスできる仮想ネットワークがあること。インストーラーが作成する仮想マシンが DHCP を使用して IP アドレスを取得するため、DHCP がこのネットワークで有効にされていることを確認します。
注記
  • すべてのホストには、それらの操作および OpenShift Container Platform 以外の操作に使用するもののほかに、必要となるメモリーおよび CPU リソースがなければなりません。
  • OpenShift Container Platform と RHV のリリースサイクルは異なり、テストされるバージョンは両方の製品のリリース日によって変わる可能性があります。
  • ブートストラップマシンは、インストールプログラムが OpenShift Container Platform クラスターを作成する間に一時的なコントロールプレーンを提供します。クラスターの作成後、インストールプログラムはブートストラップマシンを削除し、そのリソースを解放します。

1.1.4. RHV 環境の要件の確認

RHV 環境が OpenShift Container Platform クラスターをインストールし、実行するための要件を満たしていることを確認します。これらの要件を満たさないと、エラーが発生する可能性があります。

重要

これらの要件は、インストールプログラムがコントロールプレーンおよびコンピュートマシンの作成に使用するデフォルトのリソースに基づいています。これらのリソースには、vCPU、メモリー、およびストレージが含まれます。これらのリソースを変更するか、または OpenShift Container Platform マシンの数を増やす場合は、これらの要件を適宜調整します。

手順

  1. RHV のバージョンを確認します。

    1. RHV Administration Portal の右上にある ? ヘルプアイコンをクリックし、About を選択します。
    2. 開いているウィンドウで、RHV Software Version4.3.10 以上であることを確認します。
  2. データセンター、クラスター、およびストレージを検査します。

    1. RHV 管理ポータルで、ComputeData Centers をクリックします。
    2. OpenShift Container Platform をインストールする予定のデータセンターに緑色の上矢印 (Up) が表示されることを確認します。
    3. そのデータセンターの名前をクリックします。
    4. データセンターの詳細の Storage タブで、OpenShift Container Platform をインストールする予定のストレージドメインが Active であることを確認します。
    5. 後で使用できるように ドメイン名 を記録します。
    6. 空き領域 に 230 GiB 以上あることを確認します。
    7. ストレージドメインが これらの etcd バックエンドのパフォーマンス要件 を満たしていることを確認します。これは、fio パフォーマンスベンチマークツールを使用して測定 できます。
    8. データセンターの詳細で、Clusters タブをクリックします。
    9. OpenShift Container Platform をインストールする予定の RHV クラスターを見つけます。後で使用できるようにクラスター名を記録します。
  3. RHV ホストリソースを確認します。

    1. RHV 管理ポータルで、Compute > Clusters をクリックします。
    2. OpenShift Container Platform をインストールする予定のクラスターをクリックします。
    3. クラスターの詳細で、Hosts タブをクリックします。
    4. ホストを検査し、それらに OpenShift Container Platform クラスター 専用 として利用可能な 論理 CPU コア の合計が 28 つ以上であることを確認します。
    5. 後で使用できるように、利用可能な 論理 CPU コア の数を記録します。
    6. これらの CPU コアが分散され、インストール時に作成された 7 つの仮想マシンのそれぞれに 4 つのコアを持たせることができることを確認します。
    7. ホストには、以下の OpenShift Container Platform マシンのそれぞれの要件を満たすように 新規仮想マシンをスケジュールするための最大空きメモリー として 112 GiB があることを確認します。

      • ブートストラップマシンに 16 GiB が必要です。
      • 3 つのコントロールプレーンマシンのそれぞれに 16 GiB が必要です。
      • 3 つのコンピュートマシンのそれぞれに 16 GiB が必要です。
    8. 後で使用できるように 新規仮想マシンをスケジュールするための最大空きメモリー の量を記録します。
  4. OpenShift Container Platform をインストールするための仮想ネットワークが RHV Manager の REST API にアクセスできることを確認します。このネットワーク上の仮想マシンから、RHV Manager の REST API で curl コマンドを使用します。以下の形式を使用します。

    $ curl -k -u <username>@<profile>:<password> \ 1
    https://<engine-fqdn>/ovirt-engine/api 2
    1
    <username> に、RHV 管理者のユーザー名を指定します。<profile> には、ログインプロファイルを指定します。ログインプロファイルは、RHV Administration Portal ログインページに移動し、 Profile ドロップダウンリストで確認できます。<password> に、管理者パスワードを指定します。
    2
    <engine-fqdn> に、RHV 環境の完全修飾ドメイン名を指定します。

    以下に例を示します。

    $ curl -k -u rhvadmin@internal:pw123 \
    https://rhv-env.virtlab.example.com/ovirt-engine/api

1.1.5. RHV でのネットワーク環境の準備

OpenShift Container Platform クラスターの 3 つの静的 IP アドレスを設定し、これらのアドレスの 2 つを使用して DNS エントリーを作成します。

手順

  1. 静的 IP アドレスを予約します。

    1. OpenShift Container Platform をインストールするネットワークで、DHCP リースプール外にある 3 つの静的 IP アドレスを特定します。
    2. このネットワーク上のホストに接続し、それぞれの IP アドレスが使用されていないことを確認します。たとえば、Address Resolution Protocol (ARP) を使用して、IP アドレスのいずれにもエントリーがないことを確認します。

      $ arp 10.35.1.19

      出力例

      10.35.1.19 (10.35.1.19) -- no entry

    3. ネットワーク環境の標準的な方法に従って、3 つの静的 IP アドレスを予約します。
    4. 今後の参照用にこれらの IP アドレスを記録します。
  2. 以下の形式を使用して、OpenShift Container Platform REST API およびアプリケーションドメイン名の DNS エントリーを作成します。

    api.<cluster-name>.<base-domain>   <ip-address> 1
    *.apps.<cluster-name>.<base-domain>   <ip-address> 2
    1
    <cluster-name><base-domain>、および <ip-address> には、クラスター名、ベースドメイン、および OpenShift Container Platform API の静的 IP アドレスを指定します。
    2
    Ingress およびロードバランサー用に OpenShift Container Platform アプリケーションのクラスター名、ベースドメイン、および静的 IP アドレスを指定します。

    以下は例になります。

    api.my-cluster.virtlab.example.com	10.35.1.19
    *.apps.my-cluster.virtlab.example.com	10.35.1.20
    注記

    3 つ目の静的 IP アドレスには DNS エントリーは必要ありません。OpenShift Container Platform クラスターは、その内部 DNS サービスにこのアドレスを使用します。

1.1.6. RHV 用の CA 証明書の設定

Red Hat Virtualization (RHV) Manager から CA 証明書をダウンロードし、インストールマシンにこれを設定します。

RHV Manager からの Web サイトまたは curl コマンドを使用して、証明書をダウンロードできます。

その後、インストールプログラムに証明書を提供します。

手順

  1. 以下の 2 つの方法のいずれかを使用して CA 証明書をダウンロードします。

    • Manager の Web ページ (https://<engine-fqdn>/ovirt-engine/) に移動します。次に、DownloadsCA Certificate のリンクをクリックします。
    • 以下のコマンドを実行します。

      $ curl -k 'https://<engine-fqdn>/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA' -o /tmp/ca.pem  1
      1
      <engine-fqdn> には、RHV Manager の完全修飾ドメイン名 (例: rhv-env.virtlab.example.com) を指定します。
  2. ルートレスユーザーに Manager へのアクセスを付与するように CA ファイルを設定します。CA ファイルのパーミッションを 8 進数の 0644 に設定します (シンボリック値: -rw-r—​r--):

    $ sudo chmod 0644 /tmp/ca.pem
  3. Linux の場合は、サーバー証明書のディレクトリーに CA 証明書をコピーします。-p を使用してパーミッションを保存します。

    $ sudo cp -p /tmp/ca.pem /etc/pki/ca-trust/source/anchors/ca.pem
  4. オペレーティングシステム用の証明書マネージャーに証明書を追加します。

    • MacOS の場合は、証明書ファイルをダブルクリックして、Keychain Access ユーティリティーを使用してファイルを System キーチェーンに追加します。
    • Linux の場合は、CA 信頼を更新します。

      $ sudo update-ca-trust
      注記

      独自の認証局を使用する場合は、システムがこれを信頼することを確認します。

関連情報

詳細は、RHV ドキュメントの Authentication and Security を参照してください。

1.1.7. SSH プライベートキーの生成およびエージェントへの追加

クラスターでインストールのデバッグまたは障害復旧を実行する必要がある場合、ssh-agent とインストールプログラムの両方に SSH キーを指定する必要があります。このキーを使用してパブリッククラスターのブートストラップマシンにアクセスし、インストールの問題をトラブルシューティングできます。

注記

実稼働環境では、障害復旧およびデバッグが必要です。

このキーを使用して、ユーザー core としてマスターノードに対して SSH を実行できます。クラスターをデプロイする際に、キーは core ユーザーの ~/.ssh/authorized_keys 一覧に追加されます。

手順

  1. パスワードなしの認証に設定されている SSH キーがコンピューター上にない場合は、これを作成します。たとえば、Linux オペレーティングシステムを使用するコンピューターで以下のコマンドを実行します。

    $ ssh-keygen -t ed25519 -N '' \
        -f <path>/<file_name> 1
    1
    ~/.ssh/id_rsa などの、新規 SSH キーのパスおよびファイル名を指定します。既存のキーペアがある場合は、公開鍵が ~/.ssh ディレクトリーにあることを確認します。

    このコマンドを実行すると、指定した場所にパスワードを必要としない SSH キーが生成されます。

    注記

    FIPS で検証済み/進行中のモジュール (Modules in Process) 暗号ライブラリーを使用する OpenShift Container Platform クラスターを x86_64 アーキテクチャーにインストールする予定の場合は、ed25519 アルゴリズムを使用するキーは作成しないでください。代わりに、rsa アルゴリズムまたは ecdsa アルゴリズムを使用するキーを作成します。

  2. ssh-agent プロセスをバックグラウンドタスクとして開始します。

    $ eval "$(ssh-agent -s)"

    出力例

    Agent pid 31874

クラスターが FIPS モードにある場合は、FIPS 準拠のアルゴリズムのみを使用して SSH キーを生成します。鍵は RSA または ECDSA のいずれかである必要があります。

  1. SSH プライベートキーを ssh-agent に追加します。

    $ ssh-add <path>/<file_name> 1

    出力例

    Identity added: /home/<you>/<path>/<file_name> (<computer_name>)

    1
    ~/.ssh/id_rsa などの、SSH プライベートキーのパスおよびファイル名を指定します。

次のステップ

  • OpenShift Container Platform をインストールする際に、SSH パブリックキーをインストールプログラムに指定します。

1.1.8. インストールプログラムの取得

OpenShift Container Platform をインストールする前に、インストールファイルをローカルコンピューターにダウンロードします。

前提条件

  • Linux または macOS を使用するコンピューターからクラスターをインストールする必要があります。
  • インストールプログラムをダウンロードするには、500 MB のローカルディスク領域が必要です。

手順

  1. Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページにアクセスします。Red Hat アカウントがある場合は、認証情報を使ってログインします。アカウントがない場合はこれを作成します。
  2. 選択するインストールタイプのページに移動し、オペレーティングシステムのインストールプログラムをダウンロードし、ファイルをインストール設定ファイルを保存するディレクトリーに配置します。

    重要

    インストールプログラムは、クラスターのインストールに使用するコンピューターにいくつかのファイルを作成します。クラスターインストールの完了後は、インストールプログラムおよびインストールプログラムが作成するファイルの両方を保持する必要があります。

    重要

    インストールプログラムで作成されたファイルを削除しても、クラスターがインストール時に失敗した場合でもクラスターは削除されません。特定のクラウドプロバイダー用に記載された OpenShift Container Platform のアンインストール手順を完了して、クラスターを完全に削除する必要があります。

  3. インストールプログラムを展開します。たとえば、Linux オペレーティングシステムを使用するコンピューターで以下のコマンドを実行します。

    $ tar xvf <installation_program>.tar.gz
  4. Red Hat OpenShift Cluster Manager サイトの Pull Secret ページから、インストールプルシークレットを .txt ファイルとしてダウンロードします。このプルシークレットを使用し、OpenShift Container Platform コンポーネントのコンテナーイメージを提供する Quay.io など、組み込まれた各種の認証局によって提供されるサービスで認証できます。

1.1.9. クラスターのデプロイ

互換性のあるクラウドプラットフォームに OpenShift Container Platform をインストールできます。

重要

インストールプログラムの create cluster コマンドは、初期インストール時に 1 回だけ実行できます。

前提条件

  • インストーラーを実行するマシンから、ovirt-imageio ポートを Engine に開きます。デフォルトでは、ポートは 54322 です。
  • OpenShift Container Platform インストールプログラム、およびクラスターのプルシークレットを取得します。

手順

  1. インストールプログラムを実行します。

    $ ./openshift-install create cluster --dir=<installation_directory> \ 1
        --log-level=info 2
    1
    <installation_directory> の場合、インストールプログラムが作成するファイルを保存するためにディレクトリー名を指定します。
    2
    異なるインストールの詳細情報を表示するには、info ではなく、warndebug、または error を指定します。
    重要

    空のディレクトリーを指定します。ブートストラップ X.509 証明書などの一部のインストールアセットの有効期限は短く設定されているため、インストールディレクトリーを再利用することができません。別のクラスターインストールの個別のファイルを再利用する必要がある場合は、それらをディレクトリーにコピーすることができます。ただし、インストールアセットのファイル名はリリース間で変更される可能性があります。インストールファイルを以前のバージョンの OpenShift Container Platform からコピーする場合は注意してコピーを行ってください。

    インストールプログラムのプロンプトに対応します。

    1. オプション: SSH Public Key には、 パスワードなしのパブリックキー (例: ~/.ssh/id_rsa.pub) を選択します。このキーは、新規 OpenShift Container Platform クラスターとの接続を認証します。

      注記

      インストールのデバッグまたは障害復旧を実行する必要のある実稼働用の OpenShift Container Platform クラスターには、ssh-agent プロセスが使用する SSH キーを選択します。

    2. Platform には、ovirt を選択します。
    3. Enter oVirt's API endpoint URL に、この形式を使用して RHV API の URL を入力します。

      https://<engine-fqdn>/ovirt-engine/api 1
      1
      <engine-fqdn> に、RHV 環境の完全修飾ドメイン名を指定します。

      以下に例を示します。

      $ curl -k -u ovirtadmin@internal:pw123 \
      https://rhv-env.virtlab.example.com/ovirt-engine/api
    4. Is the oVirt CA trusted? には、CA 証明書がすでに設定されているため Yes を入力します。そうでない場合は、No と入力します。
    5. oVirt's CA bundle には、前の質問で Yes を入力している場合には、 /etc/pki/ca-trust/source/anchors/ca.pem の内容をコピーし、ここに貼り付けます。その後、Enter を 2 回押します。そうでない場合、つまり、前の質問で No と入力している場合は、この質問は表示されません。
    6. oVirt engine username には、この形式を使用して RHV 管理者のユーザー名およびプロファイルを入力します。

      <username>@<profile> 1
      1
      <username> に、RHV 管理者のユーザー名を指定します。<profile> には、ログインプロファイルを指定します。ログインプロファイルは、RHV Administration Portal ログインページに移動し、 Profile ドロップダウンリストで確認できます。ユーザー名とプロファイルは以下のようになります。
      admin@internal
    7. oVirt engine password に、RHV 管理者パスワードを入力します。
    8. oVirt cluster には、OpenShift Container Platform をインストールするためのクラスターを選択します。
    9. oVirt storage domain には、OpenShift Container Platform をインストールするためのストレージドメインを選択します。
    10. oVirt network には、RHV Manager REST API へのアクセスのある仮想ネットワークを選択します。
    11. Internal API Virtual IP に、クラスターの REST API とは別の静的 IP アドレスを入力します。
    12. Internal DNS Virtual IP に、クラスターの内部 DNS サービスとは別の静的 IP アドレスを入力します。
    13. Ingress virtual IP に、ワイルドカードアプリドメイン用に予約した静的 IP アドレスを入力します。
    14. Base Domain に、OpenShift Container Platform クラスターのベースドメインを入力します。このクラスターが外部に公開される場合、これは DNS インフラストラクチャーが認識する有効なドメインである必要があります。たとえば、virtlab.example.com を入力します。
    15. Cluster Name に、クラスターの名前を入力します。例: my-clusterOpenShift Container Platform REST API およびアプリケーションドメイン名向けに作成した外部登録/解決可能な DNS エントリーのクラスター名を使用します。インストールプログラムは、この名前を RHV 環境のクラスターにも指定します。
    16. Pull secret には、先にダウンロードした pull-secret.txt ファイルからプルシークレットをコピーし、ここに貼り付けます。Red Hat OpenShift Cluster Manager サイトの Pull Secret ページから同じプルシークレットのコピーを取得することもできます。
    注記

    ホストに設定した AWS アカウントにクラスターをデプロイするための十分なパーミッションがない場合、インストールプログラムは停止し、不足しているパーミッションが表示されます。

    クラスターのデプロイメントが完了すると、Web コンソールへのリンクや kubeadmin ユーザーの認証情報を含む、クラスターにアクセスするための指示がターミナルに表示されます。

    重要

    インストールプログラムが生成する Ignition 設定ファイルには、24 時間が経過すると期限切れになり、その後に更新される証明書が含まれます。証明書を更新する前にクラスターが停止し、24 時間経過した後にクラスターを再起動すると、クラスターは期限切れの証明書を自動的に復元します。例外として、kubelet 証明書を回復するために保留状態の node-bootstrapper 証明書署名要求 (CSR) を手動で承認する必要があります。詳細は、コントロールプレーン証明書の期限切れの状態からのリカバリー についてのドキュメントを参照してください。

    重要

    インストールプログラム、またはインストールプログラムが作成するファイルを削除することはできません。これらはいずれもクラスターを削除するために必要になります。

重要

クラスターのインストールに必要な手順を完了している必要があります。残りの手順では、クラスターを検証し、インストールのトラブルシューティングを行う方法を説明します。

第2章 バイナリーのダウンロードによる CLI のインストール

コマンドラインインターフェイスを使用して OpenShift Container Platform と対話するために CLI (oc) をインストールすることができます。oc は Linux、Windows、または macOS にインストールできます。

重要

以前のバージョンの oc をインストールしている場合、これを使用して OpenShift Container Platform 4.5 のすべてのコマンドを実行することはできません。新規バージョンの oc をダウンロードし、インストールします。

2.1. Linux への CLI のインストール

以下の手順を使用して、OpenShift CLI (oc) バイナリーを Linux にインストールできます。

手順

  1. Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページに移動します。
  2. インフラストラクチャープロバイダーを選択し、(該当する場合は) インストールタイプを選択します。
  3. Command-line interface セクションで、ドロップダウンメニューの Linux を選択し、Download command-line tools をクリックします。
  4. アーカイブを展開します。

    $ tar xvzf <file>
  5. oc バイナリーを、PATH にあるディレクトリーに配置します。

    PATH を確認するには、以下のコマンドを実行します。

    $ echo $PATH

CLI のインストール後は、oc コマンドを使用して利用できます。

$ oc <command>

2.2. Windows での CLI のインストール

以下の手順を使用して、OpenShift CLI (oc) バイナリーを Windows にインストールできます。

手順

  1. Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページに移動します。
  2. インフラストラクチャープロバイダーを選択し、(該当する場合は) インストールタイプを選択します。
  3. Command-line interface セクションで、ドロップダウンメニューの Windows を選択し、Download command-line tools をクリックします。
  4. ZIP プログラムでアーカイブを解凍します。
  5. oc バイナリーを、PATH にあるディレクトリーに移動します。

    PATH を確認するには、コマンドプロンプトを開いて以下のコマンドを実行します。

    C:\> path

CLI のインストール後は、oc コマンドを使用して利用できます。

C:\> oc <command>

2.3. macOS への CLI のインストール

以下の手順を使用して、OpenShift CLI (oc) バイナリーを macOS にインストールできます。

手順

  1. Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページに移動します。
  2. インフラストラクチャープロバイダーを選択し、(該当する場合は) インストールタイプを選択します。
  3. Command-line interface セクションで、ドロップダウンメニューの MacOS を選択し、Download command-line tools をクリックします。
  4. アーカイブを展開し、解凍します。
  5. oc バイナリーをパスにあるディレクトリーに移動します。

    PATH を確認するには、ターミナルを開き、以下のコマンドを実行します。

    $ echo $PATH

CLI のインストール後は、oc コマンドを使用して利用できます。

$ oc <command>

詳細は、Getting started with the CLI を参照してください。

第3章 クラスターへのログイン

クラスター kubeconfig ファイルをエクスポートし、デフォルトシステムユーザーとしてクラスターにログインできます。kubeconfig ファイルには、クライアントを正しいクラスターおよび API サーバーに接続するために CLI で使用されるクラスターについての情報が含まれます。このファイルはクラスターに固有のファイルであり、OpenShift Container Platform のインストール時に作成されます。

前提条件

  • OpenShift Container Platform クラスターをデプロイします。
  • oc CLI をインストールします。

手順

  1. kubeadmin 認証情報をエクスポートします。

    $ export KUBECONFIG=<installation_directory>/auth/kubeconfig 1
    1
    <installation_directory> には、インストールファイルを保存したディレクトリーへのパスを指定します。
  2. エクスポートされた設定を使用して、oc コマンドを正常に実行できることを確認します。

    $ oc whoami

    出力例

    system:admin

3.1. クラスターステータスの確認

インストール時またはインストール後に OpenShift Container Platform クラスターのステータスを確認することができます。

手順

  1. クラスター環境で、管理者の kubeconfig ファイルをエクスポートします。

    $ export KUBECONFIG=<installation_directory>/auth/kubeconfig 1
    1
    <installation_directory> には、インストールファイルを保存したディレクトリーへのパスを指定します。

    kubeconfig ファイルには、クライアントを正しいクラスターおよび API サーバーに接続するために CLI で使用されるクラスターについての情報が含まれます。

  2. デプロイメント後に作成されたコントロールプレーンおよびコンピュートマシンを表示します。

    $ oc get nodes
  3. クラスターのバージョンを表示します。

    $ oc get clusterversion
  4. Operator のステータスを表示します。

    $ oc get clusteroperator
  5. クラスター内のすべての実行中の Pod を表示します。

    $ oc get pods -A

トラブルシューティング

インストールが失敗すると、インストールプログラムがタイムアウトし、エラーメッセージが表示されます。詳細は、インストールに関する問題のトラブルシューティング を参照してください。

3.2. RHV での OpenShift Container Platform Web コンソールへのアクセス

OpenShift Container Platform クラスターの初期化後に、OpenShift Container Platform Web コンソールにログインできます。

手順

  1. オプション: Red Hat Virtualization (RHV) Administration Portal で、ComputeCluster を開きます。
  2. インストールプログラムが仮想マシンを作成することを確認します。
  3. インストールプログラムが実行されているコマンドラインに戻ります。インストールプログラムが完了すると、OpenShift Container Platform Web コンソールにログインするためのユーザー名およびパスワードの一時パスワードが表示されます。
  4. ブラウザーから OpenShift Container Platform の Web コンソールの URL を開きます。URL は以下の形式を使用します。

    console-openshift-console.apps.<clustername>.<basedomain> 1
    1
    <clustername>.<basedomain> に、クラスター名およびベースドメインを指定します。

    以下に例を示します。

    console-openshift-console.apps.my-cluster.virtlab.example.com

3.3. Red Hat Virtualization (RHV) へのインストールに関するよくある問題のトラブルシューティング

以下に、一般的な問題およびそれらについて考えられる原因および解決策を記載します。

3.3.1. CPU 負荷が増大し、ノードが Not Ready 状態になる

  • 現象: CPU 負荷が大幅に増大し、ノードが Not Ready 状態に切り替わり始める。
  • 原因: ストレージドメインのレイテンシーが高すぎる可能性があります (特にマスターノードの場合)。
  • 解決策:

    Kubelet サービスを再起動して、ノードを再度 Ready 状態にします。以下を入力します。

    $ systemctl restart kubelet

    OpenShift Container Platform メトリクスサービスを検査します。これは、etcd ディスクの同期期間などの有用なデータを収集し、これについて報告します。クラスターが機能している場合は、このデータを使用して、ストレージのレイテンシーまたはスループットが根本的な問題かどうかを判断します。その場合、レイテンシーが短く、スループットの高いストレージリソースの使用を検討してください。

    未加工メトリクスを取得するには、kubeadmin または cluster-admin 権限を持つユーザーで以下のコマンドを実行します。

    $ oc get --insecure-skip-tls-verify --server=https://localhost:<port> --raw=/metrics`

    詳細は、Exploring Application Endpoints for the purposes of Debugging with OpenShift 4.x を参照してください。

3.3.2. OpenShift Container Platform クラスター API に接続できない

  • 現象: インストールプログラムは完了するが、OpenShift Container Platform クラスター API は利用できない。ブートストラップの仮想マシンは、ブートストラッププロセスの完了後も起動した状態になります。以下のコマンドを入力すると、応答がタイムアウトします。

    $ oc login -u kubeadmin -p *** <apiurl>
  • 原因: ブートストラップ仮想マシンがインストールプログラムによって削除されず、クラスターの API IP アドレスをリリースしない。
  • 解決策: wait-for サブコマンドを使用して、ブートストラッププロセスの完了時に通知を受信する。

    $ ./openshift-install wait-for bootstrap-complete

    ブートストラッププロセスが完了したら、ブートストラップ仮想マシンを削除します。

    $ ./openshift-install destroy bootstrap

3.4. インストール後のタスク

OpenShift Container Platform クラスターの初期化後に、以下のタスクを実行できます。

  • オプション: デプロイメント後に、OpenShift Container Platform で Machine Config Operator (MCO) を使用して SSH キーを追加するか、または置き換えます。
  • オプション: kubeadmin ユーザーを削除します。代わりに、認証プロバイダーを使用して cluster-admin 権限を持つユーザーを作成します。

3.5. カスタマイズによる RHV へのクラスターのインストール

警告

Red Hat Virtualization (RHV) 4.4.1 に OpenShift Container Platform バージョン 4.4 および 4.5 をインストールする際の既知の問題により、OpenShift IPI installation on RHV-4.x failed with "Error: timeout while waiting for state to become 'up' (last state: 'down', timeout: 10m0s)" で説明されているように install-config.yaml をカスタマイズする必要があります。この不具合は RHV 4.4.2 で修正されました。

警告

OpenShift Container Platform バージョン 4.6 を Red Hat Virtualization (RHV) にインストールするには、RHV バージョン 4.4 が必要です。RHV 4.3 で以前のバージョンの OpenShift Container Platform を実行している場合は、これを OpenShift Container Platform バージョン 4.6 に更新しないでください。Red Hat は、RHV バージョン 4.3 での OpenShift Container Platform バージョン 4.6 の実行をテストしていないため、この組み合わせをサポートしません。詳細は、OpenShift Container Platform 4.x Tested Integrations (x86_x64) を参照してください。

以下の図に示されるように、OpenShift Container Platform クラスターを Red Hat Virtualization (RHV) でカスタマイズし、インストールすることができます。

RHV クラスターの OpenShift Container Platform クラスターの図

インストールプログラムは、インストーラーでプロビジョニングされるインフラストラクチャーを使用してクラスターの作成およびデプロイを自動化します。

カスタマイズされたクラスターをインストールするには、環境を準備し、以下の手順を実行します。

  1. インストールプログラムを実行し、そのプロンプトに応答して、インストール設定ファイル install-config.yaml ファイルを作成します。
  2. install-config.yaml ファイルでパラメーターを検査し、変更します。
  3. install-config.yaml ファイルの作業用コピーを作成します。
  4. install-config.yaml ファイルのコピーを使ってインストールプログラムを実行します。

次に、インストールプログラムは OpenShift Container Platform クラスターを作成します。

カスタマイズされたクラスターをインストールする代替方法については、デフォルトのクラスターのインストール を参照してください。

注記

このインストールプログラムは、Linux および macOS でのみ利用できます。

3.5.1. 前提条件

3.5.2. OpenShift Container Platform のインターネットアクセスおよび Telemetry アクセス

OpenShift Container Platform 4.5 では、クラスターをインストールするためにインターネットアクセスが必要になります。クラスターの健全性および正常に実行された更新についてのメトリクスを提供するためにデフォルトで実行される Telemetry サービスにもインターネットアクセスが必要です。クラスターがインターネットに接続されている場合、Telemetry は自動的に実行され、クラスターは Red Hat OpenShift Cluster Manager (OCM) に登録されます。

Red Hat OpenShift Cluster Manager インベントリーが Telemetry によって自動的に維持されるか、または OCM を手動で使用しているかのいずれによって正常であることを確認した後に、subscription watch を使用して、アカウントまたはマルチクラスターレベルで OpenShift Container Platform サブスクリプションを追跡します。

インターネットへのアクセスは以下を実行するために必要です。

  • Red Hat OpenShift Cluster Manager ページにアクセスし、インストールプログラムをダウンロードし、サブスクリプション管理を実行します。クラスターにインターネットアクセスがあり、Telemetry を無効にしない場合、そのサービスは有効なサブスクリプションでクラスターを自動的に使用します。
  • クラスターのインストールに必要なパッケージを取得するために Quay.io にアクセスします。
  • クラスターの更新を実行するために必要なパッケージを取得します。
重要

クラスターでインターネットに直接アクセスできない場合、プロビジョニングする一部のタイプのインフラストラクチャーでネットワークが制限されたインストールを実行できます。このプロセスで、必要なコンテンツをダウンロードし、これを使用してミラーレジストリーにクラスターのインストールおよびインストールプログラムの生成に必要なパッケージを設定します。インストールタイプによっては、クラスターのインストール環境でインターネットアクセスが不要となる場合があります。クラスターを更新する前に、ミラーレジストリーのコンテンツを更新します。

3.5.3. RHV 環境の要件

OpenShift Container Platform クラスターをインストールし、実行するには、RHV 環境が以下の要件を満たしている必要があります。これらの要件を満たさないと、エラーが発生する可能性があります。

CPU、メモリー、ストレージについての以下の要件は、インストールプログラムが作成する仮想マシンのデフォルト数で乗算した デフォルト 値に基づいています。

デフォルトでは、インストールプログラムは、1 つのブートストラップマシンを含む 7 つのマシンをインストールプロセスで作成します。インストールプログラムが完了すると、ブートストラップマシンが削除され、そのリソースが解放されます。カスタムインストールを実行する場合は、インストールプログラムが作成する仮想マシンの数を増やすことができます。

重要

install_config.yaml ファイルで仮想マシンまたはリソースの数を増やす場合は、これらの要件も増やす必要があります。

要件

  • RHV バージョン 4.3.10 以降。
  • RHV 環境に Up 状態のデータセンターが 1 つあること。
  • RHV データセンターに RHV クラスターが含まれていること。
  • RHV クラスターに OpenShift Container Platform クラスター専用の以下のリソースがあること。

    • 最小 28 vCPU (インストール時に作成される 7 仮想マシンのそれぞれに 4 vCPU)。
    • 以下を含む 112 GiB 以上の RAM。

      • 一時的なコントロールプレーンを提供するブートストラップマシン用に 16 GiB 以上。
      • コントロールプレーンを提供する 3 つのコントロールプレーンマシンのそれぞれに 16 GiB 以上。
      • アプリケーションワークロードを実行する 3 つのコンピュートマシンのそれぞれに 16 GiB 以上。
  • RHV ストレージドメインは、これらの etcd バックエンドのパフォーマンス要件 を満たす必要があります。
  • 実稼働環境では各仮想マシンに 120 GiB 以上を指定する必要があるため、ストレージドメインには OpenShift Container Platform クラスター用に 840 GiB 以上が必要になります。リソースに制約のある環境または非実稼働環境では、各仮想マシンに 32 GiB 以上を指定する必要があるため、ストレージドメインには OpenShift Container Platform クラスター用に 230 GiB 以上が必要になります。
  • RHV クラスターのインターネット接続へのアクセス。これは、インストールおよび更新時に Red Hat Ecosystem Catalog からイメージをダウンロードし、Telemetry サービスでサブスクリプションとエンタイトルメントのプロセスを単純化できるようにするために必要です。
  • RHV クラスターに RHV Manager の REST API にアクセスできる仮想ネットワークがあること。インストーラーが作成する仮想マシンが DHCP を使用して IP アドレスを取得するため、DHCP がこのネットワークで有効にされていることを確認します。
注記
  • すべてのホストには、それらの操作および OpenShift Container Platform 以外の操作に使用するもののほかに、必要となるメモリーおよび CPU リソースがなければなりません。
  • OpenShift Container Platform と RHV のリリースサイクルは異なり、テストされるバージョンは両方の製品のリリース日によって変わる可能性があります。
  • ブートストラップマシンは、インストールプログラムが OpenShift Container Platform クラスターを作成する間に一時的なコントロールプレーンを提供します。クラスターの作成後、インストールプログラムはブートストラップマシンを削除し、そのリソースを解放します。

3.5.4. RHV 環境の要件の確認

RHV 環境が OpenShift Container Platform クラスターをインストールし、実行するための要件を満たしていることを確認します。これらの要件を満たさないと、エラーが発生する可能性があります。

重要

これらの要件は、インストールプログラムがコントロールプレーンおよびコンピュートマシンの作成に使用するデフォルトのリソースに基づいています。これらのリソースには、vCPU、メモリー、およびストレージが含まれます。これらのリソースを変更するか、または OpenShift Container Platform マシンの数を増やす場合は、これらの要件を適宜調整します。

手順

  1. RHV のバージョンを確認します。

    1. RHV Administration Portal の右上にある ? ヘルプアイコンをクリックし、About を選択します。
    2. 開いているウィンドウで、RHV Software Version4.3.10 以上であることを確認します。
  2. データセンター、クラスター、およびストレージを検査します。

    1. RHV 管理ポータルで、ComputeData Centers をクリックします。
    2. OpenShift Container Platform をインストールする予定のデータセンターに緑色の上矢印 (Up) が表示されることを確認します。
    3. そのデータセンターの名前をクリックします。
    4. データセンターの詳細の Storage タブで、OpenShift Container Platform をインストールする予定のストレージドメインが Active であることを確認します。
    5. 後で使用できるように ドメイン名 を記録します。
    6. 空き領域 に 230 GiB 以上あることを確認します。
    7. ストレージドメインが これらの etcd バックエンドのパフォーマンス要件 を満たしていることを確認します。これは、fio パフォーマンスベンチマークツールを使用して測定 できます。
    8. データセンターの詳細で、Clusters タブをクリックします。
    9. OpenShift Container Platform をインストールする予定の RHV クラスターを見つけます。後で使用できるようにクラスター名を記録します。
  3. RHV ホストリソースを確認します。

    1. RHV 管理ポータルで、Compute > Clusters をクリックします。
    2. OpenShift Container Platform をインストールする予定のクラスターをクリックします。
    3. クラスターの詳細で、Hosts タブをクリックします。
    4. ホストを検査し、それらに OpenShift Container Platform クラスター 専用 として利用可能な 論理 CPU コア の合計が 28 つ以上であることを確認します。
    5. 後で使用できるように、利用可能な 論理 CPU コア の数を記録します。
    6. これらの CPU コアが分散され、インストール時に作成された 7 つの仮想マシンのそれぞれに 4 つのコアを持たせることができることを確認します。
    7. ホストには、以下の OpenShift Container Platform マシンのそれぞれの要件を満たすように 新規仮想マシンをスケジュールするための最大空きメモリー として 112 GiB があることを確認します。

      • ブートストラップマシンに 16 GiB が必要です。
      • 3 つのコントロールプレーンマシンのそれぞれに 16 GiB が必要です。
      • 3 つのコンピュートマシンのそれぞれに 16 GiB が必要です。
    8. 後で使用できるように 新規仮想マシンをスケジュールするための最大空きメモリー の量を記録します。
  4. OpenShift Container Platform をインストールするための仮想ネットワークが RHV Manager の REST API にアクセスできることを確認します。このネットワーク上の仮想マシンから、RHV Manager の REST API で curl コマンドを使用します。以下の形式を使用します。

    $ curl -k -u <username>@<profile>:<password> \ 1
    https://<engine-fqdn>/ovirt-engine/api 2
    1
    <username> に、RHV 管理者のユーザー名を指定します。<profile> には、ログインプロファイルを指定します。ログインプロファイルは、RHV Administration Portal ログインページに移動し、 Profile ドロップダウンリストで確認できます。<password> に、管理者パスワードを指定します。
    2
    <engine-fqdn> に、RHV 環境の完全修飾ドメイン名を指定します。

    以下に例を示します。

    $ curl -k -u rhvadmin@internal:pw123 \
    https://rhv-env.virtlab.example.com/ovirt-engine/api

3.5.5. RHV でのネットワーク環境の準備

OpenShift Container Platform クラスターの 3 つの静的 IP アドレスを設定し、これらのアドレスの 2 つを使用して DNS エントリーを作成します。

手順

  1. 静的 IP アドレスを予約します。

    1. OpenShift Container Platform をインストールするネットワークで、DHCP リースプール外にある 3 つの静的 IP アドレスを特定します。
    2. このネットワーク上のホストに接続し、それぞれの IP アドレスが使用されていないことを確認します。たとえば、Address Resolution Protocol (ARP) を使用して、IP アドレスのいずれにもエントリーがないことを確認します。

      $ arp 10.35.1.19

      出力例

      10.35.1.19 (10.35.1.19) -- no entry

    3. ネットワーク環境の標準的な方法に従って、3 つの静的 IP アドレスを予約します。
    4. 今後の参照用にこれらの IP アドレスを記録します。
  2. 以下の形式を使用して、OpenShift Container Platform REST API およびアプリケーションドメイン名の DNS エントリーを作成します。

    api.<cluster-name>.<base-domain>   <ip-address> 1
    *.apps.<cluster-name>.<base-domain>   <ip-address> 2
    1
    <cluster-name><base-domain>、および <ip-address> には、クラスター名、ベースドメイン、および OpenShift Container Platform API の静的 IP アドレスを指定します。
    2
    Ingress およびロードバランサー用に OpenShift Container Platform アプリケーションのクラスター名、ベースドメイン、および静的 IP アドレスを指定します。

    以下は例になります。

    api.my-cluster.virtlab.example.com	10.35.1.19
    *.apps.my-cluster.virtlab.example.com	10.35.1.20
    注記

    3 つ目の静的 IP アドレスには DNS エントリーは必要ありません。OpenShift Container Platform クラスターは、その内部 DNS サービスにこのアドレスを使用します。

3.5.6. RHV 用の CA 証明書の設定

Red Hat Virtualization (RHV) Manager から CA 証明書をダウンロードし、インストールマシンにこれを設定します。

RHV Manager からの Web サイトまたは curl コマンドを使用して、証明書をダウンロードできます。

その後、インストールプログラムに証明書を提供します。

手順

  1. 以下の 2 つの方法のいずれかを使用して CA 証明書をダウンロードします。

    • Manager の Web ページ (https://<engine-fqdn>/ovirt-engine/) に移動します。次に、DownloadsCA Certificate のリンクをクリックします。
    • 以下のコマンドを実行します。

      $ curl -k 'https://<engine-fqdn>/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA' -o /tmp/ca.pem  1
      1
      <engine-fqdn> には、RHV Manager の完全修飾ドメイン名 (例: rhv-env.virtlab.example.com) を指定します。
  2. ルートレスユーザーに Manager へのアクセスを付与するように CA ファイルを設定します。CA ファイルのパーミッションを 8 進数の 0644 に設定します (シンボリック値: -rw-r—​r--):

    $ sudo chmod 0644 /tmp/ca.pem
  3. Linux の場合は、サーバー証明書のディレクトリーに CA 証明書をコピーします。-p を使用してパーミッションを保存します。

    $ sudo cp -p /tmp/ca.pem /etc/pki/ca-trust/source/anchors/ca.pem
  4. オペレーティングシステム用の証明書マネージャーに証明書を追加します。

    • MacOS の場合は、証明書ファイルをダブルクリックして、Keychain Access ユーティリティーを使用してファイルを System キーチェーンに追加します。
    • Linux の場合は、CA 信頼を更新します。

      $ sudo update-ca-trust
      注記

      独自の認証局を使用する場合は、システムがこれを信頼することを確認します。

関連情報

詳細は、RHV ドキュメントの Authentication and Security を参照してください。

3.5.7. SSH プライベートキーの生成およびエージェントへの追加

クラスターでインストールのデバッグまたは障害復旧を実行する必要がある場合、ssh-agent とインストールプログラムの両方に SSH キーを指定する必要があります。このキーを使用してパブリッククラスターのブートストラップマシンにアクセスし、インストールの問題をトラブルシューティングできます。

注記

実稼働環境では、障害復旧およびデバッグが必要です。

このキーを使用して、ユーザー core としてマスターノードに対して SSH を実行できます。クラスターをデプロイする際に、キーは core ユーザーの ~/.ssh/authorized_keys 一覧に追加されます。

手順

  1. パスワードなしの認証に設定されている SSH キーがコンピューター上にない場合は、これを作成します。たとえば、Linux オペレーティングシステムを使用するコンピューターで以下のコマンドを実行します。

    $ ssh-keygen -t ed25519 -N '' \
        -f <path>/<file_name> 1
    1
    ~/.ssh/id_rsa などの、新規 SSH キーのパスおよびファイル名を指定します。既存のキーペアがある場合は、公開鍵が ~/.ssh ディレクトリーにあることを確認します。

    このコマンドを実行すると、指定した場所にパスワードを必要としない SSH キーが生成されます。

    注記

    FIPS で検証済み/進行中のモジュール (Modules in Process) 暗号ライブラリーを使用する OpenShift Container Platform クラスターを x86_64 アーキテクチャーにインストールする予定の場合は、ed25519 アルゴリズムを使用するキーは作成しないでください。代わりに、rsa アルゴリズムまたは ecdsa アルゴリズムを使用するキーを作成します。

  2. ssh-agent プロセスをバックグラウンドタスクとして開始します。

    $ eval "$(ssh-agent -s)"

    出力例

    Agent pid 31874

クラスターが FIPS モードにある場合は、FIPS 準拠のアルゴリズムのみを使用して SSH キーを生成します。鍵は RSA または ECDSA のいずれかである必要があります。

  1. SSH プライベートキーを ssh-agent に追加します。

    $ ssh-add <path>/<file_name> 1

    出力例

    Identity added: /home/<you>/<path>/<file_name> (<computer_name>)

    1
    ~/.ssh/id_rsa などの、SSH プライベートキーのパスおよびファイル名を指定します。

次のステップ

  • OpenShift Container Platform をインストールする際に、SSH パブリックキーをインストールプログラムに指定します。

3.5.8. インストールプログラムの取得

OpenShift Container Platform をインストールする前に、インストールファイルをローカルコンピューターにダウンロードします。

前提条件

  • Linux または macOS を使用するコンピューターからクラスターをインストールする必要があります。
  • インストールプログラムをダウンロードするには、500 MB のローカルディスク領域が必要です。

手順

  1. Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページにアクセスします。Red Hat アカウントがある場合は、認証情報を使ってログインします。アカウントがない場合はこれを作成します。
  2. 選択するインストールタイプのページに移動し、オペレーティングシステムのインストールプログラムをダウンロードし、ファイルをインストール設定ファイルを保存するディレクトリーに配置します。

    重要

    インストールプログラムは、クラスターのインストールに使用するコンピューターにいくつかのファイルを作成します。クラスターインストールの完了後は、インストールプログラムおよびインストールプログラムが作成するファイルの両方を保持する必要があります。

    重要

    インストールプログラムで作成されたファイルを削除しても、クラスターがインストール時に失敗した場合でもクラスターは削除されません。特定のクラウドプロバイダー用に記載された OpenShift Container Platform のアンインストール手順を完了して、クラスターを完全に削除する必要があります。

  3. インストールプログラムを展開します。たとえば、Linux オペレーティングシステムを使用するコンピューターで以下のコマンドを実行します。

    $ tar xvf <installation_program>.tar.gz
  4. Red Hat OpenShift Cluster Manager サイトの Pull Secret ページから、インストールプルシークレットを .txt ファイルとしてダウンロードします。このプルシークレットを使用し、OpenShift Container Platform コンポーネントのコンテナーイメージを提供する Quay.io など、組み込まれた各種の認証局によって提供されるサービスで認証できます。

3.5.9. インストール設定ファイルの作成

Red Hat Virtualization (RHV) にインストールする OpenShift Container Platform クラスターをカスタマイズできます。

警告

Red Hat Virtualization (RHV) 4.4.1 に OpenShift Container Platform バージョン 4.4 および 4.5 をインストールする際の既知の問題により、OpenShift IPI installation on RHV-4.x failed with "Error: timeout while waiting for state to become 'up' (last state: 'down', timeout: 10m0s)" で説明されているように install-config.yaml をカスタマイズする必要があります。この不具合は RHV 4.4.2 で修正されました。

警告

OpenShift Container Platform (OCP) バージョン 4.6 を Red Hat Virtualization (RHV) にインストールするには、RHV バージョン 4.4 が必要です。RHV 4.3 で以前のバージョンの OCP を実行している場合は、これを OCP バージョン 4.6 に更新しないでください。Red Hat は、RHV バージョン 4.3 での OCP バージョン 4.6 の実行をテストしていないため、この組み合わせをサポートしません。OpenShift Container Platform 4.x Tested Integrations (x86_x64) も参照してください。

前提条件

  • OpenShift Container Platform インストールプログラム、およびクラスターのプルシークレットを取得します。

手順

  1. install-config.yaml ファイルを作成します。

    1. 以下のコマンドを実行します。

      $ ./openshift-install create install-config --dir=<installation_directory> 1
      1
      <installation_directory> の場合、インストールプログラムが作成するファイルを保存するためにディレクトリー名を指定します。
      重要

      空のディレクトリーを指定します。ブートストラップ X.509 証明書などの一部のインストールアセットの有効期限は短く設定されているため、インストールディレクトリーを再利用することができません。別のクラスターインストールの個別のファイルを再利用する必要がある場合は、それらをディレクトリーにコピーすることができます。ただし、インストールアセットのファイル名はリリース間で変更される可能性があります。インストールファイルを以前のバージョンの OpenShift Container Platform からコピーする場合は注意してコピーを行ってください。

    2. インストールプログラムのプロンプトに対応します。

      1. SSH Public Key では、パスワードなしのパブリックキー (例: ~/.ssh/id_rsa.pub) を選択します。このキーは、新規 OpenShift Container Platform クラスターとの接続を認証します。

        注記

        インストールのデバッグまたは障害復旧を実行する必要のある実稼働用の OpenShift Container Platform クラスターには、ssh-agent プロセスが使用する SSH キーを選択します。

      2. Platform には、ovirt を選択します。
      3. Enter oVirt's API endpoint URL に、この形式を使用して RHV API の URL を入力します。

        https://<engine-fqdn>/ovirt-engine/api 1
        1
        <engine-fqdn> に、RHV 環境の完全修飾ドメイン名を指定します。

        以下に例を示します。

        $ curl -k -u ovirtadmin@internal:pw123 \
        https://rhv-env.virtlab.example.com/ovirt-engine/api
      4. Is the oVirt CA trusted? には、CA 証明書がすでに設定されているため Yes を入力します。そうでない場合は、No と入力します。
      5. oVirt's CA bundle には、前の質問で Yes を入力している場合には、 /etc/pki/ca-trust/source/anchors/ca.pem の内容をコピーし、ここに貼り付けます。その後、Enter を 2 回押します。そうでない場合、つまり、前の質問で No と入力している場合は、この質問は表示されません。
      6. oVirt engine username には、この形式を使用して RHV 管理者のユーザー名およびプロファイルを入力します。

        <username>@<profile> 1
        1
        <username> に、RHV 管理者のユーザー名を指定します。<profile> には、ログインプロファイルを指定します。ログインプロファイルは、RHV Administration Portal ログインページに移動し、 Profile ドロップダウンリストで確認できます。ユーザー名とプロファイルは以下のようになります。
        admin@internal
      7. oVirt engine password に、RHV 管理者パスワードを入力します。
      8. oVirt cluster には、OpenShift Container Platform をインストールするためのクラスターを選択します。
      9. oVirt storage domain には、OpenShift Container Platform をインストールするためのストレージドメインを選択します。
      10. oVirt network には、RHV Manager REST API へのアクセスのある仮想ネットワークを選択します。
      11. Internal API Virtual IP に、クラスターの REST API とは別の静的 IP アドレスを入力します。
      12. Internal DNS Virtual IP に、クラスターの内部 DNS サービスとは別の静的 IP アドレスを入力します。
      13. Ingress virtual IP に、ワイルドカードアプリドメイン用に予約した静的 IP アドレスを入力します。
      14. Base Domain に、OpenShift Container Platform クラスターのベースドメインを入力します。このクラスターが外部に公開される場合、これは DNS インフラストラクチャーが認識する有効なドメインである必要があります。たとえば、virtlab.example.com を入力します。
      15. Cluster Name に、クラスターの名前を入力します。例: my-clusterOpenShift Container Platform REST API およびアプリケーションドメイン名向けに作成した外部登録/解決可能な DNS エントリーのクラスター名を使用します。インストールプログラムは、この名前を RHV 環境のクラスターにも指定します。
      16. Pull secret には、先にダウンロードした pull-secret.txt ファイルからプルシークレットをコピーし、ここに貼り付けます。Red Hat OpenShift Cluster Manager サイトの Pull Secret ページから同じプルシークレットのコピーを取得することもできます。
  2. install-config.yaml ファイルを変更します。利用可能なパラメーターの詳細については、インストール設定パラメーターセクションを参照してください。
  3. install-config.yaml ファイルをバックアップし、複数のクラスターをインストールするのに使用できるようにします。

    重要

    install-config.yaml ファイルはインストールプロセス時に使用されます。このファイルを再利用する必要がある場合は、この段階でこれをバックアップしてください。

3.5.9.1. Red Hat Virtualization (RHV) のサンプル install-config.yaml ファイル

install-config.yaml ファイルのパラメーターおよびパラメーター値を変更して、インストールプログラムが作成する OpenShift Container Platform クラスターをカスタマイズできます。

以下の例は、RHV への OpenShift Container Platform のインストールに固有の例です。

このファイルは、以下のコマンドを実行する際に指定する <installation_directory> にあります。

$ ./openshift-install create install-config --dir=<installation_directory>
注記
  • これらのサンプルファイルは参照用にのみ提供されます。インストールプログラムを使用して install-config.yaml ファイルを取得する必要があります。
  • install-config.yaml ファイルを変更すると、クラスターに必要なリソースを増やすことができます。RHV 環境にそれらの追加リソースがあることを確認します。これらがない場合は、インストールまたはクラスターが失敗します。

例: これはデフォルトの install-config.yaml ファイルです。

apiVersion: v1
baseDomain: example.com
compute:
- architecture: amd64
  hyperthreading: Enabled
  name: worker
  platform: {}
  replicas: 3
controlPlane:
  architecture: amd64
  hyperthreading: Enabled
  name: master
  platform: {}
  replicas: 3
metadata:
  creationTimestamp: null
  name: my-cluster
networking:
  clusterNetwork:
  - cidr: 10.128.0.0/14
    hostPrefix: 23
  machineNetwork:
  - cidr: 10.0.0.0/16
  networkType: OpenShiftSDN
  serviceNetwork:
  - 172.30.0.0/16
platform:
  ovirt:
    api_vip: 10.46.8.230
    ingress_vip: 192.168.1.5
    ovirt_cluster_id: 68833f9f-e89c-4891-b768-e2ba0815b76b
    ovirt_storage_domain_id: ed7b0f4e-0e96-492a-8fff-279213ee1468
    ovirt_network_name: ovirtmgmt
    vnicProfileID: 3fa86930-0be5-4052-b667-b79f0a729692
publish: External
pullSecret: '{"auths": ...}'
sshKey: ssh-ed12345 AAAA...

例: 最小の install-config.yaml ファイル

apiVersion: v1
baseDomain: example.com
metadata:
  name: test-cluster
platform:
  ovirt:
    api_vip: 10.46.8.230
    ingress_vip: 10.46.8.232
    ovirt_cluster_id: 68833f9f-e89c-4891-b768-e2ba0815b76b
    ovirt_storage_domain_id: ed7b0f4e-0e96-492a-8fff-279213ee1468
    ovirt_network_name: ovirtmgmt
    vnicProfileID: 3fa86930-0be5-4052-b667-b79f0a729692
pullSecret: '{"auths": ...}'
sshKey: ssh-ed12345 AAAA...

例: install-config.yaml ファイルのカスタムマシンプール

apiVersion: v1
baseDomain: example.com
controlPlane:
  name: master
  platform:
    ovirt:
      cpu:
        cores: 4
        sockets: 2
      memoryMB: 65536
      osDisk:
        sizeGB: 100
      vmType: high_performance
  replicas: 3
compute:
- name: worker
  platform:
    ovirt:
      cpu:
        cores: 4
        sockets: 4
      memoryMB: 65536
      osDisk:
        sizeGB: 200
      vmType: high_performance
  replicas: 5
metadata:
  name: test-cluster
platform:
  ovirt:
    api_vip: 10.46.8.230
    ingress_vip: 10.46.8.232
    ovirt_cluster_id: 68833f9f-e89c-4891-b768-e2ba0815b76b
    ovirt_storage_domain_id: ed7b0f4e-0e96-492a-8fff-279213ee1468
    ovirt_network_name: ovirtmgmt
    vnicProfileID: 3fa86930-0be5-4052-b667-b79f0a729692
pullSecret: '{"auths": ...}'
sshKey: ssh-ed25519 AAAA...

3.5.9.2. インストール設定パラメーター

OpenShift Container Platform クラスターをデプロイする前に、クラスターをホストするクラウドプラットフォームでアカウントを記述し、クラスターのプラットフォームをオプションでカスタマイズするためにパラメーターの値を指定します。install-config.yaml インストール設定ファイルを作成する際に、コマンドラインで必要なパラメーターの値を指定します。クラスターをカスタマイズする場合、install-config.yaml ファイルを変更して、プラットフォームについての詳細情報を指定できます。

注記

インストール後は、これらのパラメーターを install-config.yaml ファイルで変更することはできません。

重要

openshift-install コマンドは、パラメーターのフィールド名を検証しません。正しくない名前を指定すると、関連するファイルまたはオブジェクトは作成されず、エラーが報告されません。指定されたパラメーターのフィールド名が正しいことを確認します。

3.5.9.2.1. 必須設定パラメーター

必須のインストール設定パラメーターは、以下の表で説明されています。

表3.1 必須パラメーター

パラメーター説明

apiVersion

install-config.yaml コンテンツの API バージョン。現在のバージョンは v1 です。インストーラーは、古い API バージョンをサポートすることもできます。

文字列

baseDomain

クラウドプロバイダーのベースドメイン。ベースドメインは、OpenShift Container Platform クラスターコンポーネントへのルートを作成するために使用されます。クラスターの完全な DNS 名は、baseDomain<metadata.name>.<baseDomain> 形式を使用する metadata.name パラメーターの値の組み合わせです。

example.com などの完全修飾ドメインまたはサブドメイン名。

metadata

Kubernetes リソース ObjectMeta。ここからは name パラメーターのみが消費されます。

オブジェクト

metadata.name

クラスターの名前。クラスターの DNS レコードはすべて {{.metadata.name}}.{{.baseDomain}} のサブドメインです。

dev などの小文字、ハイフン (-)、およびピリオド (.) が含まれる文字列。

platform

インストールの実行に使用する特定プラットフォームの設定: awsbaremetalazureopenstackovirtvsphereplatform.<platform> パラメーターに関する追加情報は、以下の表で特定のプラットフォームについて参照してください。

オブジェクト

pullSecret

https://cloud.redhat.com/openshift/install/pull-secret からプルシークレットを取得し、Quay.io などのサービスから OpenShift Container Platform コンポーネントのコンテナーイメージのダウンロードを認証します。

{
   "auths":{
      "cloud.openshift.com":{
         "auth":"b3Blb=",
         "email":"you@example.com"
      },
      "quay.io":{
         "auth":"b3Blb=",
         "email":"you@example.com"
      }
   }
}
3.5.9.2.2. ネットワーク設定パラメーター

既存のネットワークインフラストラクチャーの要件に基づいて、インストール設定をカスタマイズできます。たとえば、クラスターネットワークの IP アドレスブロックを拡張するか、デフォルトとは異なる IP アドレスブロックを指定できます。

IPv4 アドレスのみがサポートされます。

表3.2 ネットワークパラメーター

パラメーター説明

networking

クラスターのネットワークの設定。

オブジェクト

注記

インストール後に networking オブジェクトで指定したパラメーターを変更することはできません。

networking.networkType

インストールするクラスターネットワークプロバイダー Container Network Interface (CNI) プラグイン。

OpenShiftSDN または OVNKubernetes のいずれか。デフォルト値は OpenShiftSDN です。

networking.clusterNetwork

Pod の IP アドレスブロック。

デフォルト値は 10.128.0.0/14 で、ホストの接頭辞は /23 です。

複数の IP アドレスブロックを指定する場合は、ブロックが重複しないようにしてください。

オブジェクトの配列。以下に例を示します。

networking:
  clusterNetwork:
  - cidr: 10.128.0.0/14
    hostPrefix: 23

networking.clusterNetwork.cidr

networking.clusterNetwork を使用する場合に必須です。IP アドレスブロック。

IPv4 ネットワーク

CIDR (Classless Inter-Domain Routing) 表記の IP アドレスブロック。IPv4 ブロックの接頭辞長は 0 から 32 の間になります。

networking.clusterNetwork.hostPrefix

それぞれの個別ノードに割り当てるサブネット接頭辞長。たとえば、hostPrefix23 に設定される場合、各ノードに指定の cidr から /23 サブネットが割り当てられます。hostPrefix 値の 23 は、510 (2^(32 - 23) - 2) Pod IP アドレスを提供します。

サブネット接頭辞。

デフォルト値は 23 です。

networking.serviceNetwork

サービスの IP アドレスブロック。デフォルト値は 172.30.0.0/16 です。

OpenShift SDN および OVN-Kubernetes ネットワークプロバイダーは、サービスネットワークの単一 IP アドレスブロックのみをサポートします。

CIDR 形式の IP アドレスブロックを持つ配列。以下に例を示します。

networking:
  serviceNetwork:
   - 172.30.0.0/16

networking.machineNetwork

マシンの IP アドレスブロック。

複数の IP アドレスブロックを指定する場合は、ブロックが重複しないようにしてください。

オブジェクトの配列。以下に例を示します。

networking:
  machineNetwork:
  - cidr: 10.0.0.0/16

networking.machineNetwork.cidr

networking.machineNetwork を使用する場合に必須です。IP アドレスブロック。libvirt 以外のすべてのプラットフォームでは、デフォルト値は 10.0.0.0/16 です。libvirt の場合、デフォルト値は 192.168.126.0/24 です。

CIDR 表記の IP ネットワークブロック。

例: 10.0.0.0/16

注記

優先される NIC が置かれている CIDR に一致する networking.machineNetwork を設定します。

3.5.9.2.3. オプションの設定パラメーター

オプションのインストール設定パラメーターは、以下の表で説明されています。

表3.3 オプションのパラメーター

パラメーター説明

additionalTrustBundle

ノードの信頼済み証明書ストアに追加される PEM でエンコードされた X.509 証明書バンドル。この信頼バンドルは、プロキシーが設定される際にも使用できます。

文字列

compute

コンピュートノードを設定するマシンの設定。

machine-pool オブジェクトの配列。詳細は、以下の Machine-pool の表を参照してください。

compute.architecture

プール内のマシンの命令セットアーキテクチャーを決定します。現時点で異種クラスターはサポートされていないため、すべてのプールが同じアーキテクチャーを指定する必要があります。有効な値は amd64 (デフォルト) です。

文字列

compute.hyperthreading

コンピュートマシンで同時マルチスレッドまたは hyperthreading を有効/無効にするかどうか。デフォルトでは、同時スレッドはマシンのコアのパフォーマンスを上げるために有効にされます。

重要

同時スレッドを無効にする場合は、容量計画においてマシンパフォーマンスの大幅な低下が考慮に入れられていることを確認します。

Enabled または Disabled

compute.name

compute を使用する場合に必須です。マシンプールの名前。

worker

compute.platform

compute を使用する場合に必須です。このパラメーターを使用して、ワーカーマシンをホストするクラウドプロバイダーを指定します。このパラメーターの値は controlPlane.platform パラメーターの値に一致する必要があります。

awsazuregcpopenstackovirtvsphere、または {}

compute.replicas

プロビジョニングするコンピュートマシン (ワーカーマシンとしても知られる) の数。

2 以上の正の整数。デフォルト値は 3 です。

controlPlane

コントロールプレーンを設定するマシンの設定。

MachinePool オブジェクトの配列。詳細は、以下の Machine-pool の表を参照してください。

controlPlane.architecture

プール内のマシンの命令セットアーキテクチャーを決定します。現時点で異種クラスターはサポートされていないため、すべてのプールが同じアーキテクチャーを指定する必要があります。有効な値は amd64 (デフォルト) です。

文字列

controlPlane.hyperthreading

コントロールプレーンマシンで同時マルチスレッドまたは hyperthreading を有効/無効にするかどうか。デフォルトでは、同時スレッドはマシンのコアのパフォーマンスを上げるために有効にされます。

重要

同時スレッドを無効にする場合は、容量計画においてマシンパフォーマンスの大幅な低下が考慮に入れられていることを確認します。

Enabled または Disabled

controlPlane.name

controlPlane を使用する場合に必須です。マシンプールの名前。

master

controlPlane.platform

controlPlane を使用する場合に必須です。このパラメーターを使用して、コントロールプレーンマシンをホストするクラウドプロバイダーを指定します。このパラメーターの値は compute.platform パラメーターの値に一致する必要があります。

awsazuregcpopenstackovirtvsphere、または {}

controlPlane.replicas

プロビジョニングするコントロールプレーンマシンの数。

サポートされる値は 3 のみです (これはデフォルト値です)。

fips

FIPS モードを有効または無効にします。デフォルトは false (無効) です。FIPS モードが有効にされている場合、OpenShift Container Platform が実行される Red Hat Enterprise Linux CoreOS (RHCOS) マシンがデフォルトの Kubernetes 暗号スイートをバイパスし、代わりに RHCOS で提供される暗号モジュールを使用します。

注記

Azure File ストレージを使用している場合、FIPS モードを有効にすることはできません。

false または true

imageContentSources

release-image コンテンツのソースおよびリポジトリー。

オブジェクトの配列。この表の以下の行で説明されているように、source およびオプションで mirrors が含まれます。

imageContentSources.source

imageContentSources を使用する場合に必須です。ユーザーが参照するリポジトリーを指定します (例: イメージプル仕様)。

文字列

imageContentSources.mirrors

同じイメージが含まれる可能性のあるリポジトリーを 1 つ以上指定します。

文字列の配列。

publish

Kubernetes API、OpenShift ルートなどのクラスターのユーザーに表示されるエンドポイントをパブリッシュまたは公開する方法。

Internal または External。デフォルト値は External です。

このパラメーターを Internal に設定することは、クラウド以外のプラットフォームではサポートされません。

重要

フィールドの値が Internal に設定されている場合、クラスターは機能しなくなります。詳細は、BZ#1953035 を参照してください。

sshKey

クラスターマシンへのアクセスを認証するための SSH キー。

注記

インストールのデバッグまたは障害復旧を実行する必要のある実稼働用の OpenShift Container Platform クラスターでは、ssh-agent プロセスが使用する SSH キーを指定します。

たとえば、sshKey: ssh-ed25519 AAAA.. です。

3.5.9.2.4. 追加の Red Hat Virtualization (RHV) 設定パラメーター

追加の RHV 設定パラメーターは以下の表で説明されています。

表3.4 クラスターの追加 RHV パラメーター

パラメーター説明

platform.ovirt.ovirt_cluster_id

必須。仮想マシンが作成されるクラスター。

文字列。例: 68833f9f-e89c-4891-b768-e2ba0815b76b

platform.ovirt.ovirt_storage_domain_id

必須。仮想マシンディスクが作成されるストレージドメイン ID。

文字列。例: ed7b0f4e-0e96-492a-8fff-279213ee1468

platform.ovirt.ovirt_network_name

必須。仮想マシン NIC が作成されるネットワーク名。

文字列。例: ocpcluster

platform.ovirt.vnicProfileID

必須。仮想マシンネットワークインターフェイスの vNIC プロファイル ID。これは、クラスターネットワークに単一のプロファイルがある場合に示唆されます。

文字列。例: 3fa86930-0be5-4052-b667-b79f0a729692

platform.ovirt.api_vip

必須。API 仮想 IP (VIP) に割り当てられるマシンネットワークの IP アドレス。このエンドポイントで OpenShift API にアクセスできます。

文字列。例: 10.46.8.230

platform.ovirt.ingress_vip

必須。Ingress 仮想 IP (VIP) に割り当てられるマシンネットワークの IP アドレス。

文字列。例: 10.46.8.232

3.5.9.2.5. マシンプールの追加 RHV パラメーター

マシンプールの追加の RHV 設定パラメーターは以下の表で説明されています。

表3.5 マシンプールの追加 RHV パラメーター

パラメーター説明

<machine-pool>.platform.ovirt.cpu

オプション。仮想マシンの CPU を定義します。

オブジェクト

<machine-pool>.platform.ovirt.cpu.cores

<machine-pool>.platform.ovirt.cpu を使用する場合に必須です。コア数。仮想 CPU (vCPU) の合計はコア * ソケットです。

整数

<machine-pool>.platform.ovirt.cpu.sockets

<machine-pool>.platform.ovirt.cpu を使用する場合に必須です。コアあたりのソケット数。仮想 CPU (vCPU) の合計はコア * ソケットです。

整数

<machine-pool>.platform.ovirt.memoryMB

オプション。仮想マシンのメモリー (MiB 単位)。

整数

<machine-pool>.platform.ovirt.instanceTypeID

オプション。00000009-0009-0009-0009-0000000000f1 などのインスタンスタイプ UUID。これは https://<engine-fqdn>/ovirt-engine/api/instancetypes エンドポイントから取得できます。

UUID の文字列

<machine-pool>.platform.ovirt.osDisk

オプション。仮想マシンの起動可能な初回の、および起動可能なディスクを定義します。

文字列

<machine-pool>.platform.ovirt.osDisk.sizeGB

<machine-pool>.platform.ovirt.osDisk を使用する場合に必須です。ディスクのサイズ (GiB 単位)。

数字

<machine-pool>.platform.ovirt.vmType

オプション。high-performanceserver、 または desktop などの仮想マシンワークロードタイプ。

文字列

注記

<machine-pool>controlPlane または compute に置き換えることができます。

3.5.10. クラスターのデプロイ

互換性のあるクラウドプラットフォームに OpenShift Container Platform をインストールできます。

重要

インストールプログラムの create cluster コマンドは、初期インストール時に 1 回だけ実行できます。

前提条件

  • インストーラーを実行するマシンから、ovirt-imageio ポートを Engine に開きます。デフォルトでは、ポートは 54322 です。
  • OpenShift Container Platform インストールプログラム、およびクラスターのプルシークレットを取得します。

手順

  1. インストールプログラムを実行します。

    $ ./openshift-install create cluster --dir=<installation_directory> \ 1
        --log-level=info 2
    1
    <installation_directory> については、カスタマイズした ./install-config.yaml ファイルの場所を指定します。
    2
    異なるインストールの詳細情報を表示するには、info ではなく、warndebug、または error を指定します。
    注記

    ホストに設定した AWS アカウントにクラスターをデプロイするための十分なパーミッションがない場合、インストールプログラムは停止し、不足しているパーミッションが表示されます。

    クラスターのデプロイメントが完了すると、Web コンソールへのリンクや kubeadmin ユーザーの認証情報を含む、クラスターにアクセスするための指示がターミナルに表示されます。

    重要

    インストールプログラムが生成する Ignition 設定ファイルには、24 時間が経過すると期限切れになり、その後に更新される証明書が含まれます。証明書を更新する前にクラスターが停止し、24 時間経過した後にクラスターを再起動すると、クラスターは期限切れの証明書を自動的に復元します。例外として、kubelet 証明書を回復するために保留状態の node-bootstrapper 証明書署名要求 (CSR) を手動で承認する必要があります。詳細は、コントロールプレーン証明書の期限切れの状態からのリカバリー についてのドキュメントを参照してください。

    重要

    インストールプログラム、またはインストールプログラムが作成するファイルを削除することはできません。これらはいずれもクラスターを削除するために必要になります。

重要

クラスターのインストールに必要な手順を完了している必要があります。残りの手順では、クラスターを検証し、インストールのトラブルシューティングを行う方法を説明します。

3.5.11. バイナリーのダウンロードによる CLI のインストール

コマンドラインインターフェイスを使用して OpenShift Container Platform と対話するために CLI (oc) をインストールすることができます。oc は Linux、Windows、または macOS にインストールできます。

重要

以前のバージョンの oc をインストールしている場合、これを使用して OpenShift Container Platform 4.5 のすべてのコマンドを実行することはできません。新規バージョンの oc をダウンロードし、インストールします。

3.5.11.1. Linux への CLI のインストール

以下の手順を使用して、OpenShift CLI (oc) バイナリーを Linux にインストールできます。

手順

  1. Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページに移動します。
  2. インフラストラクチャープロバイダーを選択し、(該当する場合は) インストールタイプを選択します。
  3. Command-line interface セクションで、ドロップダウンメニューの Linux を選択し、Download command-line tools をクリックします。
  4. アーカイブを展開します。

    $ tar xvzf <file>
  5. oc バイナリーを、PATH にあるディレクトリーに配置します。

    PATH を確認するには、以下のコマンドを実行します。

    $ echo $PATH

CLI のインストール後は、oc コマンドを使用して利用できます。

$ oc <command>

3.5.11.2. Windows での CLI のインストール

以下の手順を使用して、OpenShift CLI (oc) バイナリーを Windows にインストールできます。

手順

  1. Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページに移動します。
  2. インフラストラクチャープロバイダーを選択し、(該当する場合は) インストールタイプを選択します。
  3. Command-line interface セクションで、ドロップダウンメニューの Windows を選択し、Download command-line tools をクリックします。
  4. ZIP プログラムでアーカイブを解凍します。
  5. oc バイナリーを、PATH にあるディレクトリーに移動します。

    PATH を確認するには、コマンドプロンプトを開いて以下のコマンドを実行します。

    C:\> path

CLI のインストール後は、oc コマンドを使用して利用できます。

C:\> oc <command>

3.5.11.3. macOS への CLI のインストール

以下の手順を使用して、OpenShift CLI (oc) バイナリーを macOS にインストールできます。

手順

  1. Red Hat OpenShift Cluster Manager サイトの Infrastructure Provider ページに移動します。
  2. インフラストラクチャープロバイダーを選択し、(該当する場合は) インストールタイプを選択します。
  3. Command-line interface セクションで、ドロップダウンメニューの MacOS を選択し、Download command-line tools をクリックします。
  4. アーカイブを展開し、解凍します。
  5. oc バイナリーをパスにあるディレクトリーに移動します。

    PATH を確認するには、ターミナルを開き、以下のコマンドを実行します。

    $ echo $PATH

CLI のインストール後は、oc コマンドを使用して利用できます。

$ oc <command>

3.5.12. クラスターへのログイン

クラスター kubeconfig ファイルをエクスポートし、デフォルトシステムユーザーとしてクラスターにログインできます。kubeconfig ファイルには、クライアントを正しいクラスターおよび API サーバーに接続するために CLI で使用されるクラスターについての情報が含まれます。このファイルはクラスターに固有のファイルであり、OpenShift Container Platform のインストール時に作成されます。

前提条件

  • OpenShift Container Platform クラスターをデプロイします。
  • oc CLI をインストールします。

手順

  1. kubeadmin 認証情報をエクスポートします。

    $ export KUBECONFIG=<installation_directory>/auth/kubeconfig 1
    1
    <installation_directory> には、インストールファイルを保存したディレクトリーへのパスを指定します。
  2. エクスポートされた設定を使用して、oc コマンドを正常に実行できることを確認します。

    $ oc whoami

    出力例

    system:admin

詳細は、Getting started with the CLI を参照してください。

3.5.13. クラスターステータスの確認

インストール時またはインストール後に OpenShift Container Platform クラスターのステータスを確認することができます。

手順

  1. クラスター環境で、管理者の kubeconfig ファイルをエクスポートします。

    $ export KUBECONFIG=<installation_directory>/auth/kubeconfig 1
    1
    <installation_directory> には、インストールファイルを保存したディレクトリーへのパスを指定します。

    kubeconfig ファイルには、クライアントを正しいクラスターおよび API サーバーに接続するために CLI で使用されるクラスターについての情報が含まれます。

  2. デプロイメント後に作成されたコントロールプレーンおよびコンピュートマシンを表示します。

    $ oc get nodes
  3. クラスターのバージョンを表示します。

    $ oc get clusterversion
  4. Operator のステータスを表示します。

    $ oc get clusteroperator
  5. クラスター内のすべての実行中の Pod を表示します。

    $ oc get pods -A

トラブルシューティング

インストールが失敗すると、インストールプログラムがタイムアウトし、エラーメッセージが表示されます。詳細は、インストールに関する問題のトラブルシューティング を参照してください。

3.5.14. RHV での OpenShift Container Platform Web コンソールへのアクセス

OpenShift Container Platform クラスターの初期化後に、OpenShift Container Platform Web コンソールにログインできます。

手順

  1. オプション: Red Hat Virtualization (RHV) Administration Portal で、ComputeCluster を開きます。
  2. インストールプログラムが仮想マシンを作成することを確認します。
  3. インストールプログラムが実行されているコマンドラインに戻ります。インストールプログラムが完了すると、OpenShift Container Platform Web コンソールにログインするためのユーザー名およびパスワードの一時パスワードが表示されます。
  4. ブラウザーから OpenShift Container Platform の Web コンソールの URL を開きます。URL は以下の形式を使用します。

    console-openshift-console.apps.<clustername>.<basedomain> 1
    1
    <clustername>.<basedomain> に、クラスター名およびベースドメインを指定します。

    以下に例を示します。

    console-openshift-console.apps.my-cluster.virtlab.example.com

3.5.15. Red Hat Virtualization (RHV) へのインストールに関するよくある問題のトラブルシューティング

以下に、一般的な問題およびそれらについて考えられる原因および解決策を記載します。

3.5.15.1. CPU 負荷が増大し、ノードが Not Ready 状態になる

  • 現象: CPU 負荷が大幅に増大し、ノードが Not Ready 状態に切り替わり始める。
  • 原因: ストレージドメインのレイテンシーが高すぎる可能性があります (特にマスターノードの場合)。
  • 解決策:

    Kubelet サービスを再起動して、ノードを再度 Ready 状態にします。以下を入力します。

    $ systemctl restart kubelet

    OpenShift Container Platform メトリクスサービスを検査します。これは、etcd ディスクの同期期間などの有用なデータを収集し、これについて報告します。クラスターが機能している場合は、このデータを使用して、ストレージのレイテンシーまたはスループットが根本的な問題かどうかを判断します。その場合、レイテンシーが短く、スループットの高いストレージリソースの使用を検討してください。

    未加工メトリクスを取得するには、kubeadmin または cluster-admin 権限を持つユーザーで以下のコマンドを実行します。

    $ oc get --insecure-skip-tls-verify --server=https://localhost:<port> --raw=/metrics`

    詳細は、Exploring Application Endpoints for the purposes of Debugging with OpenShift 4.x を参照してください。

3.5.15.2. OpenShift Container Platform クラスター API に接続できない

  • 現象: インストールプログラムは完了するが、OpenShift Container Platform クラスター API は利用できない。ブートストラップの仮想マシンは、ブートストラッププロセスの完了後も起動した状態になります。以下のコマンドを入力すると、応答がタイムアウトします。

    $ oc login -u kubeadmin -p *** <apiurl>
  • 原因: ブートストラップ仮想マシンがインストールプログラムによって削除されず、クラスターの API IP アドレスをリリースしない。
  • 解決策: wait-for サブコマンドを使用して、ブートストラッププロセスの完了時に通知を受信する。

    $ ./openshift-install wait-for bootstrap-complete

    ブートストラッププロセスが完了したら、ブートストラップ仮想マシンを削除します。

    $ ./openshift-install destroy bootstrap

3.5.16. インストール後のタスク

OpenShift Container Platform クラスターの初期化後に、以下のタスクを実行できます。

  • オプション: デプロイメント後に、OpenShift Container Platform で Machine Config Operator (MCO) を使用して SSH キーを追加するか、または置き換えます。
  • オプション: kubeadmin ユーザーを削除します。代わりに、認証プロバイダーを使用して cluster-admin 権限を持つユーザーを作成します。

3.5.17. 次のステップ

3.6. RHV でのクラスターのアンインストール

OpenShift Container Platform クラスターを Red Hat Virtualization (RHV) から削除することができます。

3.6.1. インストーラーでプロビジョニングされるインフラストラクチャーを使用するクラスターの削除

インストーラーでプロビジョニングされるインフラストラクチャーを使用するクラスターは、クラウドから削除できます。

注記

アンインストール後に、とくにユーザーによってプロビジョニングされるインフラストラクチャー (UPI) クラスターで適切に削除されていないリソースがあるかどうかについて、クラウドプロバイダーを確認します。インストーラーが作成されなかったり、インストーラーがアクセスできない場合には、リソースがある可能性があります。

前提条件

  • クラスターをデプロイするために使用したインストールプログラムのコピーがあります。
  • クラスター作成時にインストールプログラムが生成したファイルがあります。

手順

  1. クラスターをインストールするために使用したコンピューターから、以下のコマンドを実行します。

    $ ./openshift-install destroy cluster \
    --dir=<installation_directory> --log-level=info 1 2
    1
    <installation_directory> には、インストールファイルを保存したディレクトリーへのパスを指定します。
    2
    異なる詳細情報を表示するには、 info ではなく、warndebug、または error を指定します。
    注記

    クラスターのクラスター定義ファイルが含まれるディレクトリーを指定する必要があります。クラスターを削除するには、インストールプログラムでこのディレクトリーにある metadata.json ファイルが必要になります。

  2. オプション: <installation_directory> ディレクトリーおよび OpenShift Container Platform インストールプログラムを削除します。