cassandraモニタリングスキーム評価
サマリ
最初にcassandra monitorスキームの選択をしたとき、主にcassandra自体から着手したが、cassandraはJVM上で動作しており、すべてのmetricsがJMXを通じて露出していることが分かった.したがって、いくつかの一般的なJavaアプリケーションのモニタリングスキームを使用することができ、著者らは多くの実装スキームを調査した後、graphite、newrelic、opscenterの3つのソリューションに範囲を縮小した.本文はそれぞれの優劣だけを与えて、具体的にどれを選んで、読者が自分で判断することを信じます.
cassandraの詳細については、http://www.webpersonaldeveloper.cn
opscenter VS graphite VS newrelic環境導入 収集metrics比較 cassandra metrics os metrics application metrics
拡張機能 開発メンテナンスコスト cassandraバージョン制限 まとめ 環境の導入
opscenter:
Datastaxからopscenterをダウンロードし、installが完了すると、opscenterのUIにcassandra clusterをインストールし、clusterにopscenter agentをインストールすることができます.cassandraとagentはopscenterのUIにインストールしたり、各ノードにインストールしたりできます.
graphite:
主にgraphiteプロットを構成する3つの部分があり,Carbonはキャッシュとして,Whisperはデータを格納する.また、graphiteの図面が醜いため、機能も限られているため、UIとしてgrafanaを使用する必要があります.graphite環境の構築と構成は複雑で、多くのプラグインをインストールする必要があるため、バージョンの適合も面倒です.しかしdockerがあってからすべてが簡単になりました.
https://github.com/kamon-io/docker-grafana-graphite(forkというrepoを使って、あなたのニーズに合わせて変更することができます)
graphite serverを配備するには、cassandra構成ごとに新しいmetricsを送信する必要があります.yaml
そしてcassandra-env.sh JVM起動項目の構成
newrelic:
newrelicのconfigを構成するだけでrun plugin
https://github.com/threelegs/newrelic-plugins
warning
新relic cassandraのpluginは何年も更新されていないので、Cassandra 2をサポートすべきです.xバージョン、Cassandra 3はサポートされていません.xのバージョン.しかし、自分で開発するのも簡単ですが、metricsの名前があって、バッグ名が変わったので、自分でforkして修正することができます.
opscenter=newrelic>graphite(dockerを使用してもgraphiteは最も複雑な導入です)
収集したmetricsの比較
cassandra metrics
cassandra metricsは主にJMXが露出したMBeanであり、Read/Write request,latencyを含む.compaction taskなどの情報もあります.JConsoleツールで見ることができますが、JConsoleインタフェースが醜いことや、履歴データを保存できないこと、図形を描くのも美しくないことなど、さまざまな欠点があり、使用しません.
opscenter=graphite=newrelic cassandra metricsの3つの収集スキームが収集でき、違いはありません.
os metrics
OS metricsには、cpu、メモリ、diskの使用状況が含まれます.opscenterが統合されていて、便利に見えます.graphiteはサードパーティプラグインcollectdを使用して収集する必要があります.新relicも同様です.
opscenter=newrelic>graphite
application metrics
cassandraはデータベースサービスですが、monitorとしては、通常、全体的な状況を表示する必要があります.クライアントリクエストに問題が発生しました.データベースの分析だけでなく、アプリケーションサーバの分析も必要かもしれません.もちろん、アプリケーションサーバの情報を複数のモニタリングプラットフォームではなくcassandraと同じページに統合することが望ましい.opscenterはできませんgraphiteはできますnewrelicはできます
graphite=newrelic>opscenter
拡張機能
履歴データの保存
opscenter、graphiteは、パラメータ構成をサポートして何日保存しますか.新relicは、より多くの日を保存するためにお金が必要です.
権限管理
opscenterはadminによる権限管理をサポートしていますが、すべてのmetricsは全体として、一部のユーザーがmetricsの一部だけを見るように制御できません.https://docs.datastax.com/en/latest-opsc/opsc/configure/opscManageUsers.html
graphiteはorganizationをサポートし、異なるorganizationは異なるdashboardを持つことができる.organizationではuserを追加できます.userロールには4種類のadmin、editor、read only editor、viewがあります.異なるユーザーは、異なるorganizationで異なる役割を果たすことができます.
新relicはadmin,user,restricted userの3種類をサポートし,異なるユーザは異なる内容を見ることができる.
開発メンテナンスコスト
opscenterは開発する必要はありません.メンテナンスはdatastax商業版のcassandraを使用すれば、license費用を払えばいいです.その他はopscenter serverの料金です
graphiteはオープンソースですが、環境導入には時間とお金がかかります.また、graphiteにはmonitorサービス全体を構成するプラグインが多く、これらのプラグインのメンテナンスにはコストがかかります.作者の構築過程で多くの問題に直面した.たとえば、複数のserverのデータ集約の問題で、データの読み取りが正しくありません.これらはすべて運営にもっと多くの時間を費やす必要があります.システムが不安定であれば、より多くの運営を投入することは、会社にとっても小さな投資ではありません.
新relicには無料版がありますが、機能が制限されており、上記のような履歴データの保存は1日しか保存できません.有料版は安くありません.しかしnewrelicには独自のメリットがあり、SaaSサービスです.監視が必要なデータ規模が増加すると、自分で監視クラスタを構築する必要はありません.この点でopscenter,graphiteはcluster環境を構築する必要がある
金銭的にgraphite>opscenter>newrelic
人力上newrelic>opscenter>graphite
cassandraバージョン制限
opscenterの最新バージョンはcassandra opensource 2.1、datastax enterprise 4.8のみをサポートしており、cassandra opensourceは現在までrelease 3.7になっています.だからopscenterバージョンは遅れています.graphiteは汎用バージョンで、最新バージョンをサポートします.新relicはplugin形式であり、cassandraが更新したmetricsに基づいてpluginが送信したmetricsを更新する必要がある.
graphite=newrelic>opscenter
まとめ
モニタリングのmetrics収集からでもモニタリングツール自体の管理からでも、3つのソリューションは対応するソリューションを提供します.その他の点で少し違いがある
1.opscenterは導入が容易で、cassandraの一般的な操作も統合されています.cassandra serverにログインする必要はなく、コマンドラインを使用して操作します.彼自身はmonitorツールだけでなく、cassandraの操作UIインタフェースでもある.opscenterには致命的な欠点があり、cassandraバージョンが制限されています.最新のcassandraを使用して実現できない場合は、補助的な監視ツールのため、主要なデータベース機能に影響を与える致命的な欠陥だと思います.
2.graphiteオープンソースはgraphiteの優位性であり、コミュニティの活発さは支えである.この案を選んでも投入できる人がいる.
3.newrelicは技術的な問題を解決する必要はなく、お金を使って生産力を解放し、監視の内容が製品の核心でなければ、良い案ではないかもしれない.
以上は著者の意見のみを参考にした.
リファレンス
http://blog.ailms.me/2014/08/17/note-about-graphite-arch.html http://docs.grafana.org/troubleshooting/
転載先:https://www.cnblogs.com/stoneFang/p/6715299.html
最初にcassandra monitorスキームの選択をしたとき、主にcassandra自体から着手したが、cassandraはJVM上で動作しており、すべてのmetricsがJMXを通じて露出していることが分かった.したがって、いくつかの一般的なJavaアプリケーションのモニタリングスキームを使用することができ、著者らは多くの実装スキームを調査した後、graphite、newrelic、opscenterの3つのソリューションに範囲を縮小した.本文はそれぞれの優劣だけを与えて、具体的にどれを選んで、読者が自分で判断することを信じます.
cassandraの詳細については、http://www.webpersonaldeveloper.cn
opscenter VS graphite VS newrelic
opscenter:
Datastaxからopscenterをダウンロードし、installが完了すると、opscenterのUIにcassandra clusterをインストールし、clusterにopscenter agentをインストールすることができます.cassandraとagentはopscenterのUIにインストールしたり、各ノードにインストールしたりできます.
graphite:
主にgraphiteプロットを構成する3つの部分があり,Carbonはキャッシュとして,Whisperはデータを格納する.また、graphiteの図面が醜いため、機能も限られているため、UIとしてgrafanaを使用する必要があります.graphite環境の構築と構成は複雑で、多くのプラグインをインストールする必要があるため、バージョンの適合も面倒です.しかしdockerがあってからすべてが簡単になりました.
https://github.com/kamon-io/docker-grafana-graphite(forkというrepoを使って、あなたのニーズに合わせて変更することができます)
graphite serverを配備するには、cassandra構成ごとに新しいmetricsを送信する必要があります.yaml
graphite:
period: 30
timeunit: 'SECONDS'
prefix: 'cassandra-cluster-prefix.node1'
hosts:
- host: 'xxx'
port: 2003
predicate:
color: "white"
useQualifiedName: true
patterns:
- "^org.+"
- "^jvm.+"
- "^java.lang.+"
そしてcassandra-env.sh JVM起動項目の構成
JVM_OPTS="$JVM_OPTS -Dcassandra.metricsReporterConfigFile=metrics.yaml"
newrelic:
newrelicのconfigを構成するだけでrun plugin
https://github.com/threelegs/newrelic-plugins
warning
新relic cassandraのpluginは何年も更新されていないので、Cassandra 2をサポートすべきです.xバージョン、Cassandra 3はサポートされていません.xのバージョン.しかし、自分で開発するのも簡単ですが、metricsの名前があって、バッグ名が変わったので、自分でforkして修正することができます.
opscenter=newrelic>graphite(dockerを使用してもgraphiteは最も複雑な導入です)
収集したmetricsの比較
cassandra metrics
cassandra metricsは主にJMXが露出したMBeanであり、Read/Write request,latencyを含む.compaction taskなどの情報もあります.JConsoleツールで見ることができますが、JConsoleインタフェースが醜いことや、履歴データを保存できないこと、図形を描くのも美しくないことなど、さまざまな欠点があり、使用しません.
opscenter=graphite=newrelic cassandra metricsの3つの収集スキームが収集でき、違いはありません.
os metrics
OS metricsには、cpu、メモリ、diskの使用状況が含まれます.opscenterが統合されていて、便利に見えます.graphiteはサードパーティプラグインcollectdを使用して収集する必要があります.新relicも同様です.
opscenter=newrelic>graphite
application metrics
cassandraはデータベースサービスですが、monitorとしては、通常、全体的な状況を表示する必要があります.クライアントリクエストに問題が発生しました.データベースの分析だけでなく、アプリケーションサーバの分析も必要かもしれません.もちろん、アプリケーションサーバの情報を複数のモニタリングプラットフォームではなくcassandraと同じページに統合することが望ましい.opscenterはできませんgraphiteはできますnewrelicはできます
graphite=newrelic>opscenter
拡張機能
履歴データの保存
opscenter、graphiteは、パラメータ構成をサポートして何日保存しますか.新relicは、より多くの日を保存するためにお金が必要です.
権限管理
opscenterはadminによる権限管理をサポートしていますが、すべてのmetricsは全体として、一部のユーザーがmetricsの一部だけを見るように制御できません.https://docs.datastax.com/en/latest-opsc/opsc/configure/opscManageUsers.html
graphiteはorganizationをサポートし、異なるorganizationは異なるdashboardを持つことができる.organizationではuserを追加できます.userロールには4種類のadmin、editor、read only editor、viewがあります.異なるユーザーは、異なるorganizationで異なる役割を果たすことができます.
新relicはadmin,user,restricted userの3種類をサポートし,異なるユーザは異なる内容を見ることができる.
開発メンテナンスコスト
opscenterは開発する必要はありません.メンテナンスはdatastax商業版のcassandraを使用すれば、license費用を払えばいいです.その他はopscenter serverの料金です
graphiteはオープンソースですが、環境導入には時間とお金がかかります.また、graphiteにはmonitorサービス全体を構成するプラグインが多く、これらのプラグインのメンテナンスにはコストがかかります.作者の構築過程で多くの問題に直面した.たとえば、複数のserverのデータ集約の問題で、データの読み取りが正しくありません.これらはすべて運営にもっと多くの時間を費やす必要があります.システムが不安定であれば、より多くの運営を投入することは、会社にとっても小さな投資ではありません.
新relicには無料版がありますが、機能が制限されており、上記のような履歴データの保存は1日しか保存できません.有料版は安くありません.しかしnewrelicには独自のメリットがあり、SaaSサービスです.監視が必要なデータ規模が増加すると、自分で監視クラスタを構築する必要はありません.この点でopscenter,graphiteはcluster環境を構築する必要がある
金銭的にgraphite>opscenter>newrelic
人力上newrelic>opscenter>graphite
cassandraバージョン制限
opscenterの最新バージョンはcassandra opensource 2.1、datastax enterprise 4.8のみをサポートしており、cassandra opensourceは現在までrelease 3.7になっています.だからopscenterバージョンは遅れています.graphiteは汎用バージョンで、最新バージョンをサポートします.新relicはplugin形式であり、cassandraが更新したmetricsに基づいてpluginが送信したmetricsを更新する必要がある.
graphite=newrelic>opscenter
まとめ
モニタリングのmetrics収集からでもモニタリングツール自体の管理からでも、3つのソリューションは対応するソリューションを提供します.その他の点で少し違いがある
1.opscenterは導入が容易で、cassandraの一般的な操作も統合されています.cassandra serverにログインする必要はなく、コマンドラインを使用して操作します.彼自身はmonitorツールだけでなく、cassandraの操作UIインタフェースでもある.opscenterには致命的な欠点があり、cassandraバージョンが制限されています.最新のcassandraを使用して実現できない場合は、補助的な監視ツールのため、主要なデータベース機能に影響を与える致命的な欠陥だと思います.
2.graphiteオープンソースはgraphiteの優位性であり、コミュニティの活発さは支えである.この案を選んでも投入できる人がいる.
3.newrelicは技術的な問題を解決する必要はなく、お金を使って生産力を解放し、監視の内容が製品の核心でなければ、良い案ではないかもしれない.
以上は著者の意見のみを参考にした.
リファレンス
http://blog.ailms.me/2014/08/17/note-about-graphite-arch.html http://docs.grafana.org/troubleshooting/
転載先:https://www.cnblogs.com/stoneFang/p/6715299.html