Amazon Elasticsearch ServiceにMySQLのデータを投入してkibanaで可視化してみる
MySQLのデータの可視化にAmazon Elasticsearch Service + kibanaを使用したくてその設定をしてみました。
MySQLとAESの間はlogstash(EC2)でつないでいます。

目次
Amazon Elasticsearch Servicのセットアップ
マネージメントコンソールでAmazon Elasticsearch Serviceをクリックします。

domain nameで任意の名前を入力します。

インスタンスを設定します。今回はテストなんでt2.microでEBSにしています。

アクセスポリシーはIPアドレスで制限してみます。
(例はプライベートアドレスで書いてますがグローバルIPが必要です。)
で、ここにkibanaにアクセスに来るグローバルIPもですが、logstashのEC2のEIPも設定が必要です。

完了です。「Processing」になったら使えます。

logstash(EC2)の操作
EC2の構築は割愛しますが下記を設定してます。
- ロールはAdministratorAccessを割り当ててます。
- セキュリティグループは専用で作成しRDSのセキュリティグループで3306ポートにアクセス可能として設定します。
-
logstashのインストール
- logstash-output-amazon_esプラグインのインストール
- logstash-input-jdbcプラグインのインストール
- mysql-jdbc-connectorのダウンロード
をEC2でします。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
$ wget https://download.elastic.co/logstash/logstash/packages/centos/logstash-1.5.4-1.noarch.rpm $ sudo rpm -ivh logstash-1.5.4-1.noarch.rpm $ /opt/logstash/bin/logstash --version logstash 1.5.4 $ export PATH=$PATH:/opt/logstash/bin $ sudo /opt/logstash/bin/plugin install logstash-output-amazon_es Validating logstash-output-amazon_es Installing logstash-output-amazon_es Installation successful $ sudo /opt/logstash/bin/plugin install logstash-input-jdbc Validating logstash-input-jdbc Installing logstash-input-jdbc Installation successful $ wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.38.tar.gz $ sudo tar xzf mysql-connector-java-5.1.38.tar.gz |
例えばtable_name.confとかで下記を記述したファイルを作成します。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
input { jdbc { jdbc_driver_library => "mysql-connector-java-5.1.38/mysql-connector-java-5.1.38-bin.jar" jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_connection_string => "jdbc:mysql://*************.ap-northeast-1.rds.amazonaws.com:3306/db" jdbc_user => "user" jdbc_password => "******" statement => "select * from table_name" } } output { amazon_es { hosts => ["search-**********************.ap-northeast-1.es.amazonaws.com"] region => "ap-northeast-1" index => "table_name" document_type => "table_name" } stdout{ } } |
logstashの引数でtable_name.confファイルを指定して実行します。
|
1 2 |
logstash -f table_name.conf |
マッピングも自動で行われてデータがkibanaから確認できます。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「AWS教科書 AWS認定デベロッパーアソシエイト テキスト&問題集 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
Amazon Location Service入門ワークショップ-ジオフェンス
関連記事 Amazon Location Service入門ワークショップの前提 …
-
-
AWS Backupで取得したAMIとスナップショットの削除
個人で使っているAWSリソースの断捨離をしてました。 Cloud9も複数アカウン …
-
-
CloudFront用のAWS管理プレフィックスリストを使用しました
このブログでは、CloudFrontのカスタムヘッダーとALBのルーティングを組 …
-
-
AWS CloudWatch LogsエージェントでAmazon EC2上のNginxのaccess.log , error.log , php-fpm error.log , Linuxのmessages , secureログを収集する
参考ページ クイックスタート: 実行中の EC2 インスタンスに CloudWa …
-
-
ヤマムギ vol.7 AWSアカウント作成 & 最初の設定ハンズオン 手順
ヤマムギとは from Mitsuhiro Yamashita 「AWSではじめ …
-
-
AWS Summit 2016 Tokyoに参加してきました (Day3)
飛天3日目です。 JAWS-UGブースのすぐ前にあったこのお水がめちゃめちゃおい …
-
-
Amazon CloudSearchからAmazon Elasticsearch Serviceへ変えました
全文検索をする必要がありまして、本当はCloudSearchを使い続けたいのです …
-
-
kintoneで設定したスケジュールにあわせてlambda(python)からSQSへメッセージを送る
EC2の起動停止をそろそろ手動でやるのも疲れてきそうなのと、やはり停止するのを忘 …
-
-
AWS SSOのパスワードリマインダーでADのパスワードを変更
AWS Managed Microsoft ADを構築してユーザー追加までで構築 …
-
-
slackのbotにWikipediaを調べてもらう(Python on AWS Lambda + API Gateway)
slackのbotに少しでも役に立ってもらおうと、Wikipediaを調べてもら …
