Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

ぐるなびが活用するElastic Cloud

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Hier ansehen

1 von 68 Anzeige

ぐるなびが活用するElastic Cloud

Herunterladen, um offline zu lesen

ぐるなびは、Elastic Stackを活用することで膨大なログデータを瞬時に解析し障害対応の迅速化を実現しています。オンプレミスでの課題を解決し、よりKibanaの強力な機能を活用するためにElastic Cloudへマイグレーションを行いました。Elastic Cloudによって解決された課題や、今後の検索基盤としての利用、ビジネス戦略の分析用途などの活用事例をご説明いたします。

ぐるなびは、Elastic Stackを活用することで膨大なログデータを瞬時に解析し障害対応の迅速化を実現しています。オンプレミスでの課題を解決し、よりKibanaの強力な機能を活用するためにElastic Cloudへマイグレーションを行いました。Elastic Cloudによって解決された課題や、今後の検索基盤としての利用、ビジネス戦略の分析用途などの活用事例をご説明いたします。

Anzeige
Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (20)

Ähnlich wie ぐるなびが活用するElastic Cloud (20)

Anzeige

Weitere von Elasticsearch (20)

Aktuellste (20)

Anzeige

ぐるなびが活用するElastic Cloud

  1. 1. 株式会社ぐるなび 開発部 Infrastructure Engineering セクション セクション⻑ 岩本 俊明 ぐるなびが活⽤するElastic Cloud 膨⼤なログデータを解析し障害対応の迅速化 戦略的な⽤途での情報活⽤が可能に
  2. 2. 2 ぐるなびについて 00
  3. 3. 3 会社概要 株式会社ぐるなび 設⽴年⽉⽇ 1989年10⽉2⽇(会社設⽴) 2000年2⽉29⽇(株式会社ぐるなび発⾜) 代表取締役社⻑ 杉原 章郎 資本⾦ 2,334百万円 事業内容 パソコン・スマートフォン等による飲⾷店等の 情報提供サービス、飲⾷店等の経営に関わる各 種業務⽀援サービスの提供その他関連する事業 従業員数 単体1,601名 連結1,841名 (2020年3⽉末時点)
  4. 4. 4 企業理念と企業使命 企業理念 ⽇本発、世界へ 「⾷」に繊細なこだわりを持つ国⺠性を⽣かし、 ⽇本ならではのオリジナリティあふれるビジネスを展開します。 企業使命 ⽇本の⾷⽂化を守り育てる
  5. 5. 5 飲⾷店情報サイト「ぐるなび」 開設⽇ 1996年6⽉ ⽉間UU数 5,600万⼈ 会員数 1,885万⼈ 総掲載店舗数 約50万店 総有料加盟店舗数 59,173店 (2019年12⽉時点) (2020年4⽉1⽇時点) (2020年3⽉時点)
  6. 6. 6 ぐるなびの事業 ぐるなびの持つ「強み」をさらに強固なものに。 1,885万⼈の 会員ユーザー (2020年4⽉1⽇時点) ⼈的サポート体制と 飲⾷店ネットワーク “⾷”を軸とした ⾼いプレゼンス 情報の信頼性に基づく グローバル企業との連携 楽天との 資本業務提携 店舗の 業務⽀援ツール
  7. 7. 9 ⾃⼰紹介 岩本 俊明(Toshiaki IWAMOTO) iwamoto-to@gnavi.co.jp ぐるなび11年⽬ ぐるなびサイト全体のインフラ・バックエンド領域の担当 - Functionbeatが好き - パンクが好き - 3ヶ⽉ぶりの東京で緊張中
  8. 8. 10 Elastic Stack 導⼊の背景 01
  9. 9. 11 データサイズ 50+ 500+ 30+TB億オブジェクト種類
  10. 10. 12 ぐるなびのサービス全体 200+ X000+VMs/Containersサービス
  11. 11. 13 Elastic Stack 導入前 ・ 導入後 導⼊前 導⼊後 Service A Service B Service C Service A Service B Service C API A API B API C API A API B API C
  12. 12. 14 Elastic Stack 導入前 ・ 導入後 1h 1s導⼊前 導⼊後
  13. 13. 15 Elastic Cloudはいいの? 02
  14. 14. 16 オンプレミス抱える問題 vesion Release date Elasticsearch 7.7.0 2020/05/04 Elasticsearch 7.6.2 2020/04/01 Elasticsearch 7.6.1 2020/03/05 Elasticsearch 7.6.0 2020/02/12 Elasticsearch 7.5.2 2020/01/22 Elasticsearch 7.5.1 2019/12/19 Elasticsearch 7.5.0 2019/12/03 Elasticsearch 7.4.2 2019/11/01 Elasticsearch 7.4.1 2019/10/24 Elasticsearch 7.4.0 2019/10/02 Elasticsearch 7.3.2 2019/09/13 Elasticsearch 7.3.1 2019/08/23 Elasticsearch 7.3.0 2019/08/01 Elasticsearch 7.2.1 2019/07/31 Elasticsearch 7.2.0 2019/06/26 Elasticsearch 7.1.1 2019/05/29 Elasticsearch 7.1.0 2019/05/21 Elasticsearch 7.0.1 2019/05/02 Elasticsearch 7.0.0 2019/04/11 バージョンアップがシンドイ
  15. 15. 17 オンプレミス抱える問題 新しいバージョンが出た︕
  16. 16. 18 オンプレミス抱える問題 急いで調整
  17. 17. 19 オンプレミス抱える問題 • テスト環境でバージョンアップで問題が起きないか確認 • Breaking changes を⾒てゾッとしたり • ⽌まらないログに注意を払いながら、無停⽌でローリング アップデート(やたら時間がかかる) • やっとの思いで終わったら。。。。。 次のバージョンが出る
  18. 18. 20 オンプレミス抱える問題 運⽤負荷を下げながら 安定的に使える⽅法はないか︖
  19. 19. 21 オンプレミス抱える問題 あった︕
  20. 20. 22
  21. 21. 23 Elastic Cloud でのバージョンアップの流れ 5d 3c導⼊前 導⼊後 1 Click 2 Click 3 Click 最新版をリリース後すぐに利⽤できる
  22. 22. 24 なぜ最新版にこだわりたいか? Visualize Lens Kibanaはバージョンアップでより使いやすい Visualizeやその他機能がガンガン追加される。 Kibanaを良さを最⼤限活かすには 最新版が重要なポイント︕
  23. 23. 25 機能 03
  24. 24. 26 これが使いたかったら? Watcher Alerts and Actions Security Machine Learning
  25. 25. 27 Watcher ログアラート Elastic Query DSL でかなり柔軟にアラート検知を設定できる (Count,90th percentile, average..) 設定はJSONだけど・・
  26. 26. 28 Watcher watcher SlackTwiliowebhook Dev tools Trigger Interval Time/Date Input Index/query Condition Total.hit Action API src_ip : EC2
  27. 27. 29 Alerts and Actions UI操作アラートを管理 できるようになった SIEM,APM,Metric.. とか バージョン7.7で搭載された新機能
  28. 28. 30 Security • 安全に使うには最低限必要な機能 • ログインユーザのロール設定(かなり細かい) • Cluster privileges(snaphost,shutdown,manage..) • Index privileges(create,create_doc,read,write,delete) • Spaces • Space単位での制御 • API Keyを発⾏できる • 検索基盤として利⽤した時の参照、更新の制御 • Logstashからデータを集める時に利⽤
  29. 29. 31 Logs Stream • tailf コマンドのような • どんなログでも対応できる(messageがないとダメ) • Defaultはfilebeat-*が設定されている • Kubernetesとの相性はいい、エラーログを瞬時に⾒つけられる • Stream Live に [Highlights]をつけられる
  30. 30. 32 Logs Log Rate / Machine Learning analysis Messageを機械学習を使って条件検知をしてくる Count(数)で設定されているので、同じような条件のログ から異常値を検出する。 設定がほとんどいらない。今後の拡張にも期待。
  31. 31. 33 ハイブリッドクラウド環境におけるログ分析・可観測性 04
  32. 32. 34 On-Prem.#2 On-Prem.#1 Public Cloud #1 Public Cloud #2 マルチクラウド・マルチDC環境のモニタリング
  33. 33. 35 マルチクラウド・マルチDC環境のモニタリング アプリケーション実⾏環境が増えることで ログが分散することで統合的なモニタリングができない クラウド・オンプレミスなど場所にとらわれない ログを集中管理できるプラットフォームが必要
  34. 34. 36 あった︕ マルチクラウド・マルチDC環境のモニタリング
  35. 35. 37
  36. 36. 38 マルチクラウド・マルチDC環境のモニタリング on Elastic Cloud On-Prem.#2 On-Prem.#1 Public Cloud #1 Public Cloud #2
  37. 37. 39 AWSでは? Amazon CloudWatch logs Amazon Simple Storage Service CloudWatch logs を Lambdaを使ってS3に転送 OR S3にExport
  38. 38. 40 Beats family
  39. 39. 41 Functionbeat Functionbeat ü supports deploying Functionbeat as an AWS Lambda service
  40. 40. 42 Functionbeat runs as a Lambda function Amazon CloudWatch logs Amazon Simple Storage Service Outout S3 backup Outout Elastisearch Outout Logstash Outout Elastisearch
  41. 41. 43 On-premises / AWS Hybrid Input / Output Application Logs Php/java/Nodejs/Ruby Network devices AWS services logs RDS NoSQL/Data Store RKS Container Kubernetes Block storage Web Server Apache access Log Amazon CloudWatch Amazon Simple Storage Service Lambda function Beats Logstash Elastic Cloud Logstash Amazon Simple Storage Service OutputS3 Logstash Input S3 Output Logstash Output elasticsearch On-Premises logs Logstash Elasticsearch OSSKibana Kibana
  42. 42. 44 AWS S3 から Elastic Cloud への転送 Amazon Elastic Container Service AWS services SNS Topic Queue Bucket Elastic Cloud SQSにQueueを⼊れる ファイル単位で SNS Topicに イベントを送信 ログを保存 SQSのQueueを取得 Elastic Cloudに転送 S3バケットからファイル取得 fingerprint { source => "message" target => "[@metadata][fingerprint]" method => "MD5" }
  43. 43. 45 Functionbeat から Elastic Cloud への転送 Elastic Cloud Amazon CloudWatch Lambda function Amazon CloudWatch Lambda function Amazon CloudWatch Lambda function Ingest pipeline Ingest pipeline でフィルタを設定して ログを加⼯する LogGroup単位で Functionbeatを設定 Ingest nodeに負荷がかかる 別途⽴てるとコストもかかる
  44. 44. Functionbeat から Logstash 経由 Elastic Cloud への転送 Amazon Elastic Container Service Elastic Load Balancing Bucket Elastic Cloud Amazon CloudWatch Lambda function Amazon CloudWatch Lambda function Amazon CloudWatch Lambda function バックアップをS3に保存 Elastic Cloudに転送 LogGroup単位で Functionbeatを設定
  45. 45. 47 ビジネス戦略としてのログ活用 05
  46. 46. 48 ビジネス戦略の基本 新サービスを早く提供できる ユーザーのニーズを早く知る
  47. 47. ログで解決! 含まれていないもの - IP address - Exception/Errorの詳細情報 - サービスに特化した情報 - API通信ログなどサーバサイドのログ 全てが含まれている!!
  48. 48. 50 • Client Geo-location : 国/町/緯度・経度 • Client User-Agent : アプリ? or ブラウザ or Bot ビジネス戦略ログ活⽤ • Details: URI/ステータス/レスポンス/遅延/ユーザ属性 • アプリケーション特有の情報等
  49. 49. 51 だれ? どこに? 何を求めて? “ログで解決” ビジネス戦略ログ活⽤
  50. 50. 52 ビジネス戦略ログ活⽤ User attributes Latency/Network User-Agent/Country/City/Geo coordinates
  51. 51. 53 検索基盤としての活用 06(最後)
  52. 52. 54 検索基盤としてのElastic Cloud ü安定していること ü機能に合わせた構成が組め性能が出ること üAWSのリージョン、Multi-AZ構成が取れること üバージョンアップをB/Gぽくできること ü費⽤を抑えられること üElastic社のサポートを受けられること
  53. 53. 55 ü安定していること ü機能に合わせた構成が組め性能が出ること üAWSのリージョン、Multi-AZ構成が取れること üバージョンアップをB/Gぽくできること ü費⽤を抑えられること üElastic社のサポートを受けられること 検索基盤としてのElastic Cloud
  54. 54. 56 ü安定していること ü機能に合わせた構成が組め性能が出ること üAWSのリージョン、Multi-AZ構成が取れること üバージョンアップをB/Gぽくできること ü費⽤を抑えられること üElastic社のサポートを受けられること 検索基盤としてのElastic Cloud
  55. 55. 57 検索基盤としてのElastic Cloud
  56. 56. 58 ü安定していること ü機能に合わせた構成が組め性能が出ること üAWSのリージョン、Multi-AZ構成が取れること üバージョンアップをB/Gぽくできること ü費⽤を抑えられること üElastic社のサポートを受けられること 検索基盤としてのElastic Cloud
  57. 57. 59 検索基盤としてのElastic Cloud
  58. 58. 60 更新API AsiaPacific(Tokyo) 3 nodes ap-northeast-1b 2 zone Amazon S3 endpointendpoint 参照API I/O OptimizedCompute Optimized 検索基盤としてのElastic Cloud ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1b 2 zone ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1b ap-northeast-1c CreateSnapshot Snaphostrestore
  59. 59. 61 ü安定していること ü機能に合わせた構成が組め性能が出ること üAWSのリージョン、Multi-AZ構成が取れること üバージョンアップをB/Gぽくできること ü費⽤を抑えられること üElastic社のサポートを受けられること 検索基盤としてのElastic Cloud
  60. 60. 62 Asia Pacific (Tokyo) ap-northeast-1b ap-northeast-1c endpoint 参照API version 7.x ap-northeast-1b ap-northeast-1c version 8.x endpoint 検索基盤としてのElastic Cloud
  61. 61. 63 ü安定していること ü機能に合わせた構成が組め性能が出ること üAWSのリージョン、Multi-AZ構成が取れること üバージョンアップをB/Gぽくできること ü費⽤を抑えられること üElastic社のサポートを受けられること 検索基盤としてのElastic Cloud
  62. 62. 64 最後に... お願いElasticさん
  63. 63. 65 ü安定していること ü機能に合わせた構成が組め性能が出ること üAWSのリージョン、Multi-AZ構成が取れること üバージョンアップをB/Gぽくできること ü費⽤を抑えられること üElastic社のサポートを受けられること 検索基盤としてのElastic Cloud
  64. 64. 66 US West (Oregon) Asia Pacific (Tokyo) 検索基盤としてのElastic Cloud
  65. 65. 67 更新API AsiaPacific(Tokyo) 3 nodes ap-northeast-1b 2 zone Amazon S3 endpointendpoint 参照API I/O OptimizedCompute Optimized 検索基盤としてのElastic Cloud(今) ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1b 2 zone ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1b ap-northeast-1c CreateSnapshot Snaphostrestore
  66. 66. 68 更新API AsiaPacific(Tokyo) 2 nodes ap-northeast-1b 3 zone endpointendpoint 参照API I/O OptimizedCompute Optimized 検索基盤としてのElastic Cloud(嬉しい) ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1d ap-northeast-1d ap-northeast-1b 3 zone ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1d ap-northeast-1d
  67. 67. 69 更新API AsiaPacific(Tokyo) 2 nodes ap-northeast-1b 3 zone endpointendpoint 参照API I/O OptimizedCompute Optimized 検索基盤としてのElastic Cloud(嬉しい) ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1d ap-northeast-1d ap-northeast-1b 3 zone ap-northeast-1c ap-northeast-1b ap-northeast-1c ap-northeast-1d ap-northeast-1d 東京リージョンは2 zone構成しか選べない ぜひ! 3 zoneを︕
  68. 68. 70 Thank you! Gurunavi,inc. Develop department, Infrastructure Engineering Section. iwamoto-to@gnavi.co.jp

×