クラウド系の最新技術である コンテナの活用が広がっています。最大の特長は、オープン。どのクラウド環境やオンプレでも稼働するコンテナが構築でき、運用も楽になるところが魅力です。そのコンテナが多数になった時に運用管理を効率化できるオープンソース、Kubernetes (k8s)も同時に広がってます。コンテナとKubernetesの両方をパッケージングした製品で最もシェアの高いのは、Red Hat OpenShift Container Platform (OCP) 。その OpenShiftが無料で短時間で疑似体験学習できるとのことで、早速以下にアクセスしてみました。
最初の画面の少し下に、上のような四角いメニューが並んでいますので、その中で「Red Hat OpenShift on IBM Cloud」をクリック。すると以下のような画面が表示されます。「Red Hat OpenShift on IBM Cloud」は略して「ROKS (Red Hat OpenShiftの Kubernetes Service)」と呼ばれていますので、以降はROKSとします。
この画面の下方に以下の「Product Tours (製品ツアー)」がありますので、以下の右の「Red Hat OpenShift on IBM Cloud」部分をクリックしてください。 この体験学習ではその ROKS の新規インスタンスをプロビジョニングし、IBM Cloud ポータルを使用してインスタンスを管理する方法を学びます。また OpenShift Web コンソールを使用してアプリケーションを稼働させる手順も体験できます。
次に以下の画面が表示されるので「Start Demo Now!」ボタンをクリックすると、体験学習を始める事ができます。
最初に表示されるのは以下のようなメイン・メニュー画像です。まず右上の「Provision OpenShift」ボタンをクリックしてみましょう。
すると、実際の IBM Cloudと同じログイン画面が表示されるので、そのまま「Continue」をクリックし続けます。これでIBM Cloudにログインした形になります。(この体験学習の画面は英語になっていますが、実際のIBM Cloudに自分のIDでログインすると日本語で表示されます)
次に以下の「ダッシュボード」が表示されます。リソースとして今いくつのクラスターやサービスが立ち上がっているか、いくら位の金額を使っているかのUsageなどが確認できます。ここで右上の「Create resource」をクリックし立ち上げるサーバー・リソースを定義しましょう。
ここで表示される以下の「カタログ」の中から、もちろん「Red Hat OpenShift Cluster」をクリックしましょう。
以下の画面が表示されるので右上か右下の「Create」をクリックし、サーバーを作成しましょう。(どこかをクリックすると、次にクリックして欲しい場所の色が変わります)
すると以下のように、複数サーバーのクラスター構成を選択する画面が表示されます。初期設定は複数データセンターにまたがった高可用性構成になる「Multi-zone」でサーバーの場所は「North America」の「Dallas」のDallas 10データセンター、12データセンター、13データセンターの3つに同時にサーバーを立ち上げる構成になっています。ここで例えば「Multi-zone」を「Single-zone」に変えたり「Multi-zone」に戻したり、「Dallas」を「Washington DC」に変更したりできますのでクリックしてみます。
次に、インターネットなどの接続先であるMaster service endpointも「Both private & public endpoint (外部アクセス不可のPrivateもインターネットからアクセスできるPublicも両方可)」 などに変えてみます。最終的に以下のようにサーバー構成と金額が表示されますが、この体験学習では課金されませんので(笑)安心して「Create Cluster」をクリックしてサーバーを起動してください。
少し待つと以下の画面が表示されクラスター環境の構成が完了です。これだけの設定で、3つのデータセンター(ゾーン)にそれぞれ、3つのコンテナ実行サーバーであるワーカーノードが稼働し、合計9サーバー使えるようになります。それらが裏で稼働するOpenShiftの管理サーバーで管理されている状態です。真ん中の「Return to main menu」で元のメニュー画像に戻ってください。
メイン・メニュー画像に戻り、右真ん中の「Manage OpenShift」をクリックし上と同様にアクセスすると、以下の「OpenShift Web Console」が表示されます。「Overview」タブで、ClusterのIDや、置かれている複数ゾーン、正常かどうか、CPU/メモリー使用率などが表示されます。「Worker Nodes」タブでは各ワーカーノードの状態リストが表示されます。「Worker Pools」タブでは「Resize worker pool」で容易にワーカーノード数を3から4などに増強する事ができます。「DevOps」タブでは、(ここでは実行できませんが)開発からサーバー運用までをツールでスムーズに実行できるツールチェーンを起動できることも分かります。
再びメイン・メニュー画像に戻り「Deploy an Application」をクリックすると先ほどのOpenShift Web Console が表示されます。そこで「カタログ」を表示すると、下のような「OpenShift Container Platform (OCP)」カタログが表示されます。右上の「Create Project」でプロジェクトをCreateすると右に「myproject」が作成されます。
その myproject をクリックすると、以下のように OCPのアプリケーション・コンソールになります。そこで「Deploy Image」をクリックします。
すると以下の画面になるので「Image Name」をクリックし「コンテナ・イメージ」である、openshiftroadshow/parksmap…. を検索・特定した上で「Deploy」ボタンで起動します。ここでは事前にアプリを開発し、ミドルウェアなどと一緒に openshiftroadshow/parksmap…. という名称のコンテナのイメージをあらかじめ作成していたという設定です。
以下の画面が表示され、イメージがワーカーノードにデプロイされ稼働できたことが確認できます。右の円のあたりをクリックすると、podの内容も確認できます。
最後は Map Visualizer というアプリが以下のように動きましたね、という画面が表示され、体験学習完了です。
最後までお付き合いいただけた皆さん、いかがでしたでしょうか?Red Hat OpenShift とそのアプリを IBM Cloudで動かす手順が良く分かりましたよね。
「Red Hat OpenShift on IBM Cloud (ROKS)」はクラウド側がOpenShiftの管理ノードとそれにひも付く各ワーカーノードを管理してくれるいわゆる「マネージド」のサービスであり、上のようにいくつかのボタンのクリックだけで稼働させることができるためすぐに使う事ができます。これがクラウド上のマネージドでなければ、自分でサーバーを購入し、LinuxやOpenShiftを導入し、その上でアプリのイメージを稼働させ・・と動くまでにかなり時間を要してしまいます。スピードが大事なデジタル時代のアプリには、これからは ROKSが必須ですね!
では、いよいよ次は、実際に自分の IBM Cloud アカウントでも無料で OpenShiftを動かしてみましょう。