Logo Zephyrnet

Chiến lược khắc phục thảm họa cho Amazon MWAA – Phần 1 | Dịch vụ web của Amazon

Ngày:

Trong thế giới năng động của điện toán đám mây, việc đảm bảo khả năng phục hồi và tính sẵn sàng của các ứng dụng quan trọng là điều tối quan trọng. Khôi phục thảm họa (DR) là quá trình một tổ chức dự đoán và giải quyết các thảm họa liên quan đến công nghệ. Dành cho các tổ chức triển khai việc điều phối khối lượng công việc quan trọng bằng cách sử dụng Quy trình công việc được quản lý của Amazon cho Luồng khí Apache (Amazon MWAA), điều quan trọng là phải có sẵn kế hoạch DR để đảm bảo tính liên tục của hoạt động kinh doanh.

Trong loạt bài này, chúng tôi khám phá nhu cầu khắc phục thảm họa của Amazon MWAA và đề xuất các giải pháp giúp duy trì môi trường Amazon MWAA trước những gián đoạn ngoài ý muốn. Điều này cho phép bạn xác định, tránh và xử lý các rủi ro gián đoạn như một phần trong kế hoạch kinh doanh liên tục của bạn. Bài viết này tập trung vào việc thiết kế kiến ​​trúc DR tổng thể. Bài đăng tiếp theo trong loạt bài này sẽ tập trung vào việc triển khai các thành phần riêng lẻ bằng dịch vụ AWS.

Sự cần thiết của việc khắc phục thảm họa Amazon MWAA

Amazon MWAA, một dịch vụ được quản lý toàn phần dành cho Luồng khí Apache, mang lại giá trị to lớn cho các tổ chức bằng cách tự động hóa việc điều phối quy trình làm việc cho khối lượng công việc trích xuất, chuyển đổi và tải (ETL), DevOps và machine learning (ML). Amazon MWAA có kiến trúc phân tán với nhiều thành phần như bộ lập lịch, nhân viên, máy chủ web, hàng đợi và cơ sở dữ liệu. Điều này gây khó khăn cho việc thực hiện chiến lược DR toàn diện.

Môi trường Amazon MWAA đang hoạt động liên tục phân tích luồng không khí Đồ thị Acyclic có hướng (DAG), đọc chúng từ một cấu hình Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3). Nguồn DAG không có sẵn do không thể truy cập mạng, hỏng ngoài ý muốn hoặc bị xóa dẫn đến thời gian ngừng hoạt động kéo dài và gián đoạn dịch vụ.

Trong Airflow, cơ sở dữ liệu siêu dữ liệu là thành phần cốt lõi lưu trữ các biến cấu hình, vai trò, quyền và lịch sử chạy DAG. Do đó, cơ sở dữ liệu siêu dữ liệu lành mạnh rất quan trọng đối với môi trường Airflow của bạn. Giống như bất kỳ thành phần Airflow cốt lõi nào, việc có sẵn kế hoạch sao lưu và khắc phục thảm họa cho cơ sở dữ liệu siêu dữ liệu là điều cần thiết.

Amazon MWAA triển khai các thành phần Airflow cho nhiều Các vùng khả dụng trong VPC của bạn theo sở thích của bạn Khu vực AWS. Điều này cung cấp khả năng chịu lỗi và tự động phục hồi khi xảy ra lỗi ở Vùng sẵn sàng. Đối với khối lượng công việc quan trọng, khả năng phục hồi trước những suy yếu của một Khu vực thống nhất thông qua việc triển khai đa Khu vực cũng rất quan trọng để đảm bảo tính sẵn sàng cao và tính liên tục trong kinh doanh.

Cân bằng giữa các chi phí để duy trì cơ sở hạ tầng dư thừa, độ phức tạp và thời gian phục hồi là điều cần thiết đối với môi trường Amazon MWAA. Các tổ chức hướng tới các giải pháp hiệu quả về mặt chi phí để giảm thiểu Mục tiêu thời gian phục hồi (RTO) và Mục tiêu điểm phục hồi (RPO) để đáp ứng các thỏa thuận về mức độ dịch vụ của họ, có hiệu quả kinh tế và đáp ứng nhu cầu của khách hàng.

Phát hiện thảm họa trong môi trường chính: Giám sát chủ động thông qua các số liệu và cảnh báo

Việc phát hiện kịp thời các thảm họa trong môi trường sơ cấp là rất quan trọng để khắc phục thảm họa kịp thời. Giám sát các amazoncloudwatch Trình lập lịch trìnhChỉ số nhịp tim cung cấp thông tin chuyên sâu về tình trạng luồng không khí của môi trường Amazon MWAA đang hoạt động. Bạn có thể thêm các số liệu kiểm tra tình trạng khác vào tiêu chí đánh giá, chẳng hạn như kiểm tra tính khả dụng của các hệ thống ngược dòng hoặc hạ nguồn cũng như khả năng tiếp cận mạng. Kết hợp với Báo thức CloudWatch, bạn có thể gửi thông báo khi không đáp ứng được các ngưỡng này trong một số khoảng thời gian. Bạn có thể thêm cảnh báo vào bảng thông tin để giám sát và nhận cảnh báo về tài nguyên và ứng dụng AWS của mình trên nhiều Khu vực.

AWS công bố thông tin cập nhật nhất từng phút của chúng tôi về tính khả dụng của dịch vụ trên Trang tổng quan tình trạng dịch vụ. Bạn có thể kiểm tra bất kỳ lúc nào để nhận thông tin trạng thái hiện tại hoặc đăng ký nguồn cấp dữ liệu RSS để được thông báo về sự gián đoạn đối với từng dịch vụ riêng lẻ trong Khu vực hoạt động của bạn. Các Bảng thông tin tình trạng AWS cung cấp thông tin về các sự kiện AWS Health có thể ảnh hưởng đến tài khoản của bạn.

Bằng cách kết hợp giám sát số liệu, bảng thông tin có sẵn và cảnh báo tự động, bạn có thể nhanh chóng phát hiện tình trạng không có sẵn của môi trường chính, cho phép các biện pháp chủ động chuyển sang gói DR của bạn. Điều quan trọng là phải đưa yếu tố phát hiện, thông báo, báo cáo, phát hiện và khai báo sự cố vào kế hoạch và triển khai DR của bạn để cung cấp các mục tiêu thực tế và có thể đạt được, mang lại giá trị kinh doanh.

Trong các phần sau, chúng ta sẽ thảo luận về hai giải pháp chiến lược DR của Amazon MWAA và kiến ​​trúc của chúng.

Giải pháp chiến lược DR 1: Sao lưu và khôi phục

Chiến lược sao lưu và khôi phục bao gồm việc tạo các bản sao lưu thành phần Airflow trong cùng hoặc khác Khu vực với môi trường Amazon MWAA chính của bạn. Để đảm bảo tính liên tục, bạn có thể sao chép không đồng bộ những dữ liệu này sang Vùng DR của mình mà không ảnh hưởng nhiều đến hiệu suất trên môi trường Amazon MWAA chính của bạn. Trong trường hợp xảy ra sự cố suy giảm chính trong Khu vực hoặc gián đoạn dịch vụ, chiến lược này sẽ tạo ra một môi trường Amazon MWAA mới và khôi phục dữ liệu lịch sử về môi trường đó từ các bản sao lưu hiện có. Tuy nhiên, điều quan trọng cần lưu ý là trong quá trình khôi phục, sẽ có một khoảng thời gian không có môi trường Airflow nào hoạt động để xử lý luồng công việc cho đến khi môi trường mới được cung cấp đầy đủ và được đánh dấu là có sẵn.

Chiến lược này cung cấp giải pháp chi phí thấp và ít phức tạp, cũng phù hợp để giảm thiểu tình trạng mất hoặc hỏng dữ liệu trong Khu vực chính của bạn. Lượng dữ liệu được sao lưu và thời gian tạo môi trường Amazon MWAA mới (thường là 20–30 phút) sẽ ảnh hưởng đến tốc độ khôi phục. Để cho phép cơ sở hạ tầng được triển khai lại nhanh chóng mà không gặp lỗi, hãy triển khai bằng cách sử dụng cơ sở hạ tầng như mã (IAC). Nếu không có IaC, việc khôi phục môi trường DR tương tự có thể phức tạp, điều này sẽ dẫn đến thời gian khôi phục tăng lên và có thể vượt quá RTO của bạn.

Hãy cùng khám phá thiết lập cần thiết khi môi trường Amazon MWAA chính của bạn đang chạy tích cực, như minh họa trong hình sau.

Sao lưu và Khôi phục - Trước

Giải pháp bao gồm ba thành phần chính. Thành phần đầu tiên là môi trường chính, nơi các quy trình làm việc của Airflow được triển khai ban đầu và hoạt động tích cực. Thành phần thứ hai là thành phần giám sát thảm họa, bao gồm CloudWatch và sự kết hợp của một Chức năng bước AWS máy trạng thái và một AWS Lambda chức năng. Thành phần thứ ba dùng để tạo và lưu trữ các bản sao lưu của tất cả cấu hình và siêu dữ liệu cần thiết để khôi phục. Điều này có thể ở cùng Khu vực với Khu vực chính của bạn hoặc được sao chép sang Khu vực DR của bạn bằng cách sử dụng Sao chép liên vùng S3 (CRR). Đối với CRR, bạn cũng phải trả phí truyền dữ liệu giữa các Khu vực từ Amazon S3 đến từng Khu vực đích.

Ba bước đầu tiên trong quy trình làm việc như sau:

  1. Là một phần trong quy trình tạo bản sao lưu của bạn, siêu dữ liệu Airflow được sao chép sang vùng lưu trữ S3 bằng cách sử dụng xuất DAG tiện ích, chạy định kỳ dựa trên khoảng thời gian RPO của bạn.
  2. Môi trường Amazon MWAA chính hiện tại của bạn sẽ tự động gửi trạng thái tình trạng của bộ lập lịch tới CloudWatch Lập lịch nhịp tim Hệ mét.
  3. Chức năng bước gồm nhiều bước máy nhà nước được kích hoạt từ một chu kỳ Sự kiện Amazon lịch trình để theo dõi tình trạng sức khỏe của người lập lịch trình. Là bước chính của máy trạng thái, hàm Lambda đánh giá trạng thái của Lập lịch nhịp tim Hệ mét. Nếu số liệu được cho là lành mạnh thì sẽ không có hành động nào được thực hiện.

Hình dưới đây minh họa các bước bổ sung trong quy trình giải pháp.

Sao lưu và khôi phục bài đăng

  1. Khi số lượng nhịp tim lệch khỏi số lượng bình thường trong một khoảng thời gian, một loạt hành động sẽ được bắt đầu để khôi phục về môi trường Amazon MWAA mới trong Khu vực DR. Những hành động này bao gồm bắt đầu tạo môi trường Amazon MWAA mới, sao chép cấu hình môi trường chính và sau đó chờ môi trường mới khả dụng.
  2. Khi có sẵn môi trường, nhập DAG tiện ích được chạy để khôi phục nội dung siêu dữ liệu từ bản sao lưu. Mọi hoạt động chạy DAG bị gián đoạn do môi trường chính bị suy giảm cần phải được chạy lại theo cách thủ công để duy trì các thỏa thuận cấp độ dịch vụ. Các lần chạy DAG trong tương lai được xếp hàng đợi để chạy theo lịch trình được định cấu hình tiếp theo của chúng.

Giải pháp chiến lược DR 2: Môi trường chủ động-thụ động với đồng bộ hóa dữ liệu định kỳ

Môi trường chủ động-thụ động với chiến lược đồng bộ hóa dữ liệu định kỳ tập trung vào việc duy trì đồng bộ hóa dữ liệu định kỳ giữa môi trường chính chủ động và môi trường Amazon MWAA DR thụ động. Bằng cách cập nhật và đồng bộ hóa định kỳ các cửa hàng DAG và cơ sở dữ liệu siêu dữ liệu, chiến lược này đảm bảo rằng môi trường DR vẫn hiện hành hoặc gần như hiện hành với môi trường chính. Vùng DR có thể giống hoặc khác với môi trường Amazon MWAA chính của bạn. Trong trường hợp xảy ra thảm họa, các bản sao lưu có sẵn để hoàn nguyên về trạng thái tốt đã biết trước đó nhằm giảm thiểu mất mát hoặc hỏng dữ liệu.

Chiến lược này cung cấp RTO và RPO thấp với khả năng đồng bộ hóa thường xuyên, cho phép phục hồi nhanh chóng với mức độ mất dữ liệu tối thiểu. Chi phí cơ sở hạ tầng và việc triển khai mã được gộp lại để duy trì cả môi trường Amazon MWAA chính và DR. Môi trường DR của bạn có sẵn ngay lập tức để chạy DAG.

Hình dưới đây minh họa thiết lập cần thiết khi môi trường Amazon MWAA chính của bạn đang chạy.

Chủ động Bị động trước

Giải pháp bao gồm bốn thành phần chính. Tương tự như giải pháp sao lưu và khôi phục, thành phần đầu tiên là môi trường chính, nơi quy trình công việc được triển khai ban đầu và đang chạy tích cực. Thành phần thứ hai là thành phần giám sát thảm họa, bao gồm CloudWatch và sự kết hợp giữa máy trạng thái Step Functions và chức năng Lambda. Thành phần thứ ba tạo và lưu trữ các bản sao lưu cho tất cả cấu hình và siêu dữ liệu cần thiết để đồng bộ hóa cơ sở dữ liệu. Điều này có thể ở cùng Khu vực với Khu vực chính hoặc được sao chép sang Khu vực DR của bạn bằng cách sử dụng Bản sao liên khu vực của Amazon S3. Như đã đề cập trước đó, đối với CRR, bạn cũng phải trả phí truyền dữ liệu liên Khu vực từ Amazon S3 đến từng Khu vực đích. Thành phần cuối cùng là môi trường Amazon MWAA thụ động có cùng mã Airflow và cấu hình môi trường như môi trường chính. DAG được triển khai trong môi trường DR sử dụng cùng một đường dẫn tích hợp liên tục và phân phối liên tục (CI/CD) như chính. Không giống như DAG chính, DAG được giữ ở trạng thái tạm dừng để không gây ra các lần chạy trùng lặp.

Các bước đầu tiên của quy trình làm việc tương tự như chiến lược sao lưu và khôi phục:

  1. Là một phần trong quy trình tạo bản sao lưu của bạn, siêu dữ liệu Airflow được sao chép sang bộ chứa S3 bằng tiện ích DAG xuất, chạy định kỳ dựa trên khoảng thời gian RPO của bạn.
  2. Môi trường Amazon MWAA chính hiện tại của bạn sẽ tự động gửi trạng thái tình trạng của bộ lập lịch tới CloudWatch Lập lịch nhịp tim Hệ mét.
  3. Máy trạng thái Step Functions gồm nhiều bước được kích hoạt từ lịch trình Amazon EventBridge định kỳ để theo dõi trạng thái hoạt động của bộ lập lịch. Là bước chính của máy trạng thái, hàm Lambda đánh giá trạng thái của Lập lịch nhịp tim Hệ mét. Nếu số liệu được cho là lành mạnh thì sẽ không có hành động nào được thực hiện.

Hình dưới đây minh họa các bước cuối cùng của quy trình làm việc.

Bài đăng thụ động tích cực

  1. Khi số lượng nhịp tim lệch khỏi số lượng bình thường trong một khoảng thời gian, các hành động DR sẽ được bắt đầu.
  2. Bước đầu tiên, hàm Lambda kích hoạt tiện ích nhập DAG để khôi phục nội dung siêu dữ liệu từ bản sao lưu sang môi trường Amazon MWAA DR thụ động. Khi quá trình nhập hoàn tất, cùng một DAG có thể bỏ tạm dừng các DAG luồng khí khác, khiến chúng hoạt động cho các lần chạy trong tương lai. Mọi hoạt động chạy DAG bị gián đoạn do môi trường chính bị suy giảm cần phải được chạy lại theo cách thủ công để duy trì các thỏa thuận cấp độ dịch vụ. Các lần chạy DAG trong tương lai được xếp hàng đợi để chạy theo lịch trình được định cấu hình tiếp theo của chúng.

Các phương pháp hay nhất để cải thiện khả năng phục hồi của Amazon MWAA

Để nâng cao khả năng phục hồi của môi trường Amazon MWAA của bạn và đảm bảo khôi phục suôn sẻ sau thảm họa, hãy cân nhắc triển khai các biện pháp thực hành tốt nhất sau:

  • Cơ chế sao lưu và khôi phục mạnh mẽ – Triển khai các cơ chế sao lưu và khôi phục toàn diện cho dữ liệu Amazon MWAA là điều cần thiết. Việc thường xuyên xóa siêu dữ liệu hiện có dựa trên chính sách lưu giữ của tổ chức của bạn sẽ giúp giảm thời gian sao lưu và giúp môi trường Amazon MWAA của bạn hoạt động hiệu quả hơn.
  • Tự động hóa sử dụng IaC – Sử dụng các công cụ tự động hóa và điều phối như Hình thành đám mây AWS, Các Bộ công cụ phát triển đám mây AWS (AWS CDK) hoặc Terraform có thể hợp lý hóa việc triển khai và quản lý cấu hình của môi trường Amazon MWAA. Điều này đảm bảo tính nhất quán, khả năng tái tạo và phục hồi nhanh hơn trong các tình huống DR.
  • DAG và nhiệm vụ bình thường – Trong Airflow, một DAG được coi là không có giá trị nếu việc chạy lại cùng một DAG với cùng một đầu vào nhiều lần có tác dụng tương tự như việc chỉ chạy nó một lần. Thiết kế các DAG bình thường và giữ nguyên các tác vụ sẽ giảm thời gian khôi phục sau các lỗi khi bạn phải chạy lại DAG bị gián đoạn theo cách thủ công trong môi trường đã khôi phục của mình.
  • Kiểm tra và xác nhận thường xuyên – Chiến lược Amazon MWAA DR mạnh mẽ phải bao gồm các bài tập kiểm tra và xác nhận thường xuyên. Bằng cách mô phỏng các kịch bản thảm họa, bạn có thể xác định mọi lỗ hổng trong kế hoạch DR của mình, tinh chỉnh các quy trình và đảm bảo môi trường Amazon MWAA của bạn có thể phục hồi hoàn toàn.

Kết luận

Trong bài đăng này, chúng tôi đã khám phá những thách thức đối với việc khắc phục thảm họa của Amazon MWAA và thảo luận về các biện pháp thực hành tốt nhất để cải thiện khả năng phục hồi. Chúng tôi đã kiểm tra hai giải pháp chiến lược DR: sao lưu và khôi phục và môi trường chủ động-thụ động với đồng bộ hóa dữ liệu định kỳ. Bằng cách triển khai các giải pháp này và làm theo các biện pháp thực hành tốt nhất, bạn có thể bảo vệ môi trường Amazon MWAA của mình, giảm thiểu thời gian ngừng hoạt động và giảm thiểu tác động của thảm họa. Việc kiểm tra, xác nhận và thích ứng thường xuyên với các yêu cầu ngày càng phát triển là rất quan trọng đối với chiến lược DR của Amazon MWAA hiệu quả. Bằng cách liên tục đánh giá và tinh chỉnh các kế hoạch khắc phục thảm họa, bạn có thể đảm bảo khả năng phục hồi và hoạt động không bị gián đoạn của môi trường Amazon MWAA, ngay cả khi đối mặt với các sự kiện không lường trước được.

Để biết thêm chi tiết và ví dụ về mã trên Amazon MWAA, hãy tham khảo Hướng dẫn sử dụng Amazon MWAAAmazon MWAA ví dụ GitHub repo.


Về các tác giả

Parnab Basak là Kiến trúc sư giải pháp cấp cao và Chuyên gia máy chủ tại AWS. Anh ấy chuyên tạo ra các giải pháp mới dựa trên nền tảng đám mây bằng cách sử dụng các phương pháp phát triển phần mềm hiện đại như serverless, DevOps và phân tích. Parnab hợp tác chặt chẽ trong lĩnh vực dịch vụ phân tích và tích hợp, giúp khách hàng áp dụng các dịch vụ AWS cho nhu cầu điều phối quy trình công việc của họ.

Chandan Rupakheti là Kiến trúc sư giải pháp và Chuyên gia máy chủ tại AWS. Anh ấy là một nhà lãnh đạo kỹ thuật, nhà nghiên cứu và cố vấn đầy nhiệt huyết với sở trường xây dựng các giải pháp đổi mới trên đám mây và gắn kết các bên liên quan lại với nhau trong hành trình đám mây của họ. Ngoài cuộc sống nghề nghiệp, anh thích dành thời gian cho gia đình và bạn bè ngoài việc nghe và chơi nhạc.

Vinod Jayendra là Trưởng nhóm hỗ trợ doanh nghiệp trong các tài khoản ISV tại Amazon Web Services, nơi anh giúp khách hàng giải quyết các thách thức về tối ưu hóa kiến ​​trúc, vận hành và chi phí. Với sự tập trung đặc biệt vào công nghệ Serverless, anh ấy đã vận dụng kiến ​​thức nền tảng sâu rộng của mình về phát triển ứng dụng để cung cấp các giải pháp hàng đầu. Ngoài công việc, anh tìm thấy niềm vui trong khoảng thời gian quý giá dành cho gia đình, tham gia các cuộc phiêu lưu bằng xe đạp và huấn luyện đội thể thao trẻ.

Rupesh Tiwari là Kiến trúc sư giải pháp cấp cao tại AWS ở Thành phố New York, tập trung vào Dịch vụ tài chính. Ông có hơn 18 năm kinh nghiệm về CNTT trong các lĩnh vực tài chính, bảo hiểm và giáo dục, đồng thời chuyên thiết kế các ứng dụng quy mô lớn và khối lượng công việc dữ liệu lớn trên nền tảng đám mây. Khi rảnh rỗi, Rupesh thích hát karaoke, xem phim truyền hình hài và tạo ra những khoảnh khắc vui vẻ bên gia đình.

tại chỗ_img

Tin tức mới nhất

tại chỗ_img