Grafanaは、市場で最も広く利用されているインタラクティブなデータ可視化ツールの一つです。オープンソースで、強力かつ高度な設定が可能で、無料で使用できます。Ubuntu Server 20.04にGrafanaをインストールする手順については既に説明しましたが、今回は、新しくインストールしたプラットフォームをMySQLデータベースに接続し、データを可視化する方法をご紹介します。
Grafanaは、Googleスプレッドシート、Amazon Timestream、Elasticsearch、その他多くのデータベースなど、数多くのデータソースに接続できます。MySQLは非常に人気のあるデータベースなので、例として使用するのに最適なデータソースだと思いました。また、MySQLをリモート接続用に設定する方法についても覚えておくと良いでしょう。
ジャンプ先:
- 必要なもの
- リモート接続用にMySQLを設定する方法
- GrafanaをMySQLに接続する方法
必要なもの
これを機能させるには、実行中の Grafana インスタンス、実行中の MySQL インスタンス、および sudo 権限を持つユーザーが必要になります。
このチュートリアルでは、MySQL のインスタンスがリモート Linux サーバー上にあると想定します。
リモート接続用にMySQLを設定する方法
まず最初に、MySQLサーバーをリモート接続できるように設定する必要があります。その上で、Grafanaで表示するデータベースに対して特定の権限を持つユーザーを作成します。
参照: 知っておくべきオープンソースと Linux の用語を調べてください。
リモートアクセス用にMySQLを構成する
以下の手順を実行することで、MySQLが正しく設定されていることを確認できます。MySQLサーバーがGrafanaと同じサーバー上で実行されていない場合は、MySQLの標準インストールでは通常リモート接続が許可されていないため、まず以下の手順を実行することが重要です。
- まず、MySQL サーバーにログインし、次のコマンドで MySQL 構成ファイルを開きます。
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
- そのファイルで、次の行を探します。
バインドアドレス = 127.0.0.1
- 次のように変更します。
バインドアドレス = 0.0.0.0
- ファイルを保存して閉じ、次のコマンドで MySQL サービスを再起動します。
sudo systemctl で MySQL を再起動します。
特定の権限を持つ新しいユーザーを作成する
MySQLサーバーをリモート接続できるように設定したら、新しいユーザーを作成し、適切な権限を付与する必要があります。手順は以下のとおりです。
- 次のコマンドで MySQL コンソールにログインします。
sudo mysql -u ルート -p
- 使用するデータベースを必ず確認してください。以下のコマンドでリストアップできます。
データベースを表示します。
- 次のようにして新しいユーザーを作成します。
'PWORD' で識別されるユーザー 'grafanareader' を作成します。
ここで、PWORD は新しいユーザーの強力かつ一意のパスワードです。
- ここで、次のようにして、新しいユーザーにデータベースの SELECT 権限を付与できます。
DB.* に対する SELECT 権限を 'grafanareader' に付与します。
ここで、DB は Grafana によって読み取られるデータベースの名前です。
- 次のコマンドで権限をフラッシュし、MySQL コンソールを終了します。
権限をフラッシュします。 出口
データベース サーバーの準備が整いました。
GrafanaをMySQLに接続する方法
Grafanaインスタンスにログインし、左側のサイドバーにあるハンバーガーアイコン(横線3本)をクリックします。表示されるポップアップから「新しい接続を追加」をクリックします(図A)。
図A

次のウィンドウで、検索バーに「mysql」と入力して Enter キーを押すか、下にスクロールしてリストから MySQL をクリックします (図 B )。
図B

次のページで、右上にある青い「新しいデータ ソースの追加」ボタンをクリックします (図 C )。
図C

次に、MySQLデータ接続に必要な設定オプションが表示されます。入力が必要な項目は以下のとおりです。
- ホスト: MySQLホスティングサーバーのIPアドレスまたはドメイン名、およびデータベースサーバーで使用されるポート番号。デフォルト値であるlocalhost:3306への接続を設定する場合は、フィールドをクリックして入力する必要があります。入力しないと接続できません。
- データベース:ソースとして使用されるデータベース。
- ユーザー: grafanareader。
- パスワード: MySQL コンソールで grafanareader を作成するために使用される PWORD。
また、「Skip TLS Verify」を有効にする必要があるかもしれません。特にGrafanaから複数のMySQL接続が必要な場合は、この接続に名前を付けることを検討してください。
これらのオプションを設定し、「保存してテスト」をクリックします。最終的に「データベース接続が正常」と表示されます(図D)。
図D

おめでとうございます!これでGrafanaがリモートMySQLサーバーに接続されました。シリーズの次回の記事では、ソースからのデータの一部を表示するための新しいダッシュボードを作成します。
MySQL データ ソースへの接続に成功したので、次のステップに進んでダッシュボードを追加します。
参照: Grafana に満足していませんか? コスト効率の高いデータ視覚化ツールを検討してください。