コンテナ技術とKubernetesを基盤としたアプリケーション開発は急速に普及し、その中でもエンタープライズ向けのプラットフォームとしてOpenShiftが注目されていますが、最小構成を構築する場合もそこそこ良いスペックのノードが複数必要となり、気軽に試すには少々ハードルが高いと思います。
そんな方におすすめなのが「Red Hat OpenShift Local」というものです。これは、1台のサーバ上でOpenShiftクラスタを手軽に動作させることができる開発・検証向けの環境であり、OpenShiftの機能や操作感を再現できます。
本記事では、OpenShift Localを実際にセットアップし、基本的な動作確認やWebコンソールへのアクセス方法、OpenShiftクラスタの停止方法を紹介します。これからOpenShiftに触れてみたい方や、検証環境を手軽に構築したい方の参考になれば幸いです。
サーバ要件
OpenShift Localを試すサーバの要件を記載します。本記事ではRHEL 9を使用してOpenShift Localを構築します。
- OS: Linux, macOS, Windows
- 最小スペック(プリセット:
openshiftの場合)
OpenShift LocalのCLIツールのダウンロード
はじめにRed Hat Customer Portal(https://access.redhat.com)にアクセスし、OpenShift LocalのCLIツール crcを取得します。Red Hatアカウントが無い場合は作成してください。
Customer Portalにログイン後、画面上部にある[Red Hat Console]をクリックします。その後、Red Hat Hybrid Cloud Console上に表示されているRed Hat OpenShiftを選択します。
OpenShiftクラスタの種類を選択する画面で、Red Hat OpenShift Container Platformの[Create cluster]をクリックします。

OpenShift LocalのCLIツールおよびプルシークレットをダウンロードします。プルシークレットとは、コンテナイメージをダウンロードするための認証情報で、CLIツールを用いた後述の作業で必要になります。

OpenShift Localの構築
次に、ダウンロードしたCLIツールとプルシークレットを使用して、OpenShift Localを構築します。
CLIツール(本記事ではcrc-linux-amd64.tar.xz)とプルシークレット(pull-secret.txt)をインストール先サーバの任意のディレクトリ(本記事では~/ocp)に格納し、CLIツールを含む圧縮ファイルを解凍します。
|
1 2 3 4 5 |
$ cd ~/ocp $ tar xvf crc-linux-amd64.tar.xz crc-linux-2.60.1-amd64/ crc-linux-2.60.1-amd64/LICENSE crc-linux-2.60.1-amd64/crc |
OpenShift LocalのCLIツールcrcが展開されるのでPATHを通します。本記事では、crcを/usr/local/bin/にコピーすることでPATHを通しています。
|
1 2 3 |
$ sudo cp crc-linux-2.60.1-amd64/crc /usr/local/bin/ $ which crc /usr/local/bin/crc |
crcコマンドが動作するかバージョンを確認してみます。
|
1 2 3 4 |
$ crc version CRC version: 2.60.1+701ff9 OpenShift version: 4.21.8 MicroShift version: 4.21.0 |
crcコマンドの準備ができたので、次にプリセットをopenshiftに設定後、OpenShift Localを構築・起動します。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
$ crc config set preset openshift $ crc setup # Initialize environment for cluster $ crc start --pull-secret-file pull-secret.txt # Start the cluster INFO Using bundle path /home/ocpuser/.crc/cache/crc_libvirt_4.21.8_amd64.crcbundle INFO Checking if running as non-root INFO Checking if running inside WSL2 ...(省略)... INFO Operators are stable (3/3)... INFO Waiting until the user's pull secret is written to the instance disk... INFO Adding crc-admin and crc-developer contexts to kubeconfig... Started the OpenShift cluster. The server is accessible via web console at: https://console-openshift-console.apps-crc.testing Log in as administrator: Username: kubeadmin Password: im3zx-UpP5X-DYWTY-VXQ8z Log in as user: Username: developer Password: developer Use the 'oc' command line interface: $ eval $(crc oc-env) $ oc login -u developer https://api.crc.testing:6443 |
crc statusコマンドを実行し、ステータスを確認します。
|
1 2 3 4 5 6 7 |
$ crc status CRC VM: Running OpenShift: Running (v4.21.8) RAM Usage: 6.269GB of 10.95GB Disk Usage: 26.89GB of 32.68GB (Inside the CRC VM) Cache Usage: 31.52GB Cache Directory: /home/ocpuser/.crc/cache |
CRC VMとはOpenShiftクラスタが動いている仮想マシンのことです。つまり、crc startコマンドによってRHEL 9の上にCRC VMが作成され、その中でOpenShift Localが動いている状況です。
Webコンソールにアクセス
前章の最後に実行したcrc startコマンドの実行結果に記載されているURLhttps://console-openshift-console.apps-crc.testingにアクセスすると、OpenShiftのWebコンソールにログインできます(ログイン情報はcrc startコマンドの実行結果にUsername/Passwordが記載されています)。

別の端末からアクセスしたい場合
本記事を作成するにあたって、OpenShift Localの構築用にRHEL 9(非GUIサーバ)を使用しています。この場合、インストール先からブラウザアクセスができないため、別のWindows端末からアクセスすることにします。ただし、アクセスするためには追加設定が必要です。設定方法はいくつかありますが、ここでは手軽にhostsファイルを編集し名前解決することで対応します。
メモ帳を管理者として実行し、C:\Windows\System32\drivers\etc\hostsを開き、以下の記述を追記します(xxx.yyy.zzz.wwwはRHEL 9のIPアドレス)。
|
1 2 3 |
xxx.yyy.zzz.www console-openshift-console.apps-crc.testing # ブラウザからアクセスするWebコンソールのURL xxx.yyy.zzz.www oauth-openshift.apps-crc.testing # Webコンソールアクセス時にリダイレクトされるログイン(認証)用エンドポイント xxx.yyy.zzz.www api.crc.testing # 今回は不要だがWindows経由でOpenShift APIを使う場合は必要 |
RHEL 9のファイアウォール設定でhttpsが許可されていない場合は許可します。
|
1 2 3 |
sudo firewall-cmd --list-all # 確認 sudo firewall-cmd --add-service=https --permanent # 許可 sudo firewall-cmd --reload # 設定反映 |
ocコマンドを使ってみる
ocコマンドは、OCPクラスタの操作やアプリのデプロイ、管理を行うためのCLIツールです。ここでは基本コマンドの一部を紹介します。
ocコマンドへのパスを通す
crcコマンドと同様、デフォルトではPATHが通っていないため、はじめにPATHを通します。
以下、crc startコマンドの実行結果に記載されている手順を参考に作業を進めます。
|
1 2 3 |
$ eval $(crc oc-env) $ which oc # PATHが通っていることを確認 ~/.crc/bin/oc/oc |
OpenShiftクラスタの認証
oc loginコマンドを実行すると、OpenShiftクラスタへAPIアクセスするための認証トークンを取得します。
|
1 2 3 4 5 6 |
$ oc login -u developer https://api.crc.testing:6443 Logged into "https://api.crc.testing:6443" as "developer" using existing credentials. You don't have any projects. You can try to create a new project, by running oc new-project <projectname> |
現在のユーザを表示すると、認証できていることが確認できます。
|
1 2 |
$ oc whoami developer |
OpenShift Localの停止
OpenShift Localを停止させたい場合は、crc stopコマンドを実行します。本コマンドにより、OpenShiftクラスタ、CRC VMの順に停止され、CPU/メモリが解放されます。
|
1 2 3 |
$ crc stop INFO Stopping the instance, this may take a few minutes... Stopped the instance |
crc statusコマンドを実行し、リソースが停止したことを確認します。
|
1 2 3 4 5 6 |
$ crc status CRC VM: Stopped OpenShift: Stopped (v4.21.8) Disk Usage: 0B of 0B (Inside the CRC VM) Cache Usage: 31.52GB Cache Directory: /home/ocpuser/.crc/cache |
以上、ここまで。

