joppot

コピペで絶対動く。説明を妥協しない

サーバ

td-agent-uiのセットアップとfluent-catで動作確認

投稿日:2017年3月6日 更新日:

Pocket


概要

みなさんこんにちはcandleです。今回はtd-agent-uiのセットアップと動作確認をしてみたいと思います。
td-agentはfluentdをよりサーバで運用しやすいように、パッケージ化したものです。


前提

td-agentがインストールされている
Centos6.5に構築する場合は以下の記事を参考にしてください。
https://joppot.info/2017/03/03/3418

EC2の場合は、こちらを
https://joppot.info/2017/03/04/3434

SPONSORED LINK


td-agent-uiの起動

td-agent-uiはtd-agentを入れた段階ですでにインストールされます。
td-agent-uiの起動コマンドは以下になります。

sudo td-agent-ui start

いくつか警告が出ますが、問題ないでしょう。


td-agent-uiにアクセス

サーバーが起動したら、td-agent-uiにアクセスします。
自分のIPアドレス+9292にアクセスします。

vagrantの場合はVagrantfileに書いたIPアドレス。

EC2の場合は設定されている公開IPアドレスにアクセスしましょう。

初期設定で、 アカウント名は「admin」パスワードは「changeme」になります。

ログインすると、以下の画面が表示されます。



パスワードを変更する

最初にパスワードを変更しておきましょう。

もしも、どこからでもアクセスできるようにしている場合は初期設定のパスワードでは危険です。

左のメニューの「パスワード管理」をクリックします。

現在のパスワードに「changeme」を入れて、パスワードには新しいパスワードを設定します。

td-agentのセットアップ

トップ画面に戻り、td-agentをセットアップします。

トップ画面では「fluentdをセットアップ」と「td-agentをセットアップ」があります。

基本的にどちらもfluentdの機能が使えます。私はtd-agentの方をおすすめします。
「td-agentをセットアップ」をクリックします。

設定ファイルなどをtd-agent-uiに追加する画面が出てきます。
ちなみに「作成」ボタンを押す前から、すでに「/etc/td-agent/td-agent.conf」などのファイルは存在します。
「作成」ボタンを押しましょう。

セットアップが終わると、以下のような画面になります。
もしも、ログが表示されない場合は「td-agent」を再起動しましょう。

セットアップが完了しました。

td-agentの収集ログの設定

それでは実際に、td-agentのconfファイルをいじって、ログを収集するための設定をしてみましょう。

td-agentの設定ファイルは以下の場所にあります。

/etc/td-agent/td-agent.conf

もちろん、ターミナルからでも編集できるのですが、
せっかくなので、td-agent-uiから編集してみましょう。

左のメニューの、「設定ファイルの編集」を押しましょう。

右上の「編集」ボタンをクリックします。

セキュリティ面なども考慮して、使わない設定は削除した方が良いです。
設定ファイルの内容を全て削除して、以下を記述します。

<source>
 @type forward
</source>

<match debug.**>
  type stdout
</match>

「更新」ボタンを押して、更新しましょう。

上の設定はこんな感じの意味になります。とはどのログを収集するか、この場合はtype forwardでtd-agentサーバにTCPで飛んできたものについて、という意味です。

はsource type forwardで飛んできた “debug.なんらかの文字列”のタグがついたものはtd-agentの標準出力に表示するという意味です。

設定ファイルの変更は以上です。

fluent-catでデバッグしてみる

それでは実際にtd-agentがdebug.**のタグを取得できるか試してみましょう。

fluent-catコマンドはfluentd(td-agent)にtcpでデータを投げるコマンドです。
コマンドの場所はPATHが通ってないところにあるので、よく使う方はPATHを通しておくと便利でしょう。
今回は直接使います。

/opt/td-agent/embedded/bin/fluent-cat

にコマンドはあります。

以下のコマンドでfluentdに受けてデータを投げれます。

echo '{"I say":"hello"}' | /opt/td-agent/embedded/bin/fluent-cat debug.ok

echoの中身は適当なjsonです。それをパイプしてdebug.okというタグをつけてtd-agentに投げています。

ターミナルには何も表示されませんが、
ブラウザのトップのログをみると、確かに届いているのがわかると思います。

うまくいきましたね。

まとめ

これ以上のあれこれはこちらのサイトがより詳しくまとめているので、そちらを参考にしてださい。
https://cloudpack.media/9789

最後に1つだけ、td-agent-uiはphpmyadminなどと同じように、便利な反面セキュリティ的には狙われやすいので、極力起動せずに、仮に起動してもIPアドレスでアクセス制限するなどをした方が良いでしょう。

この記事では最低限のセットアップとテストをやってみました。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-サーバ
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

sshコマンドをaliasかssh configを使って短縮する

概要 みなさんこんにちはcandleです。今回はsshの接続先のホスト名を短くする方法です。 ssh接続は非常に強力なネットワークツールですが、接続先の指定がやや面倒ですね。それを単純にする方法をまと …

wordpress skeletonを使った開発環境の構築

はじめに みなさんこんにちはcandleです。wordpressは大変便利なのですが、いまいちgitで管理するのが難しいものです。 というのも、wordpress全体をgit管理対象にしてしまうと、w …

ruby on railsのbundleのGemfileでインストールしたgemを削除する

概要 みなんさんこんにちはcandleです。今回は間違って入れてしまったり、不必要になったgemの削除のやり方を紹介します。 前提 ruby on railsの環境が整っている gemの概念を理解して …

railsのfluent-loggerとdevise gemを使ってユーザーの行動をfluentdサーバに収集する

概要 fluentdと言えば、ビックデータで扱うようなデータを集め出力するサーバですが、これとrailsのfluent-logger gemとdevise gemを組み合わせてユーザーの行動ログをとっ …

AWS環境でELB(ロードバランサー)とEC2サーバでapacheを使っている場合にhttpからhttpsにリダイレクトする方法

概要 みなさんこんにちはcandleです。今回はマニアックな記事ですが、恐らくスタートアップ企業などではわりと使う内容だと思うのでまとめておきます。 この方法が全てのサービス上でベストなやり方なのかど …

プロフィール


ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー

スポンサードリンク

アーカイブ