Các hướng dẫn tốt nhất của AWS khuyến khích khách hàng triển khai ứng dụng của họ trên nhiều tài khoản AWS để thiết lập ranh giới bảo mật và thanh toán giữa các nhóm và giảm thiểu tác động của các sự kiện vận hành. Khi doanh nghiệp mở rộng và tỷ lệ với hàng ngàn tài nguyên, khách hàng thường cần một trải nghiệm quan sát thống nhất để giúp họ tìm kiếm, trực quan hóa và phân tích dữ liệu giám sát chéo tài khoản, bao gồm các số liệu, nhật ký và dấu vết trên nhiều tài khoản AWS. Đối với JPMorgan Chase, ngân hàng đầu tư toàn cầu và công ty dịch vụ tài chính lớn nhất ở Mỹ, họ muốn cải thiện kỹ năng giám sát trên hồ sơ dữ liệu liên bang của họ đang nằm trên hàng ngàn tài khoản với Amazon CloudWatch. Trong bài đăng này, chúng tôi sẽ chỉ cho bạn cách thiết lập tính khả dụng chéo tài khoản trong Amazon CloudWatch để xem dữ liệu giám sát trên các tài khoản AWS được kết nối và cách JPMorgan Chase tận dụng tính khả dụng chéo tài khoản này trong giám sát tập trung của họ.
Data Mesh
Một hồ dữ liệu mạng lưới (data mesh lake) là một bể dữ liệu tương tác quy mô lớn. Đó là một sự chuyển đổi từ hồ dữ liệu monolithic sang một kiến trúc lỏng lẻo cho dữ liệu. Dữ liệu được tổ chức thành các sản phẩm (products) có thể được onboard, tiêu thụ và quản lý độc lập với nhau.
Sử dụng Data Mesh tại JPMorgan Chase
JPMorgan Chase đã tận dụng AWS Lake Formation để hỗ trợ nhiều dòng kinh doanh khác nhau nhằm tối đa hóa việc sử dụng lại dữ liệu và đảm bảo quản lý dữ liệu. JPMorgan Chase đã tạo ra một Data Mesh bên trong gọi là Federated Data Lake, nơi nhiều nhóm và ứng dụng sử dụng các tài khoản AWS khác nhau (Producer) để onboard dữ liệu, đăng ký với AWS Glue Catalog và truy cập vào AWS Lake Formation được phân quyền trong một tài khoản trung tâm (Governor). Mỗi dòng kinh doanh có thể tạo ra nhiều tài khoản producer và consumer tùy ý, tất cả đều được liên kết với tài khoản trung tâm. Nhóm quản lý sản phẩm dữ liệu có thể chia sẻ sản phẩm dữ liệu với các tài khoản consumer với quyền hạn tinh vi thông qua một đường ống tự động, tự phục vụ qua tài khoản trung tâm kiểm soát.

Hình 1. Kiến trúc Data Mesh trong JPMorgan Chase còn được gọi là Federated Data Lake
Amazon CloudWatch Cross-Account Observability
Amazon Web Services (AWS) vừa mới ra mắt tính năng cross-account observability trên Amazon CloudWatch giúp khách hàng giám sát và khắc phục sự cố ứng dụng trên nhiều tài khoản AWS trong một khu vực AWS. Bằng cách sử dụng tính năng cross-account observability trong CloudWatch, khách hàng có thể dễ dàng tìm kiếm, trực quan hóa và phân tích log, metric và traces mà không có bất kỳ giới hạn tài khoản nào. Khách hàng có thể bắt đầu với một chế độ xem toàn bộ các tài nguyên của ứng dụng để xác định các tài nguyên gây ra lỗi và đào sâu vào các traces, metric và log tương quan để tìm ra nguyên nhân của vấn đề. Việc truy cập và điều hướng dữ liệu liên quan trên nhiều tài khoản một cách mượt mà được cho phép bởi tính năng cross-account observability giúp khách hàng giảm thiểu nỗ lực thủ công cần thiết để khắc phục sự cố và tiết kiệm thời gian quý báu trong quá trình giải quyết vấn đề. Cross-account observability là một phần bổ sung cho khả năng giám sát thống nhất của CloudWatch.
Những gì chúng tôi đã có trước đây
Trước khi có tính năng CloudWatch Cross-Account Observability, mỗi chủ sở hữu tài khoản giữa các nhóm ứng dụng đều phải theo dõi khu vực của mình một cách độc lập. Mặc dù bảng điều khiển Cross-Account Cross-Region Dashboards cho phép chia sẻ bảng điều khiển giữa các nhóm để thu thập số liệu thống kê, chúng ta cần một cách để theo dõi yêu cầu qua cơ sở hạ tầng đang hợp tác hoặc tìm kiếm nhật ký qua các tài khoản khác nhau. Điều này dẫn đến một sự phân chia trách nhiệm và khả năng nhìn thấy trên một sản phẩm có tính chất hợp tác giữa các doanh nghiệp. Để giải quyết vấn đề, các nhóm phải phối hợp với nhau để trả lời các câu hỏi cơ bản có thể được trả lời dễ dàng nếu có cách để nối dữ liệu đó lại với nhau qua các tài khoản bị ảnh hưởng.
Một thay đổi trong tài khoản trung tâm có thể ảnh hưởng đến khả năng của tài khoản sản xuất để thêm dữ liệu hoặc tài khoản tiêu thụ để đọc dữ liệu. Tuy nhiên, khó để biết rằng một thay đổi đã có tác động tiêu cực đến những tài khoản này mà không xác minh nó trong từng tài khoản đó. Chúng ta có thể thiết lập một số giám sát hoặc kiểm tra sức khỏe trong các tài khoản sản xuất và tiêu thụ, nhưng dữ liệu đó không thể xem được bởi đội ngũ trung tâm thông qua tài khoản trung tâm.
Nếu không có báo cáo từ đội ngũ tài khoản sản xuất hoặc đội ngũ tài khoản tiêu dùng, đội ngũ tài khoản trung tâm sẽ không có ý thức về tác động tiêu cực. Điều này có thể làm tăng thời gian Phân tích Nguyên nhân Gốc (RCA) để xác định và sửa chữa các vấn đề. Trạng thái cải tiến là trạng thái mà đội ngũ trung tâm có thể ngay lập tức nhận được phản hồi từ tất cả các tài khoản kết nối về việc nền tảng có hoạt động bình thường và dữ liệu có thể truy cập được hay không. Để đạt được điều này, tài khoản trung tâm sẽ cần có một cách để thu thập, liên kết, tổng hợp và phân tích các dữ liệu giám sát này từ các tài khoản tham gia để giảm thiểu thời gian trung bình để giải quyết vấn đề (MTTR) khi có sự cố.
Làm thế nào Cross-Account Observability giúp cải thiện việc giám sát Federated Data Lake của JPMorgan Chase?
CloudWatch cross-account observability là tính năng quan sát thống nhất trên Amazon CloudWatch, cung cấp khả năng giám sát và sửa lỗi các ứng dụng chạy trên nhiều tài khoản AWS. Bạn có thể dễ dàng tìm kiếm, hiển thị và phân tích các chỉ số, log và traces với một cái nhìn toàn diện, như khi bạn đang hoạt động trong một tài khoản duy nhất mà không có ranh giới tài khoản. Sử dụng những khả năng này, nhóm trung tâm và các nhóm kinh doanh của chúng tôi có thể hợp tác với nhau hiệu quả hơn, nhóm trung tâm có thể quan sát tác động do các thay đổi của họ trong thời gian thực mà không cần sự trợ giúp, và MTTR của chúng tôi nhanh hơn và RCA đơn giản hơn.
Nhiệm vụ
Mục tiêu là tạo ra một hệ thống để các thay đổi về cài đặt trung tâm có thể được xác nhận ngay lập tức là không có tác hại cho tất cả các tài khoản nhà sản xuất và người tiêu dùng. Điều này có nghĩa là đội ngũ trung tâm nên có thể xem dữ liệu telemetric cho tất cả các tài khoản được kết nối. Tuy nhiên, có thể có nhiều tài khoản, vì vậy không lý tưởng cho đội ngũ trung tâm đăng nhập vào tất cả các tài khoản để xem dữ liệu telemetric để xác nhận rằng tất cả các chức năng đang hoạt động.
Hành động
Chúng tôi đã tự động hóa các kiểm tra sức khỏe trong các tài khoản nhà sản xuất và người tiêu dùng trong khi chia sẻ dữ liệu telemetric theo thời gian thực với tài khoản trung tâm bằng cách sử dụng quan sát chéo tài khoản để trực quan hóa và cảnh báo lỗi trên nền tảng kết hợp sức mạnh của các số liệu, nhật ký và lối đi. Quá trình này được chia thành vài bước.
- Tạo một hàm Lambda kiểm tra chức năng của hồ sơ dữ liệu. Ví dụ, trong tài khoản người tiêu dùng, một vai trò IAM cụ thể nên có thể truy vấn dữ liệu từ một bảng Glue Data Catalog được chia sẻ bằng cách sử dụng Athena. Hàm Lambda sẽ gửi nhật ký đến CloudWatch và kích hoạt theo dõi để gửi dữ liệu phân đoạn đến X-Ray.
- Tạo một lịch trình bằng cách sử dụng EventBridge để chạy hàm Lambda định kỳ.
- Cài đặt tài khoản trung tâm như một Sink. (Cài đặt chuyển tài khoản)
- Cài đặt tài khoản người tiêu dùng như là tài khoản nguồn để kết nối với Sink. (Cài đặt chuyển tài khoản)
Kiến trúc kết quả sẽ nhìn như sau.

Hình 2. Giám sát Hồ nước Liên bang JPMorgan Chase sau Quan sát Chéo Tài khoản CloudWatch.
Kết quả
Sau khi hoàn thành các bước trên, AWS X-Ray trong tài khoản trung tâm hiển thị một kiểm tra sức khỏe từ đầu đến cuối thành công cho một tài khoản người tiêu dùng. Lưu ý trong bản ghi này, các phần tử AWS:Lambda::Function có Acct# phía dưới cho thấy rằng dữ liệu này đang đến từ một tài khoản nguồn.

Hình 3. Xem trạng thái trace end-to-end cho cross-account Lambda functions.
Khi hệ thống bị lỗi, trace sẽ nhìn như thế này.

Hình 4. Cách các bất thường sẽ hiển thị trong cross-account tracing có thể được quản lý thông qua các cảnh báo.
Chúng ta có thể thiết lập các cảnh báo trong tài khoản giám sát để thông báo cho chúng ta khi điều này xảy ra.

Hình ảnh 5. Cảnh báo chuyển tài khoản đã thiết lập trong tài khoản giám sát
Kết luận
Quan sát chuyển tài khoản trong CloudWatch cung cấp một cái nhìn toàn diện về hoạt động chỉ trong vài bước mà không yêu cầu các đường ống dữ liệu bổ sung – giúp khách hàng tiết kiệm thời gian, công sức và chi phí trong việc quản lý cơ sở hạ tầng và ứng dụng. Trong bài đăng này, chúng tôi đã chỉ cho bạn cách tự động hóa kiểm tra sức khỏe trong các tài khoản nhà sản xuất và người tiêu dùng trong khi chia sẻ dữ liệu t telemetri theo thời gian thực với các tài khoản giám sát trung tâm. Amazon CloudWatch quan sát chuyển tài khoản hiện đã có sẵn nhiều khu vực AWS thương mại. Để biết thêm thông tin về quan sát chuyển tài khoản, vui lòng tham khảo tài liệu Amazon CloudWatch.
Bài được dịch từ bài viết trên AWS Blogs, bạn có thể xem bài viết gốc tại đây.