Serverlessconf Parisに行ってObservabilityについて考えた

セクションナイン吉田真吾@yoshidashingo)です。

2018.2.14,15の2日間、パリで開催されたServerlessconf Parisに参加してきました。今回のパリ開催は東京を私がオーガナイズしているのと同様、D2SIというパリのコンサルタンシーが行うフランチャイズ形式で行われました。

http://paris.serverlessconf.ioparis.serverlessconf.io

Togetterまとめ

togetter.com

Observavility

f:id:yoshidashingo:20180215091930j:plain

1本目はヤンさんのObservavility に関するトラックでした。Observavilityはマイクロサービス界隈を中心に重要なトピックになっており、さらにサーバーレス界隈でも、複雑化するピタゴラスイッチを分散トレーシングするサービスやツールが増えてきてることから注目度が上がっているため興味深い内容でした。 昨年、東京のカンファレンスにも参加してくれた Espagon や、DataDog らもブースを構えておりプロモーションを頑張っていました。

www.slideshare.net

blog.d2-si.fr

Observabilityについて書かれた記事の初出はこのTwitterの記事あたりでしょうか。Twitterをモノリシックから分散アーキテクチャに変更したことで、システム間の複雑性が上がったため、複数のサービスにまたがる処理において発生した問題の原因箇所の特定のための可視性の担保が重要だったという話で、実際にどうメトリクスを収集したか、可視化したか、モニタリングしてアラートしたかといった内容が書かれています。

blog.twitter.com

2013年に続き2016年にも。

blog.twitter.com

時は流れてマイクロサービスアーキテクチャが普及してきた昨今、単一システムごとのメトリックをダッシュボードに並べてもシステム全体が見えないモニタリングのしにくさ、障害検知したすべてのノードからのアラート地獄、分散環境内での根本原因箇所の特定の難しさ、セントラライズされずに散らかったログなど、モノリシックなシステムにはなかった課題を解決する必要があり、まさにObservabilityが課題となっておりますが、当初はMonitoringの文脈の上位概念だったObservabilityが、これらの課題を解決するための「モニタリング」「スマートなアラート、ダッシュボード」「分散環境上でのトレーサビリティ、障害検知」「ログ収集、分析」といった、オペレーションに必要なすべての要素の上位概念として最近では位置付けられているみたいです。

  • Monitoring
  • Alerting/visualization
  • Distributed systems tracing infrastructure
  • Log aggregation/analytics

medium.com

OSSの分散トレーシングツールもちまたにたくさんあります。

github.com github.com github.com

さて、サーバーレスで構築されたマイクロサービスにおいては、サービス間のトラフィックモニターや、障害箇所の特定のしやすい可視化ダッシュボードや、スマートなアラートシステム以外に、FaaS独特の課題を解決するためのトレースも必要になります。たとえば、Lambdaのイベント連携のトレースができる AWS X-Ray などもそうですが、現在X-Rayは非同期呼び出しの場合の連携先まではトレースされません。Espagonなどはこれらに対応してると口頭で聞いてますが、どうやってるかなどは企業秘密だそうで、いずれにしても「サーバーレス」で「非同期」な「分散環境」をトレースする方法は、システムをどう可視化して保守したいかによって、複数の選択肢の中から組み合わせて実現するのが現在のベストプラクティスみたいです。

※いちおこんなやり方はできそう↓ qiita.com

ということで Charity Majors さんもこんな感じで語っているとおり、サーバーレスな分散システムには、そのシステムのアーキテクチャ自体がモノリシックから大幅に流儀の違う形に変更したように、モニタリングやトレース、ロギングについても大幅なアップデートを行い、Observabilityを確保する必要がありますね。

blog.intercom.com

speakerdeck.com

CNCFのホワイトペーパー

f:id:yoshidashingo:20180215121240j:plain

また、CNCFのServerless WGから発行されたホワイトペーパーについての話も前評判の割には面白かったです。内容について歯切れは悪いですが網羅的に今までのサーバーレスの話題が記載されてはいるかなと(斜め読みしかしてませんが)。ただし、海外ではサーバーレス界隈の人の間ではまったく話題になってません。なんでだろうなと思ったんですが、おそらくもうここ周辺の話題(定義とか歴史的経緯とか)に完全に食傷気味なのと、CNCFの標準化に向けたイニシアティブをどう扱ったらいいものか対応し兼ねてるということなのかなと。たしかにもう2年やってますからね、こういう話。

https://github.com/cncf/wg-serverless/blob/master/whitepaper/README.mdgithub.com

www.publickey1.jp

Accelerating DevOps with Serverless

俺らの@ijinさん。

f:id:yoshidashingo:20180215121831j:plain

youtu.be

その他

Randallがライブコーディングしたり、nuclioが結構インテリジェントエッジの部分にフォーカスして十分なソリューションになっていたり、RyanがSpaceXとサーバーレスの小話で最後〆てたり、結構面白かったです。

blog.d2-si.fr

次回開催のことなど

  • 次回は5月に「BINARIS」が運営母体で「テルアビブ(イスラエル)」で開催されるそうです。
  • 東京も今年も9月か10月に開催予定です。準備頑張ります。

パリについてのメモとか

  • 今回は滞在が24時間以内ということで、エッフェル塔も凱旋門も回れずでした。6月あたりが最高のシーズンらしいので、また6月に来てシェイクスピアアンドカンパニーとかちゃんと観光で寄ってみようと思います。
  • カンファレンス会場であるEspace Saint Martinと同じブロックにある レバンパリ という、ニューヨークのAce Hotelを2段階くらい高級にした感じのホテルに泊まったのですが、設備はAce Hotelそっくりで派手ではないのですが、シャンプー、石鹸、コロンにいたるまで最高に自分に合うもので、またパリに行く機会があれば毎回あそこがいいなと思うくらい良かったです。もし行く人がいれば参考にしてください。
  • メシは何を食べても美味かった。
  • Amex使えないところ多かった。

Nuit à Paris