最近、私の周りでは OpenShift が話題ですが、規模が大きいこともあって、まだ実際に触った経験がありません。
1台のマシン上で Kubenetes を体験できる Minikube という環境があるのですが、この環境の応用で Minishift という環境の存在を教えてもらったので、以下のスペックしかないボロWin7機にインストールして体験してみました。
CPU: Intel Core i5-5300U 2Core 2.3GHz
RAM: 8GB
OS: Windows7 Pro 64bit
VM: Oracle VM VirtualBox 6.0.10
なおもう一台、同じようにテストしたデスクトップ機がこちら。CPU も違いますが、やはりメモリに余裕があるのが大きな差となっていて、こちらは他のソフトと併用しつつ普通に使える感じです。
CPU: Intel Core i7-4790 4Core 3.6GHz
RAM: 16GB
OS: Windows10 Pro 64bit
VM: Oracle VM VirtualBox 6.0.10 (Hyper-V 無効化)
インストールしよう
Installing Minishift ページを参照して Minishift ツールを設定します。以下が手動インストールの手順。
- ご使用のオペレーティングシステム用のアーカイブを Minishiftリリースページ からダウンロードし、7zip などのソフトで解凍します。
- ディレクトリの内容を好みの場所にコピーします。
- PATH環境変数に Minishift バイナリを追加します。
私は 1. で minishift-1.34.1-windows-amd64.zip というファイルをダウンロードしました。2. は c:\minishift
フォルダに解凍した内容をコピーし、またそのフォルダ内で作業するため 3. は実施しません。
インストール後はこんな感じで、ファイル3つしか無いのがシンプルですね。
コマンドプロンプトではこんな感じ。今回はPATH環境変数を設定していませんから、フォルダ内に移動してから各種操作を実施します。
利用を開始しよう
Minishift Quickstart の Starting Minishift セクションを実行します。
環境を構築しよう、といっても簡単です。さきほどのコマンドプロンプトから、以下のコマンドを実行するだけです。
minishift start --vm-driver=virtualbox
最初の実行では、途中でディスクイメージのダウンロードなどが入り、10~20分ほどかかりますので、時間に余裕のある時に実施しましょう。
ただし上記のまま実行すると、仮想環境がメモリ 4GB、ディスク 20GB のサイズで作成されます。私のボロWin7機は実メモリ8GBしかありませんから、その半分を費やすことになります。私はマシンをいったん再起動し、他のソフトは起動しない空きメモリに余裕のある状態で、上記のコマンドを実行しました。
minishift start -h
コマンドでヘルプを表示させてみると、仮想マシンのメモリ容量は --memory
オプションで指定できるようなので、ちょっと試すだけであれば --memory 3GB
と減らしてもよいかもしれません。また逆にヘビーに使いたい場合は増やし、ディスク容量も --disk-size
オプションで変更しておくのも良いでしょう。
とりあえず今回の記事では、上記の標準設定 (4GB,20GB) で進めていきます。
準備が完了
以下のような感じで start
コマンドが終了すれば、準備はほぼ完了です。
表示された URL (今回は https://192.168.99.100:8443/console) にブラウザでアクセスしてみましょう。
以下のようなセキュリティ警告(Chromeの場合)が表示される場合がありますが、[詳細設定]をクリックして表示されるリンクからアクセスします。
ログイン画面が表示されるので、Username に developer
、Password には適当な値を入力して [Log In] します。
OpenShift の管理画面にアクセスできました。無事にサービスが開始できているようです。
この段階でボロWin7機のメモリ使用状況は85%程度。他に重いアプリを起動したり、ブラウザのタブを開きすぎたりしなければ、このまま問題なく利用できそうです。OpenShift 環境自体は VirtualBox 上の仮想環境で動作していて、メモリ容量などは標準値のままにしてありますからね。
さて、コマンドプロンプトのほうも準備を完了しておきましょう。以下のコマンドを実行し、表示されたパス設定を(コピペで)実行します。
minishift oc-env
以下のような感じ。
これで OpenShift の管理コマンドである oc
にパスが通りましたので、oc コマンドで現在の状態を確認しておきましょう。
oc version
oc status
oc get pods
アプリを作成してみよう
Minishift Quickstart の Deploying a Sample Application セクションを実行します。
まずは GitHub にある nodejs-ex リポジトリをベースとしてアプリを新規作成します。
oc new-app https://github.com/sclorg/nodejs-ex -l name=myapp
oc logs -f bc/nodejs-ex
oc expose svc/nodejs-ex
minishift openshift service nodejs-ex --in-browser
無事に Node.js アプリが起動しており、ブラウザでアクセスができました。表示された画面には今後のアドバイスが表示されていますので、この先を体験したい方は読んでみてください(私も近いうちにチャレンジしたいと思います)。
最後にコマンドプロンプト上で、oc get pods
を再度実行して、OpenShift 環境の状況を確認しておきましょう。
また Web コンソールのほうでも、追加したアプリの情報を参照できますので、いろいろ眺めてみてください。
利用を終了しよう
おつかれさまでした。以下のコマンドを実行すると、仮想環境などがクローズされ、Minishift の利用を終了することができます。
minishift stop
後日の再開は、コマンドプロンプトを開いて c:\minishift
フォルダに移動し、以下の開始コマンドから始めればokです。必要なファイルはダウンロード済みなので、前回ほどは時間がかからず起動するはず。
minishift start --vm-driver=virtualbox
そして今後の利用が不要の場合は、以下のコマンドで環境を削除することができます。プロファイルもあわせて削除しておくと良いでしょう。
minishift delete --force
minishift profile delete PROFILE_NAME
PROFILE_NAME
はデフォルトだと minishift ですが、念のため minishift profile list
コマンドで確認できます。
補足情報
今回は仮想環境として VirtualBox を使用しましたが、OpenShift 実行中に VirtualBox を起動すると参照できる仮想マシンの設定がコチラ。
光学ドライブに Docker Toolbox などでお馴染みの boot2docker.iso が設定されていたり、やっぱり c:\Users
を共有していてドキドキしたり、仮想マシンの情報がホームディレクトリの .minishift 配下に保存されていたり、いろいろ興味深いです。
というわけで
メモリ8GBしかない Windows7 機、という限定された環境で、Mini ですが OpenShift 環境を構築し、体験することができました。
同等以上のスペックがあれば、皆さまのマシンでも実行可能だと思われますので、興味のある方はぜひトライしてみてください。
それではまた!