試験公開中

このエントリーをはてなブックマークに追加

Elastic Stackで作るBI環境

インプレスR&D

1,200円+税

無料BIツール「ELK Stack」はじめてのチュートリアル書籍! ログや情報をBI環境Elastic Stackでサクッと分析!

関連サイト

本書の関連ページが用意されています。

内容紹介

【誰でも簡単にログ分析!OSSのBIツールElastic Stack解説書!】

サーバーのアクセスログやTwitterのつぶやき、様々な機器の動作状況など各種のログファイルをExcelで分析していませんか?本書はOSSで提供されているBI環境「Elastic Stack」をつかってログファイルを集計し、グラフなどでビジュアル豊かに分析するための環境構築チュートリアルです。

《本書籍は、技術系同人誌即売会「技術書典2」で頒布されたものを底本に、加筆修正を行ったものです》

書誌情報

  • 著者: 石井 葵
  • 発行日: (紙書籍版発行日: 2017-07-14)
  • 最終更新日: 2017-07-14
  • バージョン: 1.0.0
  • ページ数: 104ページ(PDF版換算)
  • 対応フォーマット: PDF, EPUB
  • 出版社: インプレスR&D

対象読者

著者について

石井 葵

オンプレ環境の方が得意だけど、最近はAWSも勉強中なインフラエンジニア。Elasticsearch,Kibana,Logstashを使用したデータ分析基盤の設計・構築をメインに行なっている。ご飯とお菓子を自分で作って食べるのが最近の趣味。

目次

はじめに

おことわり

表記関係について

Elastic Stackって何?

  • Logstash
  • Elasticsearch
  • Kibana
  • Beats
  • Elastic Cloud
  • 基本的な構成

環境構築

  • インストールの順番
  • 事前準備
  • Elasticsearchのインストール
    • とにかく使ってみたい場合(Linux):zip ファイル・tar.gz ファイル
    • ちゃんと運用もしたい場合(RedHat 系Linux):rpm パッケージ
    • ちゃんと運用もしたい場合(Debian 系Linux):deb パッケージ
    • とにかく使ってみたい、かつDocker 実行環境がある場合:Docker コンテナ
    • Puppet、Chef、Ansible の実行環境がある場合:GitHub のレシピを利用
    • Windows/Mac 上に構築する場合:zip ファイル
  • zipファイルを用いたインストール(Elasticsearch)
    • zip ファイルのダウンロード
    • 作業用ディレクトリを作成(好みで良いです)
    • zip ファイルの解凍
  • rpm パッケージを用いたインストール(Elasticsearch)
    • インストール用PGP Key の入手
    • RPM リポジトリからインストールする場合
    • RPM パッケージをダウンロードしてインストールする場合
  • debパッケージを用いたインストール(Elasticsearch)
    • インストール用PGP Key の入手
    • APT リポジトリからインストールする場合
    • deb パッケージをダウンロードしてインストールする場合
  • Elasticsearch起動前の設定項目
    • メモリ使用率の変更
  • Elasticsearchの動作確認
    • Elasticsearch の起動(zip ファイルでインストールした場合)
    • Elasticsearch の起動(パッケージからインストールした場合)
    • 動作確認
  • Logstashのインストール
    • とにかく使ってみたい場合(Linux):zip ファイル
    • ちゃんと運用もしたい場合(rpm パッケージを利用するLinux):rpm パッケージ
    • ちゃんと運用もしたい場合(deb パッケージを利用するLinux):deb パッケージ
    • とにかく使ってみたい、かつDocker 実行環境がある場合:Docker コンテナ
    • Puppet、Chef、Ansible の実行環境がある場合:GitHub のレシピを利用
    • Windows/Mac 上に構築する場合:zip ファイル
  • zipファイルを用いたインストール(Logstash)
    • 公式サイトからzip ファイルをダウンロード
    • zip ファイルの解凍
  • rpm パッケージを用いたインストール(Logstash)
    • インストール用PGP Key の入手
    • RPM リポジトリからインストールする場合
  • debパッケージを用いたインストール(Logstash)
    • 必要パッケージのインストール
    • apt リポジトリからインストールする場合
  • Logstash起動前の設定項目
    • 動作確認用のlogstash.conf 作成
  • Logstashの動作確認
    • Logstash の起動(zip ファイルでインストールした場合)
    • Logstash の起動(パッケージからインストールした場合)
    • 動作確認
  • Kibanaのインストール
    • zip ファイルを用いたインストール
    • 公式サイトからzip ファイルをダウンロード
    • zip ファイルの解凍
  • rpm パッケージを用いたインストール(Kibana)
    • インストール用PGP Key の入手
    • RPM リポジトリからインストールする場合
    • rpm パッケージをダウンロードしてインストールする場合
  • debパッケージを用いたインストール(Kibana)
    • インストール用PGP Key の入手
    • 必要パッケージのインストール
    • apt リポジトリからインストールする場合
    • deb パッケージをダウンロードしてインストールする場合
  • Kibana起動前の設定項目
    • kibana.yml の編集
  • Kibanaの動作確認
    • Kibana の起動
    • 動作確認

データを集めて可視化しよう(Twitterのつぶやき履歴編)

  • Twilogサービスを利用したログ取得(ログデータの準備)
    • Twilog サービスへの登録
    • 過去ログのダウンロード
  • logstash.confとは?
    • input
    • filter
    • output
    • input プラグイン
    • path の記載
    • 取り込んだログを標準出力する
    • ファイルの読み込み位置を指定する
    • ファイルにタグをつけて分類する
    • 指定したファイルの種類は除外する
  • outputプラグイン
    • Elasticsearch にデータを送る
    • 送付先index の指定
  • filterプラグイン
    • CSV 形式のログを分割する
    • カラムのデータ型を変更する
    • 不要なfield を消す
    • ログが出力された時刻を編集する
  • logstash.confのテスト方法
  • ここまでで作成したlogstash.confをおさらいする

データを集めて可視化しよう(Beatsを使って情報を集めてみる)

  • Beatsのインストール
  • パッケージを使ってインストールする場合(Windows以外のOS)
  • Windowsにインストールする場合
  • Metricbeatのセットアップ
  • metricbeat.ymlの編集
  • ログの送信元を指定する(output)
  • コンフィグのテストを行う
  • Metricbeatの起動
  • パッケージからインストールした場合
  • WIndowsでMetricbeatを起動する場合

Kibanaを使ったデータの閲覧

  • KibanaのUI
    • Discover:データの詳細を閲覧する
    • Visualize:データを使ってグラフを作成する
    • Dashboard:グラフを集めて閲覧する
    • Timelion:関数を定義してグラフを複数描画する
    • Dev Tools:Elasticsearch 用のクエリをテストする
    • Management:Kibana の設定画面
  • Discover画面を使ってみよう 
  • indexの紐付け
  • 新しくデータを取り込んだ場合
  • Discoverでログを閲覧する
    • 各ボタンの意味
  • データの検索期間を変更する
    • Quick を使って検索期間を変更
    • Relative を使って検索期間を変更
    • Absolute を使って検索期間を変更
  • Discover画面でログを詳しく閲覧しよう
    • ログの詳細を表示する
    • ログの傾向を閲覧する
    • 虫眼鏡を使って特定のデータのみ選択する&除外する
  • 自分で検索してみよう
    • 条件に一致するものを取り出す
    • 条件に一致しないものを取り出す
    • 複数検索条件を指定する
    • A かつB の場合を検索する
    • A またはB の場合を検索する
  • 検索条件を保存しよう

Visualize画面でデータを可視化する

  • Visualize画面で作成できるグラフの種類
    • Area chart
    • Vertical bar chart(Horizontal Bar:バージョン5.4 以降)
    • Pie chart
    • Line chart
    • Data table
    • Heartmap chart
    • Markdown widget
    • Metric
    • Tag cloud
    • Tile map
    • Timeseries
    • Visual Builder(バージョン5.4 以降)
  • Visualize画面でグラフを作成する
    • グラフの作成:グラフを選択する
    • グラフの作成:円グラフを指定する
    • グラフを作成する:metrics の設定を行う
    • グラフを作成する:buckets の設定を行う
    • グラフを作成する:Options を設定する
    • グラフを作成する:グラフを保存する
    • グラフを作成するときに着目するべき部分

Dashboard画面を使ってグラフを一覧表示する

  • グラフを並べる
  • グラフの大きさを指定する
  • 保存する(検索期間を保持する/しないを選択する)
  • グラフの色を変更
  • 作成したDashboardを編集する(Kibana5.4以降)

トラブルシューティング

  • Elasticsearchが起動しない
  • Elasticsearchに対してcurlコマンドを発行できない
    • ①/etc/hosts 記載が間違っていないか?
    • ②/etc/hosts でIPv6 を使っていないか?
    • ③通信に必要なポートは空いているか?
    • ④ elasticsearch.yml に設定した値は間違っていないか?
  • Elasticsearchサービスをrestartしようとすると、エラーが出力される
  • Kibana画面の様子がおかしい

おわりに

著者紹介

Home 書籍一覧 Elastic Stackで作るBI環境 ▲ ページトップへ戻る