2014-12-18 21 views
12

Tôi muốn theo dõi bộ nhớ được sử dụng bởi quy trình cụ thể dưới cloudwatch trong AWS. Tôi có phải sử dụng kịch bản để làm như vậy không? Nếu có, hãy cho tôi biết các bước hoặc một số hướng dẫn hoặc Tôi có thể sử dụng cloudwatch logs để báo cáo bộ nhớ được sử dụng bởi quy trình cụ thể trong thời gian thực không? Hãy cho tôi biết các lựa chọn thay thế khác.Làm cách nào để giám sát bộ nhớ được sử dụng bởi quy trình cụ thể trong đồng hồ điện toán đám mây AWS?

Trả lời

11

Có, bạn sẽ cần một tập lệnh chạy trên phiên bản bạn muốn theo dõi. Theo mặc định, Cloudwatch chỉ có thể báo cáo về những thứ mà nó có thể 'thấy' ở cấp độ hypervisor, chứ không phải những thứ đang diễn ra 'bên trong', vì vậy bạn cần phải tạo và báo cáo 'số liệu tùy chỉnh'.

Dưới đây là một số gợi ý Linux kịch bản: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/mon-scripts.html

và một số cho các cửa sổ: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/mon-scripts-powershell.html

+0

Liên kết đầu tiên bạn đã cung cấp sẽ bị hỏng. Nó bây giờ chuyển hướng đến [Amazon CloudWatch là gì?] (Http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.html) – blong

+0

Tôi đã sửa liên kết cho bạn. – Jrgns

+0

Tôi không nghĩ rằng nó có thể báo cáo bộ nhớ được sử dụng bởi quá trình cụ thể trong thời gian thực. đầu tiên khoảng thời gian mininal của đồng hồ điện toán đám mây là 60 giây và thứ hai kịch bản Linux được dán ở trên là dành cho Linux/Hệ thống như toàn bộ, không phải quy trình cụ thể –

1

Đặt điều này trong một tập tin gọi 001initial.config trong thư mục .ebextensions lại xô s3 của bạn, bạn đang sử dụng cho ứng dụng của bạn ver. Điều này sẽ cài đặt giám sát và thiết lập nó như một công việc cron. Lưu ý các mô-đun perl được cài đặt. Bạn sẽ muốn ssh vào hộp của mình và kiểm tra tập lệnh đang chạy.

Đi vào bảo mật và cập nhật vai trò iam của bạn cho bạn phiên bản ec2 có quyền CloudWatch. Đảm bảo chọn hộp kiểm cho vai trò và sau đó nhấp vào hộp kiểm để truy cập trang quyền.

Khi bạn biết đang theo dõi, hãy truy cập trang xem trên đám mây và từ loại trang đầu tiên trong Hệ thống/Linux và tìm kiếm và nó sẽ hiển thị cho bạn số liệu thống kê đĩa và bộ nhớ.

--- 
files: 
    "/etc/cron.d/my_cron": 
    mode: "000644" 
    owner: root 
    group: root 
    content: | 
     # run a cloudwatch command every five minutes (as ec2-user) 
     */5 * * * * ec2-user ~/aws-scripts-mon/mon-put-instance-data.pl --mem-util --mem-used --mem-avail --disk-space-util --disk-path=/ --from-cron 
encoding: plain 
commands: 
    # delete backup file created by Elastic Beanstalk 
    clear_cron_backup: 
    command: rm -f /etc/cron.d/watson.bak 
container_commands: 
    02download: 
     command: "curl http://aws-cloudwatch.s3.amazonaws.com/downloads/CloudWatchMonitoringScripts-1.2.1.zip -O" 
     ignoreErrors: true 
    03extract: 
     command: "unzip CloudWatchMonitoringScripts-1.2.1.zip" 
     ignoreErrors: true 
    04rmzip: 
     command: "rm rm CloudWatchMonitoringScripts-1.2.1.zip" 
     ignoreErrors: true 
    05cdinto: 
     command: "mv aws-scripts-mon/ /home/ec2-user" 
     ignoreErrors: true 
packages: 
    yum: 
     perl-Switch : [] 
     perl-URI: [] 
     perl-Bundle-LWP: [] 
     perl-DateTime: [] 
     perl-Sys-Syslog: [] 
     perl-LWP-Protocol-https: [] 
0

Trong khi nguyên nhân được cung cấp bởi @EJBrennan trong câu trả lời của mình là đúng, một bản cập nhật gần đây hơn cho câu hỏi này là chỉ cần cài đặt các kịch bản theo quy định trong tài liệu tuyệt vời này từ AWS

AWS Documentation for Memory & Disk Metrics

Vì vậy, bạn cần phải

  1. Cài đặt tập lệnh trong máy chủ EC2
  2. Đưa nhật ký vào Cloudwatch bằng cách sử dụng ./mon-put-instance-data.pl --mem-util --mem-used-incl-cache-buff --mem-used --mem-avail
  3. Thiết lập trang tổng quan trong đồng hồ điện toán đám mây để xem chỉ số.

Ngoài ra, bạn cũng có thể thiết lập công việc cron để lấy số liệu định kỳ.

Hy vọng rằng sẽ giúp

Các vấn đề liên quan