Slide 1

Slide 1 text

1 © 2022 IBM Corporation IBM Cloud Plus #1 _ Code Engine 入門: IBM サーバーレスの世界へようこそ IBM Tech/Developer Dojo IBM Cloud Plus

Slide 2

Slide 2 text

このセッションはRecordingしておきます。

Slide 3

Slide 3 text

アンケートご協力のお願い Join at slido.com #2903 915 https://app.sli.do/event/5MdNdBfXjE9pmkFiaWwk1z

Slide 4

Slide 4 text

4 © 2022 IBM Corporation Agenda Code Engine, または、Serverlessに興味のある初心者向けに設計されています。 - Cloud nativeの基礎知識 - IBM Cloudの使用経験 対象者 時間 内容 14:00-14:05 オープニング 14:05-14:15 Code Engine とは 14:15-14:25 Code Engine の利用シーン 14:25-14:40 Demo 14:40-14:45 Code Engine 本番利用の検討 14:45-14:50 Code Engine の料金体系 14:50-14:55 Q&A 14:55-15:00 まとめ & クロージング

Slide 5

Slide 5 text

5 © 2022 IBM Corporation IBM Cloud Plus シリーズについて - IBM Cloud の特色あるサービス、および、設計などのベストプラクティスをご紹介する。 - 実際の操作のデモも交えた講義形式の講座です。 IBM Cloud Plus シリーズ 順番 テーマ 時期 順番 テーマ 時期 #1 Code Engine 2022.12.07 #6 Schematic 未定 #2 ICOS: IBM Cloud Object Storage 未定 #7 Z/Linux 未定 #3 PowerVS 未定 #8 IC4V: IBM Cloud for VMware 未定 #4 VPCをいい感じに設計するポイント 未定 #9 ROKS: RedHat OpenShift Kubernetes Services 未定 #5 バックアップ関連サービス 未定 #10 Sitellite 未定 * テーマおよび順番は変更になる可能性がありますので、予めご了承ください。

Slide 6

Slide 6 text

6 © 2022 IBM Corporation 教師の自己紹介 ヘレン ショウ Helen Xiao 日本アイ・ビー・エム株式会社 テクノロジー事業本部 カスタマーサクセスマネージャー・CSM IBM Cloud [email protected] LinkedIn: www.linkedin.com/in/helen-xiao-24472764v 略歴 日本アイ・ビー・エム カスタマーサクセスマネージャー:IBM Cloud Platform担当 インフラ系Open Source Software開発会社 プリセールス: Cloud Native 製品担当 移動通信業界のベンダー ソリューションアーキテクト: Telco向けのCloud Orchestration製品担当 Automationツールのローカル開発管理 キャリア社連携のTelco CI/CD促進 資格 IBM Cloud Essentials AWS Certified Solutions Architect – Associate Scaled Agile Certified SAFe® 5 Agilist Project Management Professional (PMP)®

Slide 7

Slide 7 text

7 © 2022 IBM Corporation 1. Code Engine とは _ はじめに Code Engine By IBM コンテナー化されたワークロードを実行する、フルマネージドサーバーレス (Serverless)・プラットフォームです。 Function App Source Code Container Image Job (Batch) Code Engine Multi Tenant Cluster 主な特⾧:  複数種類のワークロードに対応  インフラ管理・クラスタ管理が不要  柔軟なスケール  真の意味での従量課金

Slide 8

Slide 8 text

8 © 2022 IBM Corporation 1. Code Engine とは _ Serverless のおさらい ビジネスロジックへ集中 インフラに対する制御の減少 Bare Metal Virtual Machines Serverless Containers クラウドサービスの利用方法 Serverless for containerized workload: -Kubernetes クラスタ環境: 事業者側で用意 -プログラムなどのワークロード: 送信するだけで即座に実行を開始

Slide 9

Slide 9 text

9 © 2022 IBM Corporation 1. Code Engine とは _ Code Engine アーキテクチャーの概念図 マルチテナント IKS (IBM Cloud Kubernetes Service) Knative Istio IBM Cloud Code Engine ... マルチゾーン・リージョン (MZR) 仮想マシン・物理マシン End Users Developer (Code Engine User) Function App Container Batch Jobs

Slide 10

Slide 10 text

10 © 2022 IBM Corporation 1. Code Engine とは _ 競業他社の類似サービス IBM Cloud Multi-tenant Container service “Push” source code Batch jobs Functions AWS Fargate AWS App Runner AWS Elastic Beanstalk AWS App Runner AWS Batch AWS Lambda Azure Container Instances Azure Container Apps Azure app service Azure Batch Azure Functions Azure Container Apps Google Cloud Run Google App Engine Google Cloud Run Google Cloud Run Google Cloud Functions Code Engine

Slide 11

Slide 11 text

11 © 2022 IBM Corporation アンケートご協力のお願い Join at slido.com #2903 915 https://app.sli.do/event/5MdNdBfXjE9pmkFiaWwk1z

Slide 12

Slide 12 text

12 © 2022 IBM Corporation 2. Code Engine 利用シーン_ 1 Cloud-native Application Developer Container Imageが既に作成された。 12 © 2020 IBM Corporation マルチテナント IKS (IBM Cloud Kubernetes Service) Container Image ... Image Registry Runtime pulls images Push Push 楽なところ:(Saved efforts) Kubernetesの設計・構築・管理が不要

Slide 13

Slide 13 text

13 © 2022 IBM Corporation 2. Code Engine 利用シーン_ 2 PaaS Application Developer / Serverless Function Developer ソースコードから実行する ことに慣れます 13 © 2020 IBM Corporation 楽なところ:(Saved efforts) Imageの作成も、 Kubernetesの設計・構築・管理が不要 マルチテナント IKS (IBM Cloud Kubernetes Service) ... Function App Image Build Image Registry (aka “Source-to-Image”) Build Option: - From Dockerfile - Via Buildpacks

Slide 14

Slide 14 text

14 © 2022 IBM Corporation 2. Code Engine 利用シーン_ 3 Batch Job Creator 多数のワークロードを平行して実行する、 または、Event駆動で開始する 14 © 2020 IBM Corporation 楽なところ:(Saved efforts) 基盤のスケールアウトに考慮しなくて 大規模な並列ジョブを実行でき、 使用した分だけ料金が発生する マルチテナント IKS (IBM Cloud Kubernetes Service) ... Batch Jobs Job Definition Image / Source Code: what … Array spec: … scale … Command: … what … CPU / Memory: … resources …

Slide 15

Slide 15 text

15 © 2022 IBM Corporation 3. Code Engine Demo _ Warm Up “Hello World” demoの流れ 1. Projectを作成 • ワークロードが使用する、分離されたリソー ス・グループ • 実際 KubernetesのNamespace 2. Applicationを作成 • 既存なImageのURLを設定 • Webpageの接続に関する設定

Slide 16

Slide 16 text

16 © 2022 IBM Corporation 3. Code Engine Demo _ 実施 -IBM Cloud for Code Engine: https://cloud.ibm.com/codeengine/overview -Hello-world Image URL: docker.io/ibmcom/helloworld

Slide 17

Slide 17 text

17 © 2022 IBM Corporation 4. Code Engine 本番利用の検討_ できること 開発関連 運用関連  コードリポジトリとの連携:Github, Gitlab, etc.  Build Option: Dockerfile, Buildpacks.  環境変数の設定:ConfigMap, Secrets, etc.  Runtime スペックの設定:CPU, Memory  Batch Job retry の設定:retry times, till success.  Event 駆動 Code Engineの詳細は、IBM Cloud Docをご参照ください: https://cloud.ibm.com/docs/codeengine?topic=codeengine-getting-started&locale=ja  アクセス制御:IBM Cloud IAM より  Activity Tracker:ユーザー活動の履歴  外部 Log システムとの連携:LogDNA, etc.  Metrics 監視

Slide 18

Slide 18 text

18 © 2022 IBM Corporation 4. Code Engine 本番利用の検討 _ 他の機能と合わせて検討が必要なこと - CI/CD関連の機能の充実 - 現時点は、コードリポジトリにてCodeが更新されたら、自動的にCode Engineでビルド・デプロイすることはないです。IBM Tool ChainなどCI/CD Tool機能を一緒に利用することはお勧め。 - Attach PV - PVを設定する機能はないです。アプリのニーズに応じて、外部のObject Storage・File Storage ・DB Serviceなどを利用するこ とはお勧め。 - Stateful Appに関するSticky Session機能: - 現時点は、 Code Engine自身はこの機能を提供していないです。Load BalancerのSession Affinity機能などを合わせて検討して ください。 - Web Appのアクセス制限 - ACLやSecurity Group などのアクセス制限機能は、Load Balancerなどを合わせて検討してください。

Slide 19

Slide 19 text

19 © 2022 IBM Corporation 4. Code Engine 本番利用の検討 _ Limit & Quota Code Engine Limit & Quotaの詳細は、IBM Cloud Docをご参照ください: https://cloud.ibm.com/docs/codeengine?topic=codeengine-limits&locale=ja アプリケーションまたはジョブを実行する際、使用できるリソースの制限があります。 最大値を拡張する必要な場合、IBM サポートへの連絡およびサポート Case の作成だけ増やすことができます。 アプリケーションの制限 ジョブの制限

Slide 20

Slide 20 text

20 © 2022 IBM Corporation 5. Code Engine の料金体系 _ 課金要素 Developer Function App Batch Build Image Source End Users App ビルドでの リソース使用量/秒 CPU, Memory / 秒 ランタイムでの リソース使用量/秒 CPU, Memory x 台数 x 秒 アプリへの リクエスト数 Option. コンテナ・レジストリ 利用料 課金要素:CPUとMemoryの使用量、Http(s)のリクエスト数

Slide 21

Slide 21 text

21 © 2022 IBM Corporation 5. Code Engine の料金体系 _ 無料枠 常に無料 CPU 100,000 1か月あたりの vCPU 秒 メモリー 200,000 1か月あたりの GB 秒 着信要求 100,000 1か月あたりの HTTP 要求 無料利用枠を超えて CPU $0,0000319 / vCPU 秒 メモリー $0,0000033 / GB 秒 着信要求 $0.50 100 万件の HTTP 要求あたり

Slide 22

Slide 22 text

22 © 2022 IBM Corporation Question ? 質問応答

Slide 23

Slide 23 text

23 © 2022 IBM Corporation 本日のまとめ 今後もCode Engineは機能強化されていくとおもわれるので、適宜最新情報をWatchください。 Code Engine By IBM What  Serverless、コンテナー化 Why  シンプル、迅速、コスト効率の良い When  ワークロードの変動さ、隔離レベル How  共有プラットフォーム、ユーザーでの管理不要

Slide 24

Slide 24 text

24 © 2022 IBM Corporation Linkのまとめ • IBM Cloud Doc for Code Engine: https://cloud.ibm.com/docs/codeengine?topic=codeengine-getting-started&locale=ja • Code Engine menu in IBM Cloud Portal: https://cloud.ibm.com/codeengine/overview • Hello-world (Demo Container Image) URL: docker.io/ibmcom/helloworld

Slide 25

Slide 25 text

25 © 2022 IBM Corporation アンケートご協力のお願い Join at slido.com #2903 915 https://app.sli.do/event/5MdNdBfXjE9pmkFiaWwk1z

Slide 26

Slide 26 text

26 © 2022 IBM Corporation IBM Tech/Developer Dojo ご清聴有難うございました IBM Cloud Plus

Slide 27

Slide 27 text

Group Name / DOC ID / Month XX, 2022 / © 2022 IBM Corporation 27