マネージド インスタンス クラスターから生成されたメトリックを視覚化するように Grafana を構成する

Azure Managed Instance for Apache Cassandra クラスターをデプロイすると、サービスによって各データ ノードに Metric Collector for Apache Cassandra エージェント ソフトウェアがプロビジョニングされます。 メトリックは Prometheus によって使用され、Grafana で視覚化されます。 この記事では、マネージド インスタンス クラスターから生成されたメトリックを視覚化するように Prometheus と Grafana を構成する方法について説明します。

メトリックを視覚化するには、次のタスクが必要となります。

  • マネージド インスタンスが存在する Azure 仮想ネットワーク内に Ubuntu 仮想マシンをデプロイします。
  • Prometheus ダッシュボードを VM にインストールします。

警告

Prometheus と Grafana はオープンソース ソフトウェアであり、Azure Managed Instance for Apache Cassandra サービスの一部としてサポートされていません。 以下で説明する方法でメトリックを視覚化するには、Prometheus と Grafana の両方のサーバーとして仮想マシンをホストして維持する必要があります。 以下の手順は Ubuntu Server 18.04 でのみテストしたものであり、他の Linux ディストリビューションで動作する保証はありません。 このアプローチに従う場合、領域不足やサーバーの可用性など、発生する可能性のある問題に対応する必要があります。 完全にサポートされ、ホストされたメトリック エクスペリエンスが必要な場合は、Azure Monitor メトリックまたは Azure Monitor のパートナー統合の使用を検討してください。

Ubuntu サーバーをデプロイする

  1. Azure portal にサインインします。

  2. マネージド インスタンス クラスターがあるリソース グループに移動します。 [追加] を選択し、Ubuntu Server 18.04 LTS イメージを検索します。

    Find Ubuntu server image from the Azure portal.

  3. そのイメージを選択し、[作成] を選択します。

  4. [仮想マシンの作成] ブレードで、次の各フィールドの値を入力します。その他のフィールドは既定値のままでかまいません。

    • [仮想マシン名] - VM の名前を入力します。
    • [リージョン] - 仮想ネットワークのデプロイ先と同じリージョンを選択します。

    Fill out the form to create a VM with Ubuntu server image.

  5. [ネットワーク] タブで、マネージド インスタンスがデプロイされている仮想ネットワークを選択します。

    Configure the Ubuntu server's network settings.

  6. 最後に [確認と作成] を選択して、メトリック サーバーを作成します。

Prometheus ダッシュボードをインストールする

  1. 最初に、新しくデプロイされた Ubuntu サーバーのネットワーク設定に、ポート 90903000 を許可する受信ポート規則があることを確認します。 これらは後で Prometheus と Grafana のそれぞれで必要になります。

    Allow ports

  2. Azure CLI や任意のクライアント ツールを使用して、Ubuntu サーバーに SSH で接続します。

  3. VM に接続した後、メトリック コレクター ソフトウェアをインストールする必要があります。 まず、ファイルをダウンロードして解凍します。

     #install unzip utility (if not already installed)
     sudo apt install unzip
    
     #get dashboards
     wget https://github.com/datastax/metric-collector-for-apache-cassandra/releases/download/v0.3.0/datastax-mcac-dashboards-0.3.0.zip -O temp.zip
     unzip temp.zip
    
  4. 次に、prometheus ディレクトリに移動し、vi を使用して tg_mcac.json ファイルを編集します。

     cd */prometheus
     vi tg_mcac.json    
    
  5. クラスター内の各ノードの IP アドレスを、それぞれポート 9443 で targets に追加します。 tg_mcac.json ファイルは以下のようになります。

     [
       {
         "targets": [
           "10.9.0.6:9443","10.9.0.7:9443","10.9.0.8:9443"
         ],
         "labels": {
    
         }
       }
     ]  
    
  6. ファイルを保存します。 次に、同じディレクトリで prometheus.yaml ファイルを編集します。 以下のセクションを見つけてください。

     file_sd_configs:
       - files:
         - 'tg_mcac.json'
    
  7. このセクションの直下に、以下を追加します。 メトリックは https 経由で公開されるため、これが必要です。

     scheme: https
     tls_config:
             insecure_skip_verify: true
    
  8. ファイルは次のようになるはずです。 各行のタブが以下の通りであることを確認してください。

     file_sd_configs:
       - files:
         - 'tg_mcac.json'
     scheme: https
     tls_config:
             insecure_skip_verify: true
    
  9. ファイルを保存します。 Prometheus と Grafana を起動する準備ができました。 まず、Docker をインストールします。

    sudo apt install apt-transport-https ca-certificates curl software-properties-common
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu `lsb_release -cs` test"
    sudo apt update
    sudo apt install docker-ce
    
  10. 次に、docker compose をインストールします。

    sudo apt install docker-compose
    
  11. そして、docker-compose.yaml が存在する最上位のディレクトリに移動し、アプリケーションを起動します。

    cd ..
    sudo docker-compose up
    
  12. Prometheus はメトリック サーバーのポート 9090 で、Grafana ダッシュボードはポート 3000 で利用できるはずです。

    View the Cassandra managed instance metrics in the dashboard.

次のステップ

この記事では、Grafana を使用してダッシュボードを構成し、Prometheus のメトリックを視覚化する方法について説明しました。 Azure Managed Instance for Apache Cassandra の詳細については、次の記事を参照してください。