2.2. Kubernetes を使用した OSToy アプリケーションのデプロイ
アプリケーションをデプロイするには、コンテナーイメージを作成し、それをイメージリポジトリーに保存して、そのイメージを使用する Deployment オブジェクトを定義する必要があります。
アプリケーションのデプロイには次の手順が必要です。
- フロントエンドとバックエンドのマイクロサービスコンテナーのイメージを作成する
- コンテナーイメージをイメージリポジトリーに保存する
- アプリケーションの Kubernetes Deployment オブジェクトを作成する
- アプリケーションのデプロイ
このワークショップでは、アプリケーションのデプロイに焦点を当てており、既存のイメージを使用するリモートファイルを実行していただきます。
2.2.1. ログインコマンドの取得 リンクのコピーリンクがクリップボードにコピーされました!
手順
次のコマンドを実行して、コマンドラインインターフェイス (CLI) にログインしていることを確認します。
rosa whoami
rosa whoami
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コマンドラインインターフェイスにログインしている場合は、「新しいプロジェクトの作成」に進んでください。コマンドラインインターフェイスにログインしていない場合は、この手順を続行します。
- Web コンソールを使用してクラスターにアクセスします。
右上隅のログイン名の横にあるドロップダウン矢印をクリックし、Copy Login Command を選択します。
新しいタブが開きます。
- 認証方法を選択します。
- Display Token をクリックします。
- Log in with this token の下のコマンドをコピーします。
ターミナルから、コピーしたコマンドを貼り付けて実行します。ログインに成功すると、次の確認メッセージが表示されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.2. 新しいプロジェクトの作成 リンクのコピーリンクがクリップボードにコピーされました!
任意のインターフェイスを使用して新しいプロジェクトを作成します。
2.2.2.1. CLI を使用した新しいプロジェクトの作成 リンクのコピーリンクがクリップボードにコピーされました!
手順
以下のコマンドを実行して、クラスターに
ostoy
という名前の新規プロジェクトを作成します。oc new-project ostoy
$ oc new-project ostoy
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Now using project "ostoy" on server "https://api.myrosacluster.abcd.p1.openshiftapps.com:6443".
Now using project "ostoy" on server "https://api.myrosacluster.abcd.p1.openshiftapps.com:6443".
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 次のコマンドを実行して、一意のプロジェクト名を作成します。
oc new-project ostoy-$(uuidgen | cut -d - -f 2 | tr '[:upper:]' '[:lower:]')
$ oc new-project ostoy-$(uuidgen | cut -d - -f 2 | tr '[:upper:]' '[:lower:]')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.2.2. Web コンソールを使用した新しいプロジェクトの作成 リンクのコピーリンクがクリップボードにコピーされました!
手順
-
Web コンソールから、Home
Projects をクリックします。 Projects ページで Create Project をクリックします。
- Create Project ボックスで、Name フィールドにプロジェクト名を入力します。
- Create をクリックします。
2.2.3. バックエンドマイクロサービスのデプロイ リンクのコピーリンクがクリップボードにコピーされました!
マイクロサービスは内部 Web リクエストを処理し、現在のホスト名とランダムに生成された色の文字列を含む JSON オブジェクトを返します。
手順
次のコマンドを実行してマイクロサービスをデプロイします。
oc apply -f https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/yaml/ostoy-microservice-deployment.yaml
$ oc apply -f https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/yaml/ostoy-microservice-deployment.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
oc apply -f https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/yaml/ostoy-microservice-deployment.yaml
$ oc apply -f https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/yaml/ostoy-microservice-deployment.yaml deployment.apps/ostoy-microservice created service/ostoy-microservice-svc created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.4. フロントエンドマイクロサービスのデプロイ リンクのコピーリンクがクリップボードにコピーされました!
フロントエンドデプロイメントでは、アプリケーションと追加の Kubernetes オブジェクトに Node.js フロントエンドを使用します。
フロントエンドデプロイメントでは、次の機能を定義します。
- 永続ボリューム要求
- Deployment オブジェクト
- サービス
- ルート
- ConfigMap
- シークレット
手順
次のコマンドを実行して、アプリケーションのフロントエンドをデプロイし、オブジェクトを作成します。
oc apply -f https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/yaml/ostoy-frontend-deployment.yaml
$ oc apply -f https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/yaml/ostoy-frontend-deployment.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow すべてのオブジェクトが正常に作成されるはずです。
2.2.5. アプリケーションへのルートの取得 リンクのコピーリンクがクリップボードにコピーされました!
アプリケーションにアクセスするためのルートを取得します。
手順
次のコマンドを実行して、アプリケーションへのルートを取得します。
oc get route
$ oc get route
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD ostoy-route ostoy-route-ostoy.apps.<your-rosa-cluster>.abcd.p1.openshiftapps.com ostoy-frontend-svc <all> None
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD ostoy-route ostoy-route-ostoy.apps.<your-rosa-cluster>.abcd.p1.openshiftapps.com ostoy-frontend-svc <all> None
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.6. アプリケーションの表示 リンクのコピーリンクがクリップボードにコピーされました!
手順
-
前の手順で出力された
ostoy-route-ostoy.apps.<your-rosa-cluster>.abcd.p1.openshiftapps.com
URL をコピーします。 コピーした URL を Web ブラウザーに貼り付けて Enter キーを押します。アプリケーションのホームページが表示されます。ページが読み込まれない場合は、
https
ではなくhttp
を使用していることを確認してください。