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

IBM Cloud Plus - #1 Code Engine入門

HelenXiao
January 05, 2023

IBM Cloud Plus - #1 Code Engine入門

IBM Cloud Plus - #1 Code Engine入門

https://ibm-developer.connpass.com/event/265181/

HelenXiao

January 05, 2023
Tweet

More Decks by HelenXiao

Other Decks in Technology

Transcript

  1. 1 © 2022 IBM Corporation IBM Cloud Plus #1 _

    Code Engine 入門: IBM サーバーレスの世界へようこそ IBM Tech/Developer Dojo IBM Cloud Plus
  2. 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 まとめ & クロージング
  3. 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 未定 * テーマおよび順番は変更になる可能性がありますので、予めご了承ください。
  4. 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)®
  5. 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 主な特⾧:  複数種類のワークロードに対応  インフラ管理・クラスタ管理が不要  柔軟なスケール  真の意味での従量課金
  6. 8 © 2022 IBM Corporation 1. Code Engine とは _

    Serverless のおさらい ビジネスロジックへ集中 インフラに対する制御の減少 Bare Metal Virtual Machines Serverless Containers クラウドサービスの利用方法 Serverless for containerized workload: -Kubernetes クラスタ環境: 事業者側で用意 -プログラムなどのワークロード: 送信するだけで即座に実行を開始
  7. 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
  8. 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
  9. 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の設計・構築・管理が不要
  10. 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
  11. 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 …
  12. 15 © 2022 IBM Corporation 3. Code Engine Demo _

    Warm Up “Hello World” demoの流れ 1. Projectを作成 • ワークロードが使用する、分離されたリソー ス・グループ • 実際 KubernetesのNamespace 2. Applicationを作成 • 既存なImageのURLを設定 • Webpageの接続に関する設定
  13. 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
  14. 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 監視
  15. 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などを合わせて検討してください。
  16. 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 の作成だけ増やすことができます。 アプリケーションの制限 ジョブの制限
  17. 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)のリクエスト数
  18. 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 要求あたり
  19. 23 © 2022 IBM Corporation 本日のまとめ 今後もCode Engineは機能強化されていくとおもわれるので、適宜最新情報をWatchください。 Code Engine

    By IBM What  Serverless、コンテナー化 Why  シンプル、迅速、コスト効率の良い When  ワークロードの変動さ、隔離レベル How  共有プラットフォーム、ユーザーでの管理不要
  20. 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
  21. Group Name / DOC ID / Month XX, 2022 /

    © 2022 IBM Corporation 27