Kubernetes関連の発表も印象的なクラウドネイティブプラットフォーム
SpringOneでのプラットフォームに関するセッションは、前回まではPivotalが中心となって開発するOSSのPaaSであるCloud Foundryに関する内容が大半でしたが、今回はKubernetesに関する発表も見られました。
これは2017年に、Cloud Foundry Foundationが提供する分散システム管理ツールであるBOSHがKubernetesを扱うようになり、Pivotal Cloud Foundryのサービスにも加わったことによるものでしょう。
正式には、今までCloud Foundryと呼ばれてきたものはCloud Foundry Application Runtime(CFAR)となり、BOSHを用いてKubernetesを構築するものは新たにCloud Foundry Container Runtime(CFCR)と呼ばれるようになっています。
カンファレンスでは、従来通りCFAR関連の内容も人気を集めていましたが、Kubernetes関連のセッションは、やはりその話題性からかどれもほぼ満員だった印象です。しかし、CFARと比較してまだコミュニティに浸透していないこともあってか、入門的な内容が主だったように思います。
一例として"Kubernetes for the Spring Developer"というセッションでは、Kubernetes上に簡単なSpringのアプリケーションをデプロイする様子が実演されていました。ディープな内容や具体的な活用事例については次回に期待、といったところでしょうか。
Spring界隈でKubernetesがどのように流行っていくのかについてはまだまだわかりませんが、今後の動向から目が離せません。
プラットフォームに関連してもう一つ注目すべき内容は、Mark FisherさんがMain Stageと"Serverless Spring"というセッションで話してくれた"riff"に関連するものです。
riffはKubernetes上でFaaS(Function as a Service)を実現するためのソフトウエアです。Javaやシェルスクリプト、JavaScriptなどで作成されたFunctionをコンテナにパッケージングしてデプロイし、HTTPリクエストなどのイベントを契機として実行します。プログラミング言語ごとにベースイメージが用意されており、Java用のベースイメージには現在開発中のSpring Cloud Functionが使用されているそうです。
負荷に応じてコンテナをスケールアップ/スケールダウンさせるオートスケール機能も備えています。
デモではシェルスクリプトでのHello worldやJavaScriptで数値を二乗する単純な例の他、JavaでReactorを使用してイベントストリームを扱うという高度な例を披露してくれました。
riffは2018年にPivotal Cloud Foundryに追加される予定のPivotal Function Service(PFS)の基盤にも用いられるとのことです。
