私は、約2%のCPUで動作するt2.micro EC2インスタンスを持っています。他の投稿から、TOPに表示されるCPU使用率がCloudWatchで報告されたCPUと異なることがわかりました。CloudWatch値は信頼されるべきです。EC2 CloudWatchのメモリメトリックがTopと表示されていません
しかし、私は、TOP、CloudWatch、およびNewRelicの間のメモリ使用量に関して非常に異なる値を見ています。
インスタンスには1GbのRAMがあり、TOPには〜300MbのApacheプロセスと、〜100Mbの他のプロセスが表示されます。 TOPによって報告された全体的なメモリ使用量は800Mbです。 OS /システムのオーバーヘッドは400Mバイトだと思いますか?
しかし、CloudWatchは700Mbの使用状況を報告し、NewRelicは200Mbの使用状況を報告します(NewRelicは300MbのApacheプロセスを他の場所でレポートしていますが、無視しています)。
CloudWatchのメモリメトリックは80%を超えることが多く、実際の値が何であるかを知りたいので、必要に応じていつスケールするか、メモリ使用量を減らす方法を知っています。
ここで時間をかけて何かがより多くのメモリを使用しているようで、最近の記憶プロファイルです(ビッグディップは、Apacheの再起動、または多分GCのどちらかである?)
Screenshot of memory usage over last 12 days
コメントありがとうございます。 私は、Cloudwatch(http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/mon-scripts.html)にメモリ情報を送信するためにAmazonが提供するスクリプトを使用しています。 これをメモリ情報と比較するTopとNewRelicによって提供される値が異なるので、サーバーがいつ容量に達しているかを評価する際に、どれが最も信頼できるかを理解しようとしています。 – Claude
それは本当に面白いです。これらのスクリプトの仕組みは完全にはわかりませんが、公式にサポートされていないことはわかっています。 Amazon Linuxを使用していますか?多分スクリプトは他のLinuxディストリビューションでは信頼できません...公式のAWSサポートフォーラムにこれを載せることをお勧めします – mickzer
「彼らは公式にサポートされていないことを知っています」 - OPはAWSドキュメントそれは正式に正式にサポートされていますか? – HopeKing