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

初めてのElasticStack!サービス監視課題をElasticStackで解決するために学んでいること

 初めてのElasticStack!サービス監視課題をElasticStackで解決するために学んでいること

2018/09/19 Elasticsearch勉強会での瀧田の講演資料になります。

Recruit Technologies

September 19, 2018
Tweet

More Decks by Recruit Technologies

Other Decks in Technology

Transcript

  1. 自己紹介 瀧田 直斗 株式会社リクルートテクノロジーズ ITソリューション本部 インフラソリューション部 経歴 2011〜2016 製薬業界様向けのIT会社 -

    営業支援システムのインフラ全般構築担当 2016/9〜 リクルートテクノロジーズ入社 - 商用インフラと社内インフラを担当 最近の技術興味 ・Linuxカーネル、Docker、Kubernetes、GoLang ・データ操作まわりが好き。 ElasticStack、fluentd、embulk、SQL、・・・ 3 (C) Recruit Technologies Co., Ltd. All rights reserved.
  2. なぜElasticStackを選んだのか? 8 (C) Recruit Technologies Co., Ltd. All rights reserved.

    ElasticStackを選んだ理由は以下の5つ 1.オープンソース すぐに試せて、導入までのハードルがない。 ソースコードが見れるので、仕組みがわかる。 2.ドキュメントが豊富 公式ドキュメントが充実している。 3.トレンドである Githubスターランキング87/2,692,674位と上位。(2018/08/20 時点) DB-Enginesで検索エンジンランキング1位。 4.コミュニティが活発である 月1の勉強会、ネット記事が多い。 5.見た目がかっこいい *参考DB-Engines:https://db-engines.com/en/ranking_trend
  3. 課題解決に向けて学んでいること 9 (C) Recruit Technologies Co., Ltd. All rights reserved.

    とはいえ、 ElasticStackを触るのは初めて・・・ どうやってみんなで学んでいくか・・・
  4. 今までの失敗・・・ 10 (C) Recruit Technologies Co., Ltd. All rights reserved.

    よみがえる悪夢・・・ 担当を一人ひとりに割り振ってしまい、属人化・・・・ なんとなくできた、でも障害の時わからない・・・ チームで理解度が異なるとコミュニケーションロスに・・・ プロダクトAを 勉強&構築 プロダクトA,Bをつなげた システム なんでこうしたん だっけ? 担当じゃ無いので わかりません。 ぐぐって構築 よくわからないけど ぐぐったらできた。 システム障害 なんでメモリが枯渇し ているんだろう? プロダクトBを 勉強&構築 Definitionsの設定が 間違えてて障害が・・・ は?Definitions? Definitionsとは・・・
  5. ElasticStackをどのように学んでいるか? 11 (C) Recruit Technologies Co., Ltd. All rights reserved.

    反省を踏まえて・・・ 担当を一人ひとりに割り振ってしまい、後でわからない・・・ チームで理解度が異なるとコミュニケーションロスに・・・ →1人でやらずに基本はチームみんなで勉強する。 ちょうど入門書が出ていたので、ディスカッションできるように宿題を それぞれこなす形式で勉強会を実施。 データ分析基盤構築入門 [Fluentd,Elasticsearch,Kibanaによるログ収集と可視化] 著者鈴木健太,吉田健太郎,大谷純,道井俊介 著 章 サブ 宿題 勉強会日 Elasticsearchの基礎 10-1 特徴とはなにか? その特徴を具体的に説明できる例をだせ 8/17 10-2 アーキテクチャの説明を第三者へわかりやすく 説明出来る例をだせ 8/17 10-3 本章で書かれている内容を第三者へわかりやす く説明せよ 8/17 Elasticsearchの初め方 11-1 ディレクトリ構造を説明せよ 9/7 11-2 可能な限り各自で実行し、その結果を共有せよ 9/7 11-3 各設定がES上の何に関わってくるか説明せよ 9/7 11-4 可能な限り各自で実行し、その結果を共有せよ 9/7 11-5 可能な限り各自で実行し、その結果を共有せよ 各機能の説明をせよ 9/7 11-6 可能な限り各自で実行し、その結果を共有せよ 各機能の説明をせよ 本書で上げているフィールド型以外のフィール ド型を3つ以上あげ、どのようなフィールド型 か説明せよ 9/7 Elasticsearchの運用Tips 12-1 どのようなときに必要なチューニングポイント か説明せよ 9/14 12-2 どのようなときに有効な運用か説明せよ 9/14 12-3 実機で対応する方法を説明せよ 9/14
  6. ElasticStackをどのように学んでいるか? 12 (C) Recruit Technologies Co., Ltd. All rights reserved.

    反省を踏まえて・・・ 担当を一人ひとりに割り振ってしまい、後でわからない・・・ チームで理解度が異なるとコミュニケーションロスに・・・ →1人でやらずに基本はチームみんなで勉強する。 ちょうど入門書が出ていたので、ディスカッションできるように宿題を それそぞれこなす形式で勉強会を実施。 項目 サブ 宿題 勉強会日 beats 全般 beatsとはなにか? beatsはどのようなシリーズがあり、どのような機能 があるか説明せよ beatsのシステム構成について説明せよ 8/24 filebeats filebeatsの仕様、設定はどのような項目があるか 8/24 Plugin Pluginはどのようなものがあるか 8/24 Logstash 全般 Logstashとはなにか? Logstashのシステム構成について説明せよ 8/24 - Logstashの主要機能について説明せよ ・input ・filter ・output 8/24 本で足りない Beats、Logstashは別途 勉強項目を設定
  7. ElasticStackをどのように学んでいるか? 13 (C) Recruit Technologies Co., Ltd. All rights reserved.

    反省を踏まえて・・・ 担当を一人ひとりに割り振ってしまい、後でわからない・・・ チームで理解度が異なるとコミュニケーションロスに・・・ →1人でやらずに基本はチームみんなで勉強する。 最新の公式ドキュメントをあわせて利用。 入門とそれぞれのトピック毎に分かれていてわかりやすかった。 ドキュメントが豊富なものを選んだメリット。 公式ドキュメント https://www.elastic.co/guide/en/elasticsearch/reference/current/setup.html 入門のセクション 基本的な仕組み操作を学べた。
  8. ElasticStackをどのように学んでいるか? 14 (C) Recruit Technologies Co., Ltd. All rights reserved.

    反省を踏まえて・・・ 担当を一人ひとりに割り振ってしまい、後でわからない・・・ →ドキュメント化して、ディスカッションする。 自分の言葉で噛み砕き発表し合う。 RDBとの違いは? ドキュメント指向とは 何が嬉しいの? インデックスって 例えば何? フィールドって どういう概念? grokで何ができるの? Aggregationて何が選べ てどんな動作になるの?
  9. ElasticStackをどのように学んでいるか? 15 (C) Recruit Technologies Co., Ltd. All rights reserved.

    反省を踏まえて・・・ なんとなくできた、でも障害の時わからない・・・ →とにかく試して、なぜできたかをディスカッションする。 それってどういう仕組 でできているの? ログを可視化できた! filebeatsにはharvestersと いう物があって・・・ libbeatという共通ライブ ラリがあって・・・
  10. ElasticStackをどのように学んでいるか? 16 (C) Recruit Technologies Co., Ltd. All rights reserved.

    反省を踏まえて・・・ なんとなくできた、でも障害の時わからない・・・ →気になったらソースコードをみる。 オープンソースを選んだメリット。 filebeatsのharvestersって 実際何しているの? このソースからできていて・・・ レジストリオブジェクトを作成 していて・・・