Elastic{ON} 2018 2日目レポート
Elastic{ON} 2018に参加してきます! 現地の状況を毎日速報でご紹介しますのでお楽しみに!
Step up Elastic Stack
- 2018年03月01日公開
NTTテクノクロスの大塚です。
さて、Elastic{ON} 2018の2日目です。 昨日のKeynoteとPartyの興奮も冷めきらぬまま、今日から本格的なセッションが始まりました。
What's Evolving in Elasticsearch
6系までのElasticsearchの進化と今後の新機能について話を聞いてきました。
7系までのバージョンアップでindexの書き込み速度の向上と、indexサイズの削減について言及されました。
- 1系から比較してindexing速度は40%向上を実現
- 6系からは_all filedのデフォルト無効化、index shrinkingを利用することで、5系と比較して60%の容量削減を実現
また、Keynoteでも言及されたData Rollupsを利用することで更なるindexサイズの削減が可能になります。
indexの読み込み速度の向上としては、以下がキーワードとして挙がっていました。
- Cross Cluster Search(Across two major versions)
- Adaptive Replica Selection
- Index Sorting
セッションで一番盛り上がったのは、やはりSQLの話題です。詳細は明日のセッションで発表があると思いますが、以下について簡単な説明がありました。Coming Soonとあるので、早ければ6.3で使えるようになるかもしれません。
- SQLからElasticsearchのクエリ変換
- 対応するSQL Client
さまざまなクライアントに対応しており、Query DSLを書けないユーザでも簡単に利用することができるようになるため、利用シーンが更に増えると考えています。
What's Cooking in Kibana
Kibana7からUIが変わります。EUI Frameworkという新しいFrameworkを使用して画面を作成できるにようになります。 また、5系、6系との互換性を維持するとの話がありましたが、具体的にどうなるかはまだまだ不明です。
また、次のような話題が挙がっていました。
- 管理UIの充実
Index Lifecycle Management
上記2つ機能を組み合わせてindex管理を効率化できることを強調していました。
- 可視化で選べるmapが増える
-
Appsが増える
- Infra UI
What's Brewing in Beats
Beatsでは以下の新機能を利用したk8sクラスタの監視のデモが印象的でした。
- Filebeatのk8s module
- Metricbeatのk8s module
- Infra UI
- Waffle Map
上記4つの機能を組み合わせて利用することで、k8sで管理しているサーバやポッドについて多角的に監視する機能を実現しています。
6.2からKibanaのMonitoring機能(※)でBeats Familyの監視ができるようになったことも大きく取り上げられていました。
※X-PackのBasicライセンスで使用可能
さらに、LogstashのPersistent Queueと同一の機能がBeats Familyに実装されます。データの可用性・堅牢性がさらに高まる一方で、性能や構造の複雑性が増すなどのデメリットも考えられます。特に気になる性能ですが本日のセッションでは発表がなかったため今後の追加情報を待ちたいと思います。
Whta's the Latest in Logstash
Logstashのセッションでは、最新のLogstashの機能の紹介と今後の実装予定の機能の紹介がありました。実装予定の気になる機能を紹介します。
設定情報は全てElasticsearchで管理
Logstashの設定情報は全てElasticsearchで管理するようになるようです。設定ファイルの管理の手間から開放されるので、嬉しい機能のひとつです。
Interpipeline
いままで output {tcp ...}
-> input {tcp ...}
など、ローカルノード内で複数のPipelineを使用する場合に実施していた方法が効率的に実施できるようになります。
上記の例では設定がわかりづらく、また複数のPipelineを使用する場合に別のポートを使用する必要がありました。
Interpipeline では、output {internal ...}
-> input {internal ...}
と、わかりやすい専用の記載が可能であり、またポートを共有することでリソース効率性もあがります。
APM with the Elastic Stack
6.2でGAになったAPMの話を聞いてきました。
APMの位置付け
APMはアプリケーション監視やユーザ行動(RUM: Real User Monitoring)を監視するソフトウェアです。
もともとログ監視をBeatsやLogstashで行い、サーバ監視をBeatsで行っていましたが、APMによって監視の領域が広がったことで全領域の監視がElastic Stackによって出来るようになりました。
アプリケーション監視
アプリケーション監視は以下の3つを監視することができます。
- リクエスト監視
- ワーカー監視(バックグラウンドのジョブ監視)
- エラー監視
ここではデモを通して説明のあったリクエスト監視について紹介します。
以下のような形でリクエストのパフォーマンスを一覧で見ることができます。
また、トランザクションのサンプルとしてSQLの実行時間をみることができたり、
気になる箇所はSQLの実行箇所を表示することもでき、遅延が発生したときに迅速に問題箇所を特定できたりと嬉しい機能盛りだくさんです!
ユーザ行動監視(RUM: Real User Monitoring)
次にユーザ行動監視です。まだアルファ版なのでできることは少ないですが,「Navigation Timing(ブラウザ側の表示時間)」 と 「Resources(リソースへのアクセス時間)」 の計測ができるようになり、たとえば特定の環境での表示遅延が発生している場合に迅速に解析ができるようなります。
Watcherとの連携
APMで集めたデータはElasticsearchのIndexに蓄積されるためWatcherでのAlertが可能で、異常が発生したときにすぐに通知することができます。
セッションの中ではセキュリティの事例紹介としてXSS(クロスサイト・スクリプティング)やSQLi(SQLインジェクション)の検知が紹介されていました。
今日はひとまずここまで!
Elastic社主催 プライベートイベント(懇親会)
夜はElastic社主宰の懇親会「Lucky Strike Night」に参加してきました。
ボーリング大会です。
西園がちゃっかり(!?)景品を当てました!
NTTテクノクロス株式会社
クラウド&セキュリティ事業部
第二事業ユニット