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

Containers at Edge and the future

Kohei Ota
August 20, 2020

Containers at Edge and the future

Kohei Ota

August 20, 2020
Tweet

More Decks by Kohei Ota

Other Decks in Technology

Transcript

  1. 自己紹介 名前: Kohei Ota (@inductor) 所属: HPE 職種: Solutions Architect

    その他: CNCF Ambassador Docker Meetup Tokyo, CloudNative Days Tokyo 運営
  2. Case Studyからの学び • コンテナによるパッケージング + Kubernetes with GitOpsで 多数のクラスター構成管理が可能に →

    Kubernetesのエコシステムで完結できる強みを活かす 他のIoTにおける利用でも参考にできそう
  3. その他のKubernetesにおけるEdgeの取り組み • Rancher社のk3s ◦ 軽量(しょぼいスペックでも動く) ◦ オールインワンパッケージ • KubeEdge ◦

    Kubernetesベース ◦ k3sのような魔改造はしてない • デンソーさんのMisaki(ロゴが見つからず) ◦ 車に組み込むやつ
  4. KubernetesとWASM 1. WASMのおさらい 01 WASM(Web Assembly)はモダンブラウザでNative Codeを動かそうとするための試み CやRustなどで記述したコードをWASM用にコンパイルするとブラウザで爆速に動く ! みたいなやつ(例:

    vimをブラウザ上で動かした人もいる ) 02 WASMを動かすにはランタイムが必要だが、ランタイムの仕様はオープンに公開されてい て誰でも作ることができる。 V8のようにブラウザ向けのものもあるが、 Non-webというブラウ ザ以外で動かせるランタイムも複数存在する (例: WASI) 03 コンセプトが「Run anywhere」な上、実体がコンパイル済みのアプリケーションバイナリな ので、コンテナのように軽量でどこでも動作できる特徴を持つ
  5. KubernetesとWASM 2. Krustletについて 01 Deis Labsというプロジェクトにて開発中の OSS KubeletをRustで再実装したもの 一番の特徴はWASMをサポートしていること(Dockerの代わりにWASIなどが使える) 02

    WASMモジュールをOCI形式に変換してコンテナレジストリに置くための仕様も作っていて、 Kubernetesの既存のエコシステムがあれば WASMのアプリケーションが動かせる変態的 な仕組み 03 HelmやCNABなどを牽引するチームで、マイクロソフトが主体となって開発を進めて いる
  6. KubernetesとWASM 3. Krustletのアーキテクチャ ホストマシン Docker Containerd CRI-O Kubelet Pod (OCIコンテナ)

    CRI OCI ホストマシン Krustlet (WASI or waSCC provider) Pod (WASM) コンテナレジストリ Pull OCI Image apiVersion : v1 kind: Pod metadata: name: krustlet-tutorial spec: containers : - name: krustlet-tutorial image: mycontainerregistry007.azurecr.io/krustlet-tutorial:v1.0.0 tolerations : - key: "krustlet/arch" operator: "Equal" value: "wasm32-wasi" effect: "NoExecute"