Graphite
+ Grafana
を収集および表示するためのサービスのインストールと構成の経験を共有したいとGrafana
。
私は長い間検索し、たくさん読み、英語の記事を2つ見つけ、自分の記事を追加しました。その結果、この記事が判明しました。
少しの背景..
Graphite
は、サーバーまたはホームPCのプロパティのメトリック(数値)を表示するためのシステムです。
Carbon
は、メトリックが書き込まれるデーモン/バックエンドです。
Grafana
は、 Graphite
より美しく便利なWebフェイスです。
それでは、始めましょう。
PHP + Nginx + MySQLのインストールと構成
PHP + Nginx + MySQLをインストールします
ここではすべてが非常に簡単です。
sudo apt install php5-fpm php5-json php5-mysql sudo apt install nginx nginx-extras sudo apt install mysql-server
インストール中に、 MySQL
root
パスワードの入力を求められroot
。
phpMyAdminをインストールする
MySQL
へのアクセスをより便利にするにはMySQL
phpMyAdmin
インストールしMySQL
。
cd /usr/share/ sudo wget https://files.phpmyadmin.net/phpMyAdmin/4.6.2/phpMyAdmin-4.6.2-all-languages.zip sudo unzip phpMyAdmin-4.6.2-all-languages.zip sudo rm phpMyAdmin-4.6.2-all-languages.zip sudo mv phpMyAdmin-4.6.2-all-languages phpmyadmin
phpMyAdmin用のNginxの構成
設定ファイル/etc/nginx/conf.d/pma.conf
に次のように記述します。
server { server_name pma.your.site; listen 80; location / { root /usr/share/phpmyadmin/; index index.php index.html index.htm; location ~ ^/(.+\.php)$ { try_files $uri =404; root /usr/share/phpmyadmin/; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include /etc/nginx/fastcgi_params; } location ~* ^/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/phpmyadmin/; } } }
そしてNginx
再起動します
sudo service nginx restart
MySQLプリセット
上記の設定で登録したアドレスpma.your.site
、 MySQL
のインストール中に設定したパスワードでroot
としてログインしMySQL
。
graphite
データベースとgraphite
ユーザーを作成し、このユーザーにこのデータベースに対するすべての権限を与えましょう。
Graphite + Carbonのインストールと構成
Graphite + Carbonをインストールします
ここでも、すべてが非常に簡単です。
sudo apt-get install graphite-web graphite-carbon
グラファイトのセットアップ
設定ファイル/etc/graphite/local_settings.py
を編集します。
SECRET_KEY = 'MY NICE RANDOM SALT' TIME_ZONE = 'UTC' USE_REMOTE_USER_AUTHENTICATION = True DATABASES = { 'default': { 'NAME': 'graphite', 'ENGINE': 'django.db.backends.mysql', 'USER': 'graphite', 'PASSWORD': 'mypassword', 'HOST': '127.0.0.1', 'PORT': '' } }
データベースの同期
次のコマンドでデータベースを同期します
sudo graphite-manage syncdb
カーボンセッティング
次の構成ファイルの編集
/etc/default/graphite-carbon
CARBON_CACHE_ENABLED = true
/etc/carbon/carbon.conf
ENABLE_LOGROTATION = True
標準のストレージ集約設定をコピーする
sudo cp /usr/share/doc/graphite-carbon/examples/storage-aggregation.conf.example /etc/carbon/storage-aggregation.conf
そしてCarbon
再起動します
sudo service carbon-cache start
uWSGIをインストールする
uWSGI
をインストールするuWSGI
は、次のコマンドを実行します
sudo apt-get install python-dev sudo pip install uwsgi
pip
がシステムにインストールされていない場合は、インストールします
sudo apt-get install python-pip
そして、上記のコマンドを実行します。
標準構成ファイルをコピーします
sudo cp /usr/share/graphite-web/graphite.wsgi /usr/share/graphite-web/graphite_wsgi.py
構成ファイルを作成します。
sudo nano /etc/init/uwsgi-graphite.conf
そして、そこに次の行を入力します。
env UWSGI_BIN=/usr/local/bin/uwsgi env PYTHONPATH=/usr/share/graphite-web expect fork umask 0000 start on runlevel [2345] stop on runlevel [!2345] script exec $UWSGI_BIN --socket /var/run/graphite.sock --master --need-app \ --catch-exceptions --reload-on-exception --pp $PYTHONPATH \ -w graphite_wsgi:application --buffer-size 32768 -p 4 -O 2 >>/var/log/graphite.log 2>&1 & end script
そして、 Graphite
実行します
sudo service uwsgi-graphite start
グラファイト用のNginxの構成
設定ファイル/etc/nginx/conf.d/graphite.conf
編集
server { server_name graphite.your.site; listen 80; access_log /var/log/nginx/graphite.access.log; error_log /var/log/nginx/graphite.error.log; root /usr/share/graphite-web; location = /favicon.ico { return 204; } location /content { alias /usr/share/graphite-web/static; expires max; } location / { uwsgi_pass unix:/var/run/graphite.sock; include uwsgi_params; } }
Nginx
を再起動して、 graphite.your.site
アクセスします
グラファイトのテスト
Graphite
のパフォーマンスをテストするには、1つの簡単なコマンドを実行するだけです。
echo "test.count 9 `date +%s`" | nc -q0 127.0.0.1 2003;
さて、またはループを実行します:
for i in 4 6 8 16 2; do echo "test.count $i `date +%s`" | nc -q0 127.0.0.1 2003; sleep 6; done
現在、 Graphite
では、次のことを観察することが流行しています。
美しいGrafana Web Muzzleをインストールして構成する
Grafanaをインストールする
Grafana
をインストールするには、次のコマンドを実行します。
echo 'deb https://packagecloud.io/grafana/stable/debian/ wheezy main' | sudo tee -a /etc/apt/sources.list curl https://packagecloud.io/gpg.key | sudo apt-key add - sudo apt-get update sudo apt-get install grafana
GrafanaのMySQLセットアップ
MySQL
grafana
データベースを作成し、 grafana
作成したgraphite
ユーザーにすべての権限を付与しましょう。
構成ファイル/etc/grafana/grafana.ini
編集
[database] type = mysql host = 127.0.0.1:3306 name = grafana user = graphite password = mypassword [server] protocol = http http_addr = 127.0.0.1 http_port = 3000 domain = grafana.your.site enforce_domain = true root_url = %(protocol)s://%(domain)s/ [security] admin_user = admin # - admin_password = your_secure_password # - secret_key = your_random_secret_salt
Grafana
実行しGrafana
sudo service grafana-server start
Grafana用のNginxの構成
設定ファイル/etc/nginx/conf.d/grafana.conf
編集
server { server_name grafana.your.site; listen 80; access_log /var/log/nginx/grafana.access.log; error_log /var/log/nginx/grafana.error.log; location = /robots.txt { echo "User-agent: *\nDisallow: /\n"; } location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; } }
Nginx
を再起動し、 grafana.your.site
移動しgrafana.your.site
上記で設定した管理者のユーザー名/パスワードを入力して、 Grafana
管理パネルに入ります。
ダッシュボードを作成してメトリックを表示する前に、データソースを構成する必要があります。
セクションData Source
-> Add New
移動します
以下のデータを入力してください
- 名前:グラファイト
- URL:graph.your.site
以下に例を示します。
メインページに移動し、[ New Dashboard
]-> [ New Dashboard
]をクリックします。
左側には目立たない緑色のボタンがあり、その上にマウスを移動すると、画面の端からはみ出します。 それをクリックしてから、 Add Panel
-> Graph
以下に、上記のtestコマンドtest
およびcount
作成したメトリックを示しcount
。
これですべてです。 Grafana
プラグインについてGrafana
ます。
詳細情報
Grafana
とそのすばらしい設定についてGrafana
、以下のリンクをご覧ください。
感謝の気持ち
この記事の基礎は、次の記事から引用されています。