2017-11-03 15 views
10

私はAWSオートスケーリングを設定していますが、スケーリングポリシーを設定するときにこの問題が発生しました。自動スケーリンググループのメモリ使用量AWS

私はパラメータとしてメモリを使いたかったので、下のリンクからメモリ監視のためにCLoudwatchのスクリプトをインストールしました。

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/mon-scripts.html

私は単純なインスタンスのために使用するとうまく動作します。上記のドキュメントで提案されているように、私は以下のコマンドでautosaclingのためにそれを行うときには、それはエラーになります

コマンド

./mon-put-instance-data.pl --mem-util --mem-used --mem-avail --auto-scaling=only

エラー:私はインターネット上でこのエラーをチェックする場合

WARNING: The Auto Scaling metrics will not be reported this time.

は、少数の人々がそれを言いました/ var/tmp/aws-monのinstance-idのエラーかもしれませんが、それは問題ではありません。

何か助けていただければ幸いです。

答えて

3

このシナリオでは、私は最も愚かなことをやりました。私は答えとして投稿していますので、他の誰かを助けることができます。 私はどの自動スケーリンググループのメンバーでもないインスタンスでテストしていました。

3

Hereは、同じ質問のAWSサポートへのリンクです。

Hereは、Perlスクリプトのソースコードへのリンクです。私はここに公表することができるかどうか分からないので、ZIPファイルを開き、mon-put-instance-data.plに行き、reportedを検索してください。それから、あなたがverifyを提供していないか、グループ名を自動拡張していない場合にエラーが発生するようです。最初はテストのためであり、勝者があります。自動縮尺のグループ名パラメータを指定してください...

まあ、そこにはパラメータはありませんが、もっと見ると、reportedより前の行が見つかることがわかります。そこにはクエリがあります。だからあなたのインスタンスにはアクセス権がありません。

CloudWatchClient::get_auto_scaling_groupでグーグリングすると、resultとなります。そこから、CloudWatchにデータを公開するためのインスタンスの許可を与える必要があることを読むことができます。

他の質問がある場合は質問してください。私はこの答えを編集しますので、私のためだけでなく、もう少し完全なものがあります。

+0

thnks、私は答えとして理由と更新を見つけました。 –

+0

覚えておくといいです:) –

0

実用的な解決策。その後

rm -rf /var/tmp/aws-mon/ 

監視スクリプトは、それが/var/tmp/aws-mon下のinstance_idをキャッシュし実行すると、

./mon-put-instance-data.pl --mem-util --auto-scaling=only 

を実行します。
自動スケーリンググループ名を取得するときに使用するフィルタの1つがインスタンスIDです。このTTLは6時間です。したがって、AMIにこのキャッシュがある場合、インスタンスが作成されてから6時間以内に誤ったインスタンスIDが使用され、自動スケーリンググループ名の取得に失敗します。

REF:努力のためhttps://forums.aws.amazon.com/thread.jspa?threadID=117783

関連する問題