OpenFaaSのWorkShopでKubernetesに入門した

Oct 10, 2021 23:58 · 1677 words · 4 minute read OpenFaaS Kubernetes

近々OpenFaaSを使う機会がありそうです。

「まずは手始めに」ということで、OpenFaaS公式のワークショップを始めてみましたが、序盤から使ったことのないツールがたくさん出てきました。

あやふやな知識のまま先に進むと後で困りそうなので、知らなかった内容の振り返りをしておきます。

目次

OpenFaaSとは

Kubernetes上でFaaS環境を構築することができます。
以前はDocker Swarmもサポートしていましたが、2021年10月現在はKubernetesのみのサポートとなっているようです。

FaaSの使い勝手は各ベンダによって微妙に異なります。
OpenFaaSを使うことで、Kubernetesさえ動けばどのベンダのサービスでも同じFaaS環境を使うことができます。
その反面、Kubernetesを常時使っている状態になるので、FaaSを使うコストメリットは失われます。

参考URL

OpenFaaSの公式ワークショップ

OpenFaaSには公式ワークショップがあります。
日本語版もありますが、日本語版は2018年3月頃で更新が止まっていました。

日本語版ではDocker Swarmを使った内容になっていますが、2021年10月現在のOpenFaaSはDocker Swarmをサポートしていません。
そのため、これからワークショップをする場合は英語版を見ながら進めるのが良いと思います。

参考URL

Docker Swarm

Docker社が提供するオーケストレーションツール。
日本語版のワークショップではKubernetesではなくDocker Swarmを採用していました。

参考URL

Docker SwarmとKubernetes

Docker Swarmもオーケストレーションツールということは、Kubernetesとの違いが気になるところです。

いくつかの記事を読みましたが、内容をまとめると、

  • Kubernetesの方が複雑なとこができて高機能
  • 対してSwarmはシンプル
  • 以前はSwarmはDocker公式サポートであることが強みだったが、KubernetesもDocker公式に取り込まれた
  • KubernetesはElasticSearch/Kibanaのようなサードパーティのモニタリングツールの統合もサポートしている。
  • KubernetesはDocker Swarmよりも大規模な運用環境を想定して作られている。

という違いがあるようです。

参考URL

K3s: Lightweight Kubernetes

Kubernetesの軽量ディストリビューション。
IoTやエッジコンピューティング環境でKubernetesを動作させるために軽量化されています。
Raspberry Pi などARMの環境でも動作します。
ワーショップの中で、ローカルでKubernetesを動作させるツールとしてK3sとminikubeが紹介されていました。

参考URL

minikube

ローカルでKubernetesを実行するためのツール。
開発や検証用のKubernetes環境を構築することが目的。

参考URL

最後に

Kubernetes周りについて前提知識が不足していたので、まずは足場固めをしました。
引き続き公式のワークショップを進めていきます。

tweet Share