More Related Content Similar to Openshift 20200109 (20) More from Yasushi Osonoi (17) Openshift 202001096. ⽬次
1. What is Containers (コンテナ)?
2. What is Kubernetes?
3. What is OpenShift?
4. KubernetesとOpenShiftの違い
5. ワークショップ: OpenShift⼊⾨
7. 1. What is Containers (コンテナ)?
https://developer.ibm.com/jp/new-builders/containerization/
16. 2. What is Kubernetes?
https://developer.ibm.com/jp/new-builders/kubernetes/
17. 2. What is Kubernetes?
https://youtu.be/zGXYRQ-8pU0
23. © 2019 IBM Corporation
OpenShiftは、Kubernetesとの互換性を維持しながら、CICD機能を強化、開発者
に代わって、ビルド、リポジトリ登録、デプロイを⾃動実⾏します。
OPENSHIFT
機能拡張
OpenShift CICD利⽤
アプリケーション
(コンテナ)
Kubernetes
アプリケーション
(コンテナ)
Ubuntu / CentOS… Linux
Kubernetes
アプリケーション
(コンテナ)
コンテナ ランタイム
Linux OS
コンテナ
オーケストレーション
Kubernetesの標準機能
で構築したアプリケーション
どちらでも
動作可能
RHEL / RHCOS
コンテナ ランタイム
OpenShiftのまとめ
24. Red Hat OpenShift on IBM Cloud
IBM Cloud™上のRedHat®OpenShift®は、⾼度にスケーラブルで信頼性の⾼いIBM
Cloudプラットフォームで完全に管理されたOpenShiftクラスターを提供する包括的な
サービスです。 The WeatherCompany®で毎⽇2,500億のオンデマンド予測を維持す
るKubernetesサービスに直接統合されています。
27. 4-1. OpenShift+AI ワークショップ
IBM Watson Visual Recognitionを使った
node.jsの画像認識Webアプリ
をOpenShift on IBM Cloudで実⾏する
【ワークショップ完了後のアプリ画面イメージ】
本⽇はこちらを
操作してみましょう
28. 今回使⽤するIBM Watson API – Visual Recognition 2019年3⽉現在
Watson Assistant
アプリケーションに⾃然⾔語インターフェースを追加して
エンドユーザとのやり取りを⾃動化
Text to Speech
テキスト⽂章を⾳声に変換する
Speech to Text
⾳声をテキスト⽂章に変換する
Visual Recognition
画像コンテンツに含まれる意味を検出する
Discovery
先進的な洞察エンジンを利⽤して、デー
タの隠れた価値を解明し、回答やトレン
ドを発⾒する
Discovery News
Discovery上に実装され、エンリッチ情報
も付加されたニュースに関する公開デー
タセット
Personality Insights
テキストから筆者の性格を推定する
Language Translator
テキストを他⾔語へ翻訳を⾏う
Natural Language Understanding
⾃然⾔語処理を通じてキーワード抽出、エン
ティティー抽出、概念タグ付け、関係抽出な
どを⾏う
Natural Language Classifier
テキスト⽂章の分類を⾏う(質問の意図推定など)
Tone Analyzer(⽇本語未対応)
テキストから筆者の感情、社交性、⽂体を解析
Knowledge Studio
コーディングなしに、業務知識から⽣成した
機械学習モデルで、⾮構造テキストデータか
ら洞察を取得(学習⽀援ツール)
⼼理系
⾔語系
照会応答系
知識探索系
⾳声系
画像系
https://www.ibm.com/watson/jp-ja/developercloud/services-catalog.html
29. Watson Visual Recognition (画像認識)
画像認識「⼀般種別」(General Tagging):
• 事前学習済みの分類器の出⼒を返す
画像認識「カスタム」:
• 識別を⾏いたいクラスのイメージを事前学習させ、
その分類器の出⼒を返す
事前学習
不要
事前学習
必要
https://www.ibm.com/watson/jp-ja/developercloud/visual-recognition.html
画像に写った物体・情景など様々なものを分析・認識するAIサービス
30. 本日の IBM Cloud Lab Key
Lab Key (⼿順1.2)
oslab
Passcode (⼿順2.1)
ikslab
31. 操作の流れ
1. ワークショップ⽤の環境へのIBM Cloud ID関連付け
2. OpenShiftをコマンド実⾏できる環境の準備
3. Visual Recognitionサービスの作成
4. 資格情報のダウンロード
5. 資格情報のアップロード
6. 資格情報の編集
7. OpenShiftアプリの作成
32. 1. ワークショップ⽤のIBM Cloud環境にご⾃⾝の
IBM Cloud IDを関連付ける
注意事項
・ブラウザはFirefoxをご利⽤ください
・本ワークショップ⽤のIBM Cloud環境はセミナー開催⽇を
含めて約3⽇間限定でお使いいただけます
・IBM Cloud上で継続的にOpenShiftを検証する環境が
必要な場合は、5-1. OpenShiftをご利⽤ください
・ローカルでOpenShiftを検証する環境を構築されたい場合
は、
41. 2.2: IBM Cloud Shell for Workshopサイトの右上の
アカウント情報の v をクリックして[xxxxxxx - IBM]
を選択する
44. 3. Visual Recognitionサービスの作成
Visual Recognitionを新規に作成する⽅は次のページに進んでください。
既に以前に作成済みの⽅は、作成済みのものが使⽤できます。
作成済みの⽅は以下の⼿順でVisual Recognitionの管理の画⾯を表⽰して
http://ibm.biz/watson-service-screen
「4. Visual Recognitionサービスibm-credentials.env のダウンロード」まで進んでください。
ブラウザー上で、新しいタブを開きます。
https://cloud.ibm.com/ にアクセスして、ダッシュボードを開きます。
1840867-IBMではなく⾃分のアカウントになっていることを確認し、異なって
いる場合はクリックして変更します
53. 6. ibm-credentials.env コピーと編集
6.1. ibm-credentials.env をコピー
cp ibm-credentials.env ibm-credentials.env.nodevr
ターミナルに下記コマンドを⼊⼒。
出⼒例:
6.2. ibm-credentials.env.nodevr の権限変更
chmod o+r ibm-credentials.env.nodevr
ターミナルに下記コマンドを⼊⼒。
出⼒例:
58. 7.1. プロジェクトを作成する
oc new-project watson-vr --display-name="watson-vr" --
description="Sample Watson Visual Recognition Node.js app"
ターミナルに下記コマンドを⼊⼒し、新しいアプリケーション⽤に新しい
プロジェクトを作成します。
(コマンドは1⾏です)
7. Openshift アプリの作成
出⼒例:
64. 7.3 ビルドログを表⽰します
oc logs -f bc/watson-vr-node
ターミナルに下記のコマンドを⼊⼒しビルドログを表⽰し、「 Push
successful 」で終わるまで待ちます。
7.4 ロードバランサーのサービスを作成します
oc expose dc watson-vr-node --port=3000 --type=LoadBalancer --
name=watson-vr-node-ingress
ターミナルに下記のコマンドを⼊⼒し実⾏します。(コマンドは1⾏です)
7. OpenShiftアプリの作成
66. 7.5. ロードバランサーのサービスを公開します
oc expose service watson-vr-node-ingress
ターミナルに下記のコマンドを⼊⼒し実⾏します。
7. OpenShiftアプリの作成
これで完了です!ターミナルに下記のコマンドを⼊⼒し実⾏し、その結果を
参照して、OpenShift で実⾏されているアプリケーションにアクセスでき
ます。
oc get route/watson-vr-node-ingress
NAME HOST/PORT PATH SERVICES PORT TERMINATION
WILDCARD
watson-vr-node-ingress watson-vr-node-ingress-watson-vr.openshifttokyo17-0e3e0ef4c9c6d831e8aa6fe01f33bfc4-0002.jp-
tok.containers.appdomain.cloud watson-vr-node-ingress 3000 None
以下のような出⼒があった場合は、
watson-vr-node-ingress-watson-vr.openshifttokyo17-0e3e0ef4c9c6d831e8aa6fe01f33bfc4-0002.jp-
tok.containers.appdomain.cloud にブラウザでアクセスします。
70. 5-1. コンテナーイメージからのデプロイ
• Web コンソールからアプリのデプロイをしてみましょう。
右上のメニューから Add to Project -> Deploy Image を選択してください。
https://hub.docker.com/r/openshiftkatacoda/blog-django-py/
74. 5-2. ソースコードからのデプロイ
• Web コンソールからアプリのデプロイをしてみましょう。
右上のメニューから Add to Project -> Brawse Catalog を選択してくださ
い。
https://github.com/openshift-katacoda/blog-django-py
76. 5-2. ソースコードからのデプロイ
• Web コンソールからアプリのデプロイをしてみましょう。
①Django-pyと入力
② https://github.com/openshift-katacoda/blog-django-py
② Createをクリック
79. 5-2. 追加ハンズオン
• Web UIからアプリのデプロイをしてみましょう。
• https://github.com/osonoi/minishift/tree/master/lab1
80. • Rubyプロジェクト
• oc new-app https://github.com/sclorg/ruby-ex
• oc expose dc ruby-ex --type=LoadBalancer --name=ruby-ex-ingress
• oc get --export svc ruby-ex-ingress
5-3. 追加ハンズオン
https://github.com/sclorg/rails-ex
http://rails-postgresql-example-myproject.192.168.99.112.nip.io/
81. • Railsプロジェクト
• git clone https://github.com/osonoi/rails-ex.git
• cd rails-ex/
• oc new-app openshift/templates/rails-postgresql.json -p
SOURCE_REPOSITORY_URL=https://github.com/osonoi/rails-ex
• oc start-build rails-postgresql-example
• oc get pods –w
• (数分待つ)
5-3. 追加ハンズオン
https://github.com/sclorg/ruby-ex
http://rails-postgresql-example-myproject.192.168.99.112.nip.io/
このIPアドレスは環境により異なります。
82. 5-3. 追加ハンズオン
• RedHat Japanのハンズオントレーニング ⽇本語訳
様々なデプロイメント⼿法:
https://github.com/osonoi/minishift/tree/master/lab2
(Blue Green Deployment, Canary Deployment,
Roling Update)
• Node-RED on Minishift
https://github.com/yamachan/node-red-workshop-
starter/blob/japanese-readme/README-ja.md