Upgrade to Pro — share decks privately, control downloads, hide ads and more …

冬のIBM Dojo #3 OpenShift 入門 ~Watson を使ったWebアプリを試そう~ / IBM Dojo OpenShift 20200129

Aya Tokura
January 29, 2020

冬のIBM Dojo #3 OpenShift 入門 ~Watson を使ったWebアプリを試そう~ / IBM Dojo OpenShift 20200129

■冬のIBM Dojo #3 OpenShift 入門 ~Watson を使ったWebアプリを試そう~
https://ibm-developer.connpass.com/event/159764/
本イベントのプレゼンおよびワークショップ資料です。
・IBM Cloudライトアカウント作成およびログインURL
https://ibm.biz/dojo20200129

Aya Tokura

January 29, 2020
Tweet

More Decks by Aya Tokura

Other Decks in Technology

Transcript

  1. ȧ~IBM Dojo #3
    OpenShift ñƲ SWatson “ūvsWeb–ÁѓƌraS
    Aya Tokura
    Developer Advocate
    Tokyo City Team

    View Slide

  2. 事前準備まだお済みでない⽅
    1. IBM Cloudアカウント(無料)の取得
    ☆操作解説動画: https://ibm.biz/action1
    2. IBM Cloud 従量課⾦アカウントへのアップグレード
    (オプション)
    ☆操作解説動画: https://ibm.biz/action2
    ※ ワークショップでは無料枠内で作業します。
    従って、今回の有償アカウントへのアップグレードや、ワークショップに参加によって
    利⽤料⾦が請求されることはありません

    View Slide

  3. 本⽇のタイムテーブル
    14:00-14:05
    (5min)
    オープニング
    14:05-15:00
    (55min)
    OpenShift概要
    ⽇本アイ・ビー・エム株式会社
    デベロッパーアドボケイト
    ⼾倉 彩
    15:00-17:00
    (120min)
    OpenShiftワークショップ
    ⽇本アイ・ビー・エム株式会社
    デベロッパーアドボケイト
    ⼾倉 彩
    ⻄⼾ 京⼦
    17:00-17:30
    (30min)
    クロージング

    View Slide

  4. 学習の⽬的とゴール
    ⽬的
    OpenShift概要について理解する
    ゴール
    AIを組み込んだWebアプリをOpenShiftで動かす
    このコースを学ぶ⽅の想定スキル
    コンテナ実⾏環境を初めて利⽤する⽅

    View Slide

  5. ayatokura
    ƕȄ Ⱥ (Aya Tokura)
    IBM Sr. Developer Advocate
    «È¶RŠ˜ÂÖ´ǩȽMǼàșDZMȨȝŮ̓ĂnxM
    Ĉíå~óQ} IBM Cloud ŠWatson~ƗƵȹɁ“áaN

    View Slide

  6. G .5+
    IBM Cloud #)(8OURLN
    ibm.biz/dojo20200129
    ! IBM Cloud 3$ 5
    "!5+ CD
    3$ 5
    ! IBM Cloud 1 +"!5+;B
    "!5+CD

    MSU
    YÛ×~cȘ`

    View Slide

  7. ⽬次
    1. コンテナ概要
    2. Kubernetesとは
    3. Red Hat OpenShiftとは
    4. Minishift ワークショップ

    View Slide

  8. 1. コンテナ概要
    なぜ「今」
    コンテナ/Docker/Kubernetesなどの
    テクノロジーが注⽬されているのか

    View Slide

  9. WȩǀǧÖ+"XzW£Ö²¶X
    £Ö²¶ȩǀǧÖ+"}Ɩ„xѬR©NJƍeŒ`
    ©¢RҖ™´eȣǷ

    View Slide

  10. @4<6C ^£Ö²¶
    £Ö²¶“ĸēosˆ~Ǔŀ‡“śǁoÁа´¿œRÉ
    ! WĈíåeȣǷ}–ÁÑ¢R§Ï֓ĚdoƽƳ“ŚXjzeyf
    ! £Ö²¶~³¿• ´©­Ö®Rµ



    ˜ÊR¨~ŚĪ
    U–ÁÑ~ĈíV
    ˜ÊR¨~ŽŰ £Ö²¶~Čá
    1%-'3^ÂMRi…ru>Wazjaf^»š

    View Slide

  11. £Ö²¶“ūvsĈí~Ɣ
    Dockerfile|{ Docker
    ˜ÊR¨|{
    £Ö²¶R
    Ó¨©´Ñ
    Ç·¿š©´y
    £Ö²¶çĉ~
    ȮȀ“ŗǗ
    Ĉíå
    £Ö²¶R
    ˜ÊR¨ŚĪ
    ˜ÊR¨~
    ǩLJ
    Ĉíå
    –ÁÑČá
    –ÁÑĈí
    ǖDz~ÁÔ«©

    View Slide

  12. コンテナーのポータビリティ
    ü アプリケーション稼働に必要な依存ファイルを
    パッケージングできる
    ü 物理サーバーに固定されない
    → 同じアーキテクチャの環境であれば
    ポータビリティが存在する
    システム基盤
    (クラウド)
    ホストOS
    システム基盤
    (オンプレミス)
    ホストOS








    App1
    Bin/Lib
    s
    App2
    Bin/Lib
    s
    App3
    Bin/Lib
    s
    「僕の環境では動いた」
    問題が発⽣しない








    App3
    Bin/Lib
    s

    View Slide

  13. What is Container (コンテナ)?
    https://youtu.be/1PPPUPcUkSs

    View Slide

  14. コンテナのはじめ⽅
    n CNCFの Cloud Native Trail Map を参照
    1. コンテナ化
    • ⼀般的には Docker コンテナで実施
    • いかなるサイズのアプリケーションも依存性もコンテナ化可能
    • 時間が経つにつれ、アプリケーションを分割し
    マイクロサービス化したくなるだろう
    2. CI/CD(継続デリバリの仕組み)
    • 継続インテグレーション・継続デリバリの仕組みをセットアップ
    • コード変更が 新しいコンテナ・イメージとして、
    ⾃動的にビルドされ、テストされ、デプロイされるように
    3. オーケストレーション&アプリ定義
    • 互換性試験に合格している Certified Kubernetes 環境を選択
    • もっとも複雑なアプリケーションであっても
    HELMで 定義して、導⼊して更新していくことが可能

    View Slide

  15. コンテナのまとめ
    • 仮想マシン(VM)に⽐べてリソース効率がよい
    • ボータビリティーが⾼い
    • スケールアウトが容易
    • 3段階のプロセスを使⽤することで、
    よりアジャイルなDevOpsと継続的インテグレーション
    およびデリバリーが可能になる

    View Slide

  16. 2. Kubernetesとは
    コンテナーの運⽤実⾏と管理を⾏うオーケストレーションツール
    • コンテナーが⼤量になってくると管理しきれない部分をカバー
    • 複数のDockerホストの管理
    • 死活監視
    • スケジューリング
    • スケーリング
    • 障害時のリカバリー
    • アプリ実⾏に必要なインフラリソースを管理
    • 永続的なストレージ
    • ネットワーク
    • クレデンシャル情報 etc…
    • 宣⾔的設定モデル
    • 「あるべき状態」を記述すると、それを実現し続けようとしてくれる
    • 障害時も⾃動で復旧作業を実施

    View Slide

  17. Kubernetesの代表的な機能
    スケールアウト 負荷分散 バージョン管理
    (ロールアウト)
    ネットワーク管理
    永続ストレージ管理
    死活監視
    ⾃⼰復旧
    CPU / Memory リソース管理

    View Slide

  18. Pod
    "Kubernetes }chĠđ~ƫĒǷň
    1&~Ü} DQ¥‰ ~ £Ö²¶eDž†
    %@5Ƿňy©¢RҘÖP©¢RҖ™´o
    %@5kz}%–µÓ©e–¥˜Öl
    %@5%
    !"#!#$"%#&' !"#!#$"%#!$(

    View Slide

  19. ReplicaSet
    "%@5“ƫĒosˆ~øơ
    %@5~ƄĤȸǢij“øơ
    (~ %*'&6.'3 e{~¹Rµ}–¥˜Öod
    şȗmxg
    %@5%
    !"#!#$"%#&'
    !"#!#$"%#!!"
    '2.+%#'5
    °¤E
    ¡‹

    ¹Rµ ¹Rµ

    View Slide

  20. Node Port
    "6$'30'5'4Ÿd )%
    %y– «©o
    sˆ~øơ
    ( Щ­úyŠžTU\}>te–¥˜Öl
    ( Щ­~{~¹Rµd– «©mx‰
    ġȿ¥R½©}ÒR²—Ö¡l
    %@5%
    !"#!#$"%#&'
    !"#!#$"%#!!"
    ¹Rµ ¹Rµ
    "##$# "##$#

    View Slide

  21. Deployment
    "ÕR ÔRµøơĉ
    %@5
    '6A=:42(6E
    =FDE6C%D
    #@56%@CE
    ?8C6DD
    %@5%
    !"#!#$"%#&'
    !"#!#$"%#!!"
    =FDE6C%


    0)3'44
    '2.1:/'05

    View Slide

  22. What is Kubernetes?
    https://youtu.be/zGXYRQ-8pU0

    View Slide

  23. IBM~£Ö²¶ƗƵMǫſσ~ğŽŀ‡
    Йµ¸˜²—ÀP–ÁÑ
    ǫſσljǘù}Ĺč
    @4<6C F36C?6E6Dƒ~
    £È°´
    F36C?6E6DÂR©~
    £Ö²¶ŎȊ¬ÑÍR§ÏÖ
    ÙèO"Š @@8=6|{
    ĕ ~ŏàOőĉeĬĀ £Ö²¶ƗƵ £Ö²¶ƫĒ
    %&' !"#$%
    ()*+,-+.+/01+,234+05%(16
    ¥R½©Ê°§Í
    C2762D
    ¥R½©Ê°§Í
    ¥R½©Ê°§Í
    C2762D
    ¥R½©Ê°§Í
    ¥R½©Ê°§Í
    C2762D
    C2762D
    ¥R½©Ê°§Í
    C2762D
    ¥R½©Ê°§Í
    ¥R½©Ê°§Í
    ¥R½©Ê°§Í
    ¥R½©Ê°§Í
    ¥R½©Ê°§Í
    %&' !"#$%
    7,328.+05%976
    ޹oztbc_Wi…ru’²^Ä£
    %@??64EO,2ED@?@>A2C6@>A=JO
    )C2?D7@C>2E:@?5G:D@CO":4C@4=:>2E6O
    $"O(,63(A96C6O *C32?@56 6A=@JO%"O3 O
    "&OOAA@??64EO2E2%@H6COr~Ƕņij

    View Slide

  24. Kubernetesのまとめ
    • コンテナーのオーケストレーション・ツール
    • 理想状態を宣⾔すると、その状態を維持しようとしてくれる
    • 3つの主要コンポーネント
    • Pod, Deployment, Service
    • PodはDeploymentによって作成され、管理されます。
    Deploymentによって作成されたPodへのアクセスは、
    Serviceを使⽤することで容易になります。

    View Slide

  25. 3. Red Hat OpenShiftz

    View Slide

  26. © 2019 IBM Corporation
    OpenShiftMKubernetesz~ȚǪĩ“ȉĽm|eMCICDĞŪ“ĨĎMĈíå
    }Ė’vxM½ÒµMÑÆ¨´ÑǩLJM³ÁԘ“çĚČám†oN
    OPENSHIFT
    ĞŪǧƴ
    OpenShift CICDĸē
    –ÁÑ¢R§ÏÖ
    U£Ö²¶V
    Kubernetes
    –ÁÑ¢R§ÏÖ
    U£Ö²¶V
    Ubuntu / CentOS… Linux
    Kubernetes
    –ÁÑ¢R§ÏÖ
    U£Ö²¶V
    £Ö²¶ ÐÖ­˜É
    Linux OS
    £Ö²¶
    R¢©´ÓR§ÏÖ
    Kubernetes~ǫſĞŪ
    yƣȐms–ÁÑ¢R§ÏÖ
    {uy‰
    ĚŚƐŪ
    RHEL / RHCOS
    £Ö²¶ ÐÖ­˜É
    F36C?6E6Dz$A6?(9:7E

    View Slide

  27. What is OpenShift?
    https://youtu.be/KTN_QBuDplo

    View Slide

  28. KuberneteszOpenShift~Ư`

    View Slide

  29. KubernetesとOpenShiftの違い まとめ
    • Deploy:
    ソースコードからコンテナ作成とデプロイまでの⾃動化
    • Manage:
    Webコンソールとコマンドラインの両⽅から操作可能。
    実⾏状態のメトリックス監視とログ分析も提供
    • 運⽤:
    Ansible Playbookを使ってオートスケーリングが可能
    • Security:
    Project単位で簡単に管理可能

    View Slide

  30. Kubernetes and OpenShift: What's the Difference?
    https://youtu.be/cTPFwXsM2po

    View Slide

  31. ワークショップ
    5-1. IBM CloudでOpenShiftを使う⽅法の紹介
    5-2. OpenShift ワークショップ
    5-3. Minishift とは (オプション)

    View Slide

  32. Red Hat OpenShift on IBM Cloud z
    IBM Cloud™Ý~RedHat®OpenShift®Mïć}©¢RÐÀÒyıǴĩ~ï`IBM
    CloudÁа´¿œRÉyǺĔ}ƫĒlsOpenShift Щ­R“śǁoȦȬù|
    ¥R½©yoN The WeatherCompany®yȖ×2,500ł~Ö³ÇÖµńȎ“ȉĽo
    Kubernetes¥R½©}šǑƚælx`†oN

    View Slide

  33. Open Shift on IBM Cloud ~ųˆó
    Ǯƻƶâ(PAYG)†s¥À© ÑÁ§ÏÖ~–ž™Ö´

    View Slide

  34. 5-1. "=@F5y$A6?(9:7E“ūa
    "=@F5}Ô¡˜Ö
    Û×
    :3> 3:K
    5@;@
    }– «©mx
    ǬÝ~WÔ¡˜ÖXd
    Ô¡˜Ömxgtl`
    ĂƢ
    https://cloud.ibm.com/
    dÔ¡˜ÖƐŪyo
    И´–ž™Ö´òƪħyo
    %.–ž™Ö´ycū`ȴh†o

    View Slide

  35. 5-1. "=@F5y$A6?(9:7E“ūa
    ®°§ÍÅRµdWž­Ô¡X“ Ѱ

    View Slide

  36. 5-1. "=@F5y$A6?(9:7E“ūa
    ¿—Ò­R}/И´0e_ëæ/I0“ Ѱ mxǭǦ
    Cz`p>H·G\

    View Slide

  37. 5-1. "=@F5y$A6?(9:7E“ūa
    Ǩŭ~ž²¤ÑRdW£Ö²¶X“ Ѱ M
    W'652E$A6?(9:7E=FDE6CX“ Ѱ

    View Slide

  38. 5-1. "=@F5y$A6?(9:7E“ūa
    '652E$A6?(9:7E=FDE6CŚĪŻťeěŜl†oN
    stmИ´–ž™Ö´yŚĪyf|`sˆM
    И´–ž™Ö´~ëæW–°Á¡ÓRµXÅ­ÖeěŜl†oN

    View Slide

  39. 5-1. IBM CloudでOpenShiftを使う
    6. 「 Red Hat OpenShift Cluster 」を作成します。動画で⾒てみましょう:
    https://youtu.be/UJ2frartWFk

    View Slide

  40. 5-1. IBM CloudでOpenShiftを使う
    補⾜情報:
    3分でわかるIBM Cloudシリーズ(動画)
    • OpenShiftクラスターに対してocコマンドでアクセスする
    • OpenShiftクラスターにHelloWorldアプリをデプロイしてみよう
    IBM Demos (デモ動画サイト、英語):
    • Red Hat OpenShift on IBM Cloud

    View Slide

  41. 5-2. OpenShift ÕR §Ï°Á
    "#5410!+46#.'%1)0+5+10^¬PO
    01&',4W¯Î©Å"'$_|€
    ^2'0*+(510.16&S˜‹N\
    47#&0*-?9@-2LT /7'
    Û×ju“
    ȢŚmx‡†m‹a

    View Slide

  42. ąþūēo"Watson API – Visual Recognition
    2019‡3¡±
    "#541044+45#05
    –ÁÑ¢R§ÏÖ}çǚľư˜Ö­R¿šR©“ƿķmx
    ›ÖµÎR¦z~ŠŽğŽ“çĚĎ
    '95512''%*
    ²Ÿ©´űȫ“ǯƤ}ƆǪo
    2''%*51'95
    ǯƤ“²Ÿ©´űȫ}ƆǪo
    !+46#.'%1)0+5+10
    Żț£Ö²Ö±}Dž†ĥǠ“ʼnÞo
    +4%17'3:
    Ņįù|ȻǙ›Ö¨Ö“ĸēmxM³R
    ­~ȠsřǍ“ŒĄmMþǡŠ´ÓÖ
    µ“íìo
    +4%17'3:'84
    :D4@G6CJÝ}ČȁlM›ÖѰ¯ŔĻ
    ‰źķls·ÍR©}ÿoĜĈ³R
    ­«°´
    '3410#.+5:04+)*54
    ²Ÿ©´dȝå~ĩů“ǜøo
    #0)6#)' 3#04.#513
    ²Ÿ©´“ǶľưƒɀȲ“áa
    #563#.#0)6#)' 0&'345#0&+0)
    çǚľưƏĒ“ĂnxŸRÕRµȼÞM›Ö
    ²—²—RȼÞMȶƸ­¡źhMÿŴȼÞ|
    {“áa
    #563#.#0)6#)'.#44+<'3
    ²Ÿ©´űȫ~éǰ“áaƬĦ~ĥǝǜø|{
    10'0#.:;'3†ˆ½Ç’²
    ²Ÿ©´dȝå~ƁŔMäŦĩMűĉ“ŒȪ
    018.'&)'56&+1
    £R³—Ö¡|m}MàīŖǞdîĪms
    Ğȷęǽ˳ÒyMdzƣƷ²Ÿ©´³R­d
    ȻǙ“ğŐęǽŁƨ±RÒ
    œĒǤ
    ľưǤ
    ȤÚƋǡǤ
    ŖǞȜȭǤ
    ǯƤǤ
    ŻțǤ
    9EEAD

    HHH :3> 4@>
    H2ED@?
    ;A;2
    56G6=@A6C4=@F5
    D6CG:46D42E2=@8 9E>=

    View Slide

  43. Watson Visual Recognition (画像認識)
    画像認識「⼀般種別」(General Tagging):
    • 事前学習済みの分類器の出⼒を返す
    画像認識「カスタム」:
    • 識別を⾏いたいクラスのイメージを事前学習させ、
    その分類器の出⼒を返す
    事前学習
    不要
    事前学習
    必要
    https://www.ibm.com/watson/jp-ja/developercloud/visual-recognition.html
    画像に写った物体・情景など様々なものを分析・認識するAIサービス

    View Slide

  44. 操作の流れ
    1. ワークショップ⽤の環境へのIBM Cloud ID関連付け
    2. OpenShiftをコマンド実⾏できる環境の準備
    3. Visual Recognitionサービスの作成
    4. 資格情報のダウンロード
    5. 資格情報のアップロード
    6. 資格情報の編集
    7. OpenShiftアプリの作成

    View Slide

  45. 1. ワークショップ⽤のIBM Cloud環境にご⾃⾝の
    IBM Cloud IDを関連付ける
    注意事項
    ・ブラウザはFirefoxをご利⽤ください
    ・本ワークショップ⽤のIBM Cloud環境はセミナー開催⽇を
    含めて約2⽇間限定でお使いいただけます
    ・IBM Cloud上で継続的にOpenShiftを検証する環境が
    必要な場合は、5-1. OpenShiftをご利⽤ください
    ・ローカルでOpenShiftを検証する環境を構築されたい場合は、
    5-2. Minishiftをご利⽤ください

    View Slide

  46. ăŗ*'!}+3'(19{bky– «©o
    https://openshifttokyo.mybluemix.net
    /!23 6J0}Ńø~űLjȏM/.@FC":50}kçƧ~
    “ñāmM¯š° Ű ©}¯š° “ñx
    /(F3>:E0“ Ѱ o

    View Slide

  47. @?8C2EF=2E:@?DeěŜls / !@8:?"=@F50
    ÑÖ “ Ѱ o

    View Slide

  48. "=@F5®°§ÍÅRµ~ǬÝ~–ž™Ö´ŔĻ~
    Ǭƒ~ 7 “ Ѱ o
    /IIIIIII L "0“ Ѱ o

    View Slide

  49. "=@F5®°§ÍÅRµ~ǬÝ~–ž™Ö´ŔĻe
    Ɔǿlsjz“ŲŕmM/ѬR©~Ĥĕ0~
    /=FDE6CD0“ Ѱ o

    View Slide

  50. /IIIIII0“ Ѱ o
    [ÛÕR §Ï°Áyju~ Щ­“ūēm†o
    [ŋöçĚù}ŹŽġx†o

    View Slide

  51. /$A6?(9:7E,63£Ö¬RÒ0ŭ֓ Ѱ o

    View Slide

  52. /$A6?(9:7E@?E2:?6C%=2E7@C>0ŻťeěŜls
    ǬÝ~–ž™Ö´ŔĻ~ȯ~ G“ Ѱ mM
    /@AJ!@8:?@>>2?50“ĊȞo
    [õ…{ūēoȆMƄĤ}ƋnxÊËmxc`xgtl`

    View Slide

  53. $A6?(9:7E“£ÇÖµČáyfƽƳ~ſƉ
    ăŗ*'!}+3'(19{bky– «©mMŻť}Ǯvx
    %2DD4@56“ñāo
    https://workshop.shell.cloud.ibm.com
    "=@F5(96==7@C,@C–ž™Ö´ŔĻ~ 7 “ Ѱ mx/IIIIIII "0
    “ĊȞo

    View Slide

  54. –ž™Ö´ŔĻeǿýlsjz“ŲŕmMǨȯ~
    ­RȶҖ˜£Ö“ Ѱ o
    m€goz­RȶÒeěŜl

    View Slide

  55. öȫ y£¾Rms£ÇÖµ“ñāmČáo
    W,6=4@>6XeěŜl€Ô¡˜ÖĪȟyo

    View Slide

  56. +:DF2='64@8?:E:@?¥R½©~ŚĪ
    +:DF2='64@8?:E:@?“ýƊ}ŚĪoóŝ~ÃR¨}į”ygtl`N
    ÑV¥”Vª §ZW“MŚĪĿ‡~‰~eūēyf†oN
    ŚĪĿ‡~óĴă~êȅy+:DF2= '64@8?:E:@?~ƫĒ~Żť“ěŜmx
    9EEA

    :3> 3:K
    H2ED@?D6CG:46D4C66?
    W +:DF2='64@8?:E:@?¥R½©:3>4C656?E:2=D 6?G ~®™ÖÔRµX†yį”ygtl`N
    ÀЙ¦RÝyM–MFp{^—IYNN
    9EEAD

    4=@F5 :3> 4@>
    }– «©mxM®°§ÍÅRµ“Ĉf†oN
    "SXUJސW_eb…t}|vx`jz“ŲŕmMǻ|vx
    `ëæ Ѱ mxƆǿm†o

    View Slide

  57. Ýü~Ê·ÍR}_Wž­Ô¡X“ Ѱ m†o

    View Slide

  58. +:DF2='64@8?:E:@?¥R½©~ĊȞ
    Ǩŭ~Ê·ÍRdWX“ Ѱ
    ă}© ÔRÒmxěŜlsW+:DF2='64@8?:E:@?X“ Ѱ

    View Slide

  59. řůÁÐÖ}WИ´XeĊȞlx`jz“ŲŕmxM
    WŚĪX“ Ѱ
    +:DF2='64@8?:E:@?¥R½©“ŚĪo

    View Slide

  60. +:DF2='64@8?:E:@?¥R½©“ŚĪŲŕMƫĒŻť~ěŜ
    ă~ŻťeÞsMŚĪǺȓyoN
    Ǩ~Ê·ÍRdWƫĒX“ Ѱ mxƫĒŻť“ěŜm†o

    View Slide

  61. čůŔĻ~W®™ÖÔRµX“
    Ѱ mMçé~%}
    :3>4C656?E:2=D 6?G z`a
    ¿•˜Ò“ďǛm†oN
    +:DF2='64@8?:E:@?¥R½©
    :3>4C656?E:2=D 6?G ~®™ÖÔRµ

    View Slide

  62. :3>4C656?E:2=D 6?G ~–°ÁÔRµ
    ÀЙ¦R~"=@F5(96==7@C,@C“ Ѱ mxěŜm†oN

    View Slide

  63. :3>4C656?E:2=D 6?G ~–°ÁÔRµ
    Ê·ÍR»R~–°ÁÔRµ–˜£Ö“ Ѱ M
    :3>4C656?E:2=D 6?G“Ńømx–°ÁÔRµ

    View Slide

  64. :3>4C656?E:2=D 6?G ~–°ÁÔRµ
    ¿•˜Ò–°ÁÔRµ“Ųŕ
    !"
    ­RȶÒ}ăŗ£ÇÖµ“ñāmMŲŕm†oN
    Þāǂ
    BB j~õ~£ÇÖµȢŚĴăd£¾Ãyf†o
    9EEAD

    :3> 3@I 4@>
    G
    @A6?D9:7E4@>>2?5

    View Slide

  65. :3>4C656?E:2=D 6?G £¾Rzǹƃ
    :3>4C656?E:2=D 6?G “£¾R
    #$%&'()#*+,+-.&/!"0+-1 &'()#*+,+-.&/!"0+-10-2,+1*
    ­RȶÒ}ăŗ£ÇÖµ“ñāN
    Þāǂ
    :3>4C656?E:2=D 6?G ?@56GC ~İƞƆǿ
    #3(2, 24* &'()#*+,+-.&/!"0+-10-2,+1*
    ­RȶÒ}ăŗ£ÇÖµ“ñāN
    Þāǂ

    View Slide

  66. :3>4C656?E:2=D 6?G £¾Rzǹƃ
    Ê·ÍR»R~Ȱȝ5:E–˜£Ö“ Ѱ mxM
    ›³—­R“Āu_i
    ÝŞé}›³—­ReĈf†o

    View Slide

  67. :3>4C656?E:2=D 6?G £¾Rzǹƃ
    Ǩŭ~-%!$''d:3>4C656?E:2=D 6?G ?@56GC
    “®ÀÒ Ñ° mxĈf†oN
    ®ÀÒ Ñ°

    View Slide

  68. :3>4C656?E:2=D 6?G £¾Rzǹƃ
    +(*!1'$#)$#yų†vx`|`áS
    áċzĠõ~á“ǭǦm†oN
    ǭǦö
    ǭǦõ

    View Slide

  69. :3>4C656?E:2=D 6?G £¾Rzǹƃ
    W:=6XÊ·ÍR“ Ѱ mMW(2G6X“ Ѱ
    mxďǛm†oN

    View Slide

  70. ÁÔ¨š ´“ŚĪo
    2# -+5)$*26+#.%5/."2-)1* )),&"$!/7)-/(+895/."2-)1*9%))
    ,+"#*&$.&2-89:/($!+%;/."2-%<&"=/!%>+#2?-&.&2-%@2,+06"%/$$9
    ­RȶÒ}ăŗ£ÇÖµ“ñāmMým`–ÁÑ¢R§ÏÖē}ým`
    ÁÔ¨š ´“ŚĪm†oN
    £ÇÖµ]áyo
    $A6?D9:7E–ÁÑ~ŚĪ
    Þāǂ

    View Slide

  71. 7.2. アプリケーションの作成
    ターミナルに下記のコマンドを⼊⼒し、 githubのソースコードから、アプ
    リケーションを作成します。
    (コマンドは1⾏です)
    oc new-app https://github.com/kyokonishito/watson-vr-node.git --
    build-env-file=./ibm-credentials.env.nodevr --build-env
    CLASSIFIER_ID=food
    7. OpenShiftアプリの作成

    View Slide

  72. –ÁÑ¢R§ÏÖ~ŚĪ
    Þāǂ
    $A6?(9:7E–ÁÑ~ŚĪ

    View Slide

  73. 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アプリの作成

    View Slide

  74. 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 にブラウザでアクセスします。

    View Slide

  75. ÀЙ¦Ry–ÁÑ¢R§ÏÖ}– «©m†o
    –ÁÑ¢R§ÏÖěŜyf†msd
    ŭ֓ǸmxĚŚŲŕmx‡†m‹a
    W¿•˜Ò~ĊȞXdǃţ“Ċ”tõMƇNjŭ֓
    Ѱ mxM+:DF2='64@8?:E:@?~ōŬ“Ųŕm†
    oN
    ! ,2ED@?yŕǞU,2ED@?ęǽĿ‡Ë³Ò“ĸē
    ! ,2ED@?eǃţ“ŕǞmsúŤ“ěŜm†oN
    ! ,2ED@?yŕǞUž©­É˳ғĸē
    ! "śǁ~ƼŸ}ƀĎmsž©­É˳Ò@@5yŕǞm
    s Щ“ěŜm†oN
    [©ÇR´¿œÖy~Ųŕ
    ßƹă}&'£RµeěŜlx`~yMr“©ÇR´¿œ
    Ö~žÊÐyȑ”y–ÁÑ¢R§ÏÖ~*'!}– «ozM©
    ÇR´¿œÖy‰ōŬ“Ųŕyf†oN
    ©ÇR´¿œÖyW¿•˜Ò~ĊȞXÅ­Öyr~ëyȱvs
    ǃţ‰ŕǞƐŪyoN

    View Slide

  76. 追加ワークショップ (オプション)
    • Node-RED on OpenShift Workshop starter (日本語版)
    https://qiita.com/yamachan360/items/786f70cb532443f
    38c16
    • RedHat Japanのハンズオントレーニング ⽇本語訳
    複数コンテナの連携:
    https://github.com/osonoi/minishift/tree/master/lab1
    様々なデプロイメント⼿法:
    https://github.com/osonoi/minishift/tree/master/lab2

    View Slide

  77. 5-3. Minishift とは
    • OpenShiftは、Kubernetesに、Red Hat社独⾃の拡張を加え、さらに、
    Red Hatのソフトウェア保守とウェブや電話での問い合わせ対応
    サービスを提供する企業向けKubernetesのプラットフォーム
    • OpenShiftは、Red Hat社が提供する有償サービス(サブスクリプション)
    のもとで利⽤できるソフトウェア
    • OpenShiftの学習やローカルの開発環境⽤に無償で提供されるのが、
    Minishift (OpenShift 3.11に相当)
    「MiniShiftに関する疑問の整理、「 Dockerから⼊るKubernetes」執筆打明け話とか、OKDやCRCとの整理など」
    https://qiita.com/MahoTakara/items/3c1c208640518e832660 より抜粋

    View Slide

  78. 5-3. Minishift ワークショップ 101
    Setup 1
    「仮想化環境を構成する」の⽇本語版はこちら」
    • Windows: ibm.biz/Bdz39H
    • Mac: ibm.biz/Bdz39E
    Setup 2
    MinishiftのインストールおよびOpenShiftサーバーを開始し、
    Lab1から順番に進める。
    ibm.biz/openshift1

    View Slide

  79. IBM Code Patterns
    https://ibm.biz/ibmcodejp
    Œƭ ³ËĚŻ ¬R©£Rµeɂvs–ÁÑĈí¼­RÖƃ

    View Slide

  80. —‘¦Kjat IBM Developer
    ibm.biz/IBMDevJP
    ĠýŔϊ©ŸÒ–°Á}ƘĀw“ǐbƗƵŗã“śǁ

    View Slide

  81. View Slide