Amazon EMR là một dịch vụ dữ liệu lớn do AWS cung cấp để chạy Apache Spark và các ứng dụng nguồn mở khác trên AWS nhằm xây dựng các đường dẫn dữ liệu có thể mở rộng theo cách tiết kiệm chi phí. Giám sát nhật ký được tạo từ các công việc được triển khai trên các cụm EMR là điều cần thiết để giúp phát hiện các sự cố nghiêm trọng trong thời gian thực và nhanh chóng xác định nguyên nhân gốc rễ.
Đẩy các bản ghi đó vào amazoncloudwatch cho phép bạn tập trung và điều khiển trí thông minh có thể hành động từ nhật ký của mình để giải quyết các sự cố vận hành mà không cần cung cấp máy chủ hoặc quản lý phần mềm. Bạn có thể ngay lập tức bắt đầu viết truy vấn với tập hợp, bộ lọc và biểu thức chính quy. Ngoài ra, bạn có thể trực quan hóa dữ liệu chuỗi thời gian, đi sâu vào các sự kiện nhật ký riêng lẻ và xuất kết quả truy vấn sang bảng điều khiển CloudWatch.
Để nhập nhật ký được duy trì trên Đám mây điện toán đàn hồi Amazon (Amazon EC2) của cụm EMR vào CloudWatch, bạn có thể sử dụng Đại lý CloudWatch. Điều này cung cấp một cách đơn giản để đẩy nhật ký từ phiên bản EC2 sang CloudWatch.
Tác nhân CloudWatch là gói phần mềm chạy tự động và liên tục trên máy chủ của bạn. Bạn có thể cài đặt và định cấu hình tác nhân CloudWatch để thu thập nhật ký hệ thống và ứng dụng từ các phiên bản EC2, máy chủ tại chỗ và ứng dụng trong bộ chứa. CloudWatch xử lý và lưu trữ nhật ký do tác nhân CloudWatch thu thập, giúp hỗ trợ thêm cho việc theo dõi hiệu suất và tình trạng của cơ sở hạ tầng và ứng dụng của bạn.
Trong bài đăng này, chúng tôi tạo một cụm EMR và tập trung nhật ký bước EMR của các công việc trong CloudWatch. Điều này sẽ giúp bạn dễ dàng quản lý cụm EMR của mình, khắc phục sự cố và theo dõi hiệu suất. Giải pháp này đặc biệt hữu ích nếu bạn muốn sử dụng CloudWatch để thu thập và trực quan hóa nhật ký, chỉ số và dữ liệu sự kiện theo thời gian thực, hợp lý hóa cơ sở hạ tầng và bảo trì ứng dụng của bạn.
Tổng quan về giải pháp
Giải pháp được trình bày trong bài đăng này dựa trên một cấu hình cụ thể trong đó mức đồng thời bước EMR được đặt thành 1. Điều này có nghĩa là mỗi lần chỉ có một bước được chạy trên cụm. Điều quan trọng cần lưu ý là nếu mức đồng thời bước EMR được đặt thành giá trị lớn hơn 1, thì giải pháp có thể không hoạt động như mong đợi. Chúng tôi thực sự khuyên bạn nên xác minh Đồng thời bước EMR cấu hình trước khi triển khai giải pháp được trình bày trong bài đăng này.
Sơ đồ sau minh họa kiến trúc giải pháp.
Quy trình làm việc bao gồm các bước sau:
- Người dùng bắt đầu công việc Apache Spark EMR, tạo một bước trên cụm EMR. Sử dụng Apache Spark, khối lượng công việc được phân phối trên các nút khác nhau của cụm EMR.
- Trong mỗi nút (phiên bản EC2) của cụm, tác nhân CloudWatch xem các thư mục nhật ký khác nhau, ghi lại các mục nhập mới trong tệp nhật ký và đẩy chúng vào CloudWatch.
- Người dùng có thể xem nhật ký bước khi truy cập các nhóm nhật ký khác nhau từ bảng điều khiển CloudWatch. Nhật ký bước do Amazon EMR viết như sau:
- điều khiển — Thông tin về quá trình xử lý của bước. Nếu bước của bạn không thành công trong khi tải, bạn có thể tìm dấu vết ngăn xếp trong nhật ký này.
- tiêu chuẩn — Kênh lỗi tiêu chuẩn của Spark trong khi xử lý bước này.
- tiêu chuẩn — Kênh đầu ra tiêu chuẩn của Spark trong khi nó xử lý bước.
Chúng tôi cung cấp một Hình thành đám mây AWS mẫu trong bài đăng này như một hướng dẫn chung. Mẫu trình bày cách định cấu hình tác nhân CloudWatch trên Amazon EMR để đẩy nhật ký Spark sang CloudWatch. Bạn có thể xem lại và tùy chỉnh nếu cần để bao gồm các cấu hình bảo mật Amazon EMR của mình. Theo phương pháp hay nhất, chúng tôi khuyên bạn nên đưa các cấu hình bảo mật Amazon EMR của mình vào mẫu để mã hóa dữ liệu trên đường truyền.
Bạn cũng nên lưu ý rằng một số tài nguyên được triển khai bởi ngăn xếp này phải chịu chi phí khi chúng vẫn được sử dụng.
Trong các phần tiếp theo, chúng ta sẽ thực hiện các bước sau:
- Tạo và tải tập lệnh bootstrap lên một Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) xô.
- Sử dụng mẫu CloudFormation để tạo các tài nguyên sau:
- Theo dõi nhật ký Spark trên bảng điều khiển CloudWatch.
Điều kiện tiên quyết
Bài đăng này giả định rằng bạn có những điều sau đây:
Tạo và tải tập lệnh bootstrap lên bộ chứa S3
Để biết thêm thông tin, xem Tải lên các đối tượng và Cài đặt và chạy tác nhân CloudWatch trên máy chủ của bạn.
Để tạo và tải lên tập lệnh bootstrap, hãy hoàn thành các bước sau:
- Tạo một tệp cục bộ có tên
bootstrap_cloudwatch_agent.sh
với nội dung sau: - Trên bảng điều khiển Amazon S3, chọn bộ chứa S3 của bạn.
- trên Đối tượng tab, chọn Tải lên.
- Chọn Thêm file, sau đó chọn tập lệnh bootstrap.
- Chọn Tải lên, sau đó chọn tên tệp:
bootstrap_cloudwatch_agent.sh
. - Chọn Sao chép URI S3. Chúng tôi sử dụng giá trị này trong bước sau.
Cung cấp tài nguyên với mẫu CloudFormation
Chọn Khởi chạy Stack để khởi chạy ngăn xếp CloudFormation trong tài khoản của bạn và triển khai mẫu:
Mẫu này tạo vai trò IAM, hồ sơ cá thể IAM, tham số Trình quản lý hệ thống và cụm EMR. Cụm bắt đầu Ứng dụng ví dụ ước tính Spark PI. Bạn sẽ bị tính phí cho các tài nguyên AWS đã sử dụng nếu bạn tạo một ngăn xếp từ mẫu này.
Trình hướng dẫn CloudFormation sẽ yêu cầu bạn sửa đổi hoặc cung cấp các tham số sau:
- Loại phiên bản - loại trường hợp cho tất cả các nhóm trường hợp. Mặc định là m4.xlarge.
- InstanceCountLõi – Số lượng phiên bản trong nhóm phiên bản lõi. Mặc định là 2.
- EMRRPhát hànhNhãn - Nhãn phát hành Amazon EMR bạn muốn sử dụng. Mặc định là emr-6.9.0.
- BootstrapScriptPath – Đường dẫn S3 của tập lệnh khởi động cài đặt tác nhân CloudWatch mà bạn đã sao chép trước đó.
- Mạng con – Mạng con EC2 nơi khởi chạy cụm. Bạn phải cung cấp thông số này.
- EC2KeyPairName – Một cặp khóa EC2 tùy chọn để kết nối với các nút cụm, thay thế cho Trình quản lý phiên.
Giám sát các luồng nhật ký
Sau khi ngăn xếp CloudFormation triển khai thành công, trên bảng điều khiển CloudWatch, hãy chọn Nhật ký nhóm trong ngăn điều hướng. Sau đó lọc các nhóm nhật ký theo tiền tố /aws/emr/master
.
ID trong nhóm nhật ký tương ứng với ID phiên bản EC2 của nút chính EMR. Nếu bạn có nhiều cụm EMR, bạn có thể sử dụng ID này để xác định một cụm EMR cụ thể, dựa trên ID nút chính.
Trong nhóm nhật ký, bạn sẽ tìm thấy ba luồng nhật ký khác nhau.
Các luồng nhật ký chứa các thông tin sau:
- bước chuẩn – Kênh đầu ra tiêu chuẩn của Spark trong khi nó xử lý bước.
- bước đi – Kênh lỗi tiêu chuẩn của Spark trong khi nó xử lý bước.
- điều khiển bước – Thông tin về quá trình xử lý của bước. Nếu bước của bạn không thành công trong khi tải, bạn có thể tìm dấu vết ngăn xếp trong nhật ký này.
Làm sạch
Để tránh các khoản phí trong tương lai trong tài khoản của bạn, hãy xóa các tài nguyên bạn đã tạo trong hướng dẫn này. Cụm EMR sẽ phát sinh phí miễn là cụm đó đang hoạt động, vì vậy hãy dừng cụm đó khi bạn hoàn tất.
- Trên bảng điều khiển CloudFormation, trong ngăn điều hướng, hãy chọn Stacks.
- Chọn ngăn xếp bạn đã khởi chạy (
EMR-CloudWatch-Demo
), tiếp đó hãy chọn Xóa bỏ. - Làm trống bộ chứa S3 bạn đã tạo.
- Xóa bộ chứa S3 bạn đã tạo.
Kết luận
Bây giờ, bạn đã hoàn thành các bước trong hướng dẫn này, bạn có tác nhân CloudWatch đang chạy trên máy chủ cụm của mình và được định cấu hình để đẩy nhật ký bước EMR sang CloudWatch. Với tính năng này, bạn có thể theo dõi hiệu quả tình trạng và hiệu suất của các công việc Spark đang chạy trên Amazon EMR, phát hiện các vấn đề nghiêm trọng trong thời gian thực và nhanh chóng xác định nguyên nhân gốc rễ.
Bạn có thể đóng gói và triển khai giải pháp này thông qua mẫu CloudFormation như mẫu ví dụ này. Mẫu này tạo vai trò hồ sơ cá thể IAM, tham số Trình quản lý hệ thống và cụm EMR.
Để thực hiện điều này xa hơn, hãy cân nhắc sử dụng các nhật ký này trong cảnh báo CloudWatch để biết cảnh báo trên bộ lọc số liệu nhóm nhật ký. Bạn có thể thu thập chúng với các báo thức khác vào một báo động tổng hợp hoặc định cấu hình các hành động báo động như gửi Dịch vụ thông báo đơn giản của Amazon thông báo (Amazon SNS) để kích hoạt các quy trình hướng sự kiện, chẳng hạn như AWS Lambda chức năng.
Lưu ý
Ennio Pastore là Kiến trúc sư dữ liệu cấp cao trong nhóm AWS Data Lab. Anh ấy là người đam mê mọi thứ liên quan đến công nghệ mới có tác động tích cực đến doanh nghiệp và sinh kế chung. Ennio có hơn 10 năm kinh nghiệm trong lĩnh vực phân tích dữ liệu. Ông giúp các công ty xác định và triển khai nền tảng dữ liệu trong các ngành, chẳng hạn như viễn thông, ngân hàng, trò chơi, bán lẻ và bảo hiểm.
- Phân phối nội dung và PR được hỗ trợ bởi SEO. Được khuếch đại ngay hôm nay.
- Platoblockchain. Web3 Metaverse Intelligence. Khuếch đại kiến thức. Truy cập Tại đây.
- nguồn: https://aws.amazon.com/blogs/big-data/push-amazon-emr-step-logs-from-amazon-ec2-instances-to-amazon-cloudwatch-logs/
- :là
- 1
- 10
- 100
- 9
- a
- Giới thiệu
- truy cập
- Tài khoản
- ngang qua
- hành động
- hoạt động
- Ngoài ra
- địa chỉ
- Đại lý
- báo động
- cảnh báo
- Tất cả
- thay thế
- đàn bà gan dạ
- Amazon EC2
- Amazon EMR
- phân tích
- và
- Apache
- Apache Spark
- Các Ứng Dụng
- các ứng dụng
- kiến trúc
- LÀ
- AS
- At
- tự chủ
- AWS
- Ngân hàng
- dựa
- BE
- trước
- bắt đầu
- BEST
- lớn
- Dữ Liệu Lớn.
- bootstrap
- xây dựng
- các doanh nghiệp
- by
- CAN
- Chụp
- nguyên nhân
- Kênh
- tải
- Chọn
- cụm
- thu thập
- Các công ty
- hoàn thành
- Hoàn thành
- Tính
- Cấu hình
- Kết nối
- Hãy xem xét
- An ủi
- nội dung
- liên tục
- Trung tâm
- tương ứng
- chi phí-hiệu quả
- Chi phí
- có thể
- tạo
- tạo ra
- tạo ra
- Tạo
- quan trọng
- tùy chỉnh
- dữ liệu
- Phân tích dữ liệu
- Mặc định
- chứng minh
- triển khai
- triển khai
- triển khai
- khác nhau
- thư mục
- phân phối
- xuống
- lái xe
- mỗi
- Sớm hơn
- dễ dàng hơn
- bỏ lỡ
- hiệu quả
- cho phép
- người đam mê
- lôi
- thiết yếu
- Ether (ETH)
- Sự kiện
- sự kiện
- tất cả mọi thứ
- ví dụ
- dự kiến
- kinh nghiệm
- xuất khẩu
- biểu thức
- không
- Đặc tính
- Tập tin
- Các tập tin
- lọc
- bộ lọc
- Tìm kiếm
- tiếp theo
- sau
- Trong
- từ
- chức năng
- xa hơn
- tương lai
- chơi game
- Tổng Quát
- tạo ra
- Go
- lớn hơn
- Nhóm
- Các nhóm
- hướng dẫn
- Có
- cho sức khoẻ
- giúp đỡ
- hữu ích
- giúp
- cao
- host
- Độ đáng tin của
- Hướng dẫn
- HTML
- http
- HTTPS
- IAM
- ID
- xác định
- xác định
- Va chạm
- thực hiện
- thực hiện
- quan trọng
- in
- bao gồm
- bao gồm
- Bao gồm
- hệ thống riêng biệt,
- các ngành công nghiệp
- thông tin
- Cơ sở hạ tầng
- cài đặt, dựng lên
- Cài đặt
- ví dụ
- bảo hiểm
- Sự thông minh
- các vấn đề
- IT
- Việc làm
- việc làm
- jpg
- json
- phòng thí nghiệm
- phóng
- phát động
- ra mắt
- Cấp
- Lượt thích
- tải
- địa phương
- dài
- bảo trì
- làm cho
- quản lý
- giám đốc
- cách thức
- có nghĩa
- Metrics
- sửa đổi
- Màn Hình
- giám sát
- chi tiết
- nhiều
- tên
- Được đặt theo tên
- THÔNG TIN
- cần thiết
- cần
- Mới
- Công nghệ mới
- tiếp theo
- nút
- các nút
- thông báo
- thông báo
- con số
- of
- cung cấp
- on
- ONE
- mã nguồn mở
- hoạt động
- Nền tảng khác
- đầu ra
- gói
- cửa sổ
- tham số
- thông số
- riêng
- đặc biệt
- con đường
- hiệu suất
- Nền tảng
- plato
- Thông tin dữ liệu Plato
- PlatoDữ liệu
- tích cực
- Bài đăng
- thực hành
- trình bày
- chính
- Quy trình
- xử lý
- Hồ sơ
- cho
- cung cấp
- cung cấp
- Đẩy
- Đẩy
- Mau
- thực
- thời gian thực
- giới thiệu
- đều đặn
- liên quan
- phát hành
- vẫn
- Thông tin
- Kết quả
- bán lẻ
- xem xét
- Vai trò
- nguồn gốc
- chạy
- chạy
- khả năng mở rộng
- phần
- an ninh
- gửi
- cao cấp
- Loạt Sách
- dịch vụ
- Phiên
- định
- nên
- Đơn giản
- So
- Phần mềm
- giải pháp
- một số
- Spark
- riêng
- ngăn xếp
- Tiêu chuẩn
- Bắt đầu
- Bắt đầu
- bắt đầu
- Bước
- Các bước
- Dừng
- là gắn
- cửa hàng
- tinh giản
- dòng
- subnet
- Thành công
- như vậy
- Sudo
- hệ thống
- hệ thống
- Hãy
- nhóm
- Công nghệ
- viễn thông
- mẫu
- việc này
- Sản phẩm
- Them
- Kia là
- số ba
- Thông qua
- thời gian
- Chuỗi thời gian
- đến
- theo dõi
- kích hoạt
- sử dụng
- giá trị
- xác minh
- Xem
- hương
- đồng hồ
- Đường..
- cái nào
- trong khi
- sẽ
- với
- không có
- Công việc
- quy trình làm việc
- viết
- viết
- khoai mỡ
- năm
- trên màn hình
- zephyrnet