Xây dựng các đường ống xử lý hình ảnh vệ tinh lai trên AWS.

Từ góc nhìn độc đáo của mình, các vệ tinh thu thập dữ liệu giúp chúng ta hiểu rõ hơn vũ trụ của chúng ta. Các vệ tinh quan sát Trái Đất (EO) xoay quanh hành tinh của chúng ta liên tục chụp ảnh để giám sát và hiểu môi trường Trái Đất. Điều này có thể hỗ trợ quyết định về một loạt chủ đề bao gồm biến đổi khí hậu, quản lý thiên tai, nông nghiệp và an ninh lương thực, và phát triển cơ sở hạ tầng.

Tuy nhiên, để trích xuất dữ liệu và thông tin hữu ích từ dữ liệu vệ tinh gốc, cần phải thực hiện một số bước xử lý để biến chúng thành các sản phẩm cấp cao hơn. Các đường ống xử lý này thường sử dụng thuật toán học máy (ML) cho một số bước đó.

Các công ty hàng không vũ trụ và địa lý sử dụng Đám mây Amazon Web Services (AWS) để phát triển và triển khai các tải công việc xử lý này một cách an toàn, có khả năng mở rộng và tối ưu chi phí. Họ có thể sử dụng Dịch vụ Lưu trữ Đơn giản của Amazon (Amazon S3) để lưu trữ dữ liệu petabytes một cách bền vững và tiết kiệm chi phí, và lựa chọn giải pháp tính toán ưa thích để xác định một kiến trúc có khả năng tự mở rộng động dựa trên nhu cầu. Một số khách hàng phụ thuộc vào danh mục dịch vụ không cần máy chủ của AWS, giao quyền quản lý cơ sở hạ tầng và giảm thiểu công việc vận hành. Orbital Sidekick sử dụng AWS để xử lý dữ liệu vệ tinh với kiểu kiến trúc này.

Tuy nhiên, trong một số trường hợp, các công ty gặp phải các trường hợp sử dụng đặc biệt hoặc khách hàng cuối cùng đòi hỏi đường ống xử lý của họ được triển khai tại chỗ. Lý do đằng sau các yêu cầu này rất đa dạng; một số tổ chức có nhu cầu địa phương hóa dữ liệu hoặc dự định tối đa hóa lợi tức đầu tư cho cơ sở hạ tầng hiện có. Ngay cả khi các kịch bản này chỉ chiếm một phần nhỏ của tổng số trường hợp sử dụng, các công ty phát triển các tải công việc loại này thường nhằm thiết kế kiến trúc có thể hỗ trợ những nhu cầu này và tránh việc duy trì hai giải pháp song song: một phù hợp cho triển khai đám mây và một cho trường hợp sử dụng tại chỗ.

Trong bài đăng trên blog này, tìm hiểu cách các công ty hoạt động trên AWS có thể thiết kế kiến trúc cực kỳ linh hoạt có thể hỗ trợ cả triển khai đám mây và tại chỗ cho các trường hợp sử dụng xử lý hình ảnh vệ tinh của họ với ít sự thay đổiTừ góc nhìn độc đáo của mình, các vệ tinh thu thập dữ liệu giúp chúng ta hiểu sâu hơn về vũ trụ. Các vệ tinh quan sát Trái Đất (EO) xoay quanh hành tinh của chúng ta liên tục chụp ảnh để giám sát và hiểu môi trường Trái Đất. Điều này có thể hỗ trợ quyết định về nhiều chủ đề, bao gồm biến đổi khí hậu, quản lý thiên tai, nông nghiệp và an ninh lương thực, cũng như phát triển cơ sở hạ tầng.

Tuy nhiên, để lấy được dữ liệu hữu ích và thông tin từ dữ liệu vệ tinh gốc, cần phải qua một số bước xử lý để biến chúng thành các sản phẩm cấp cao hơn. Các đường ống xử lý này thường sử dụng thuật toán học máy (ML) trong một số bước.

Các công ty hàng không vũ trụ và địa lý sử dụng Đám mây Amazon Web Services (AWS) để phát triển và triển khai các tải công việc xử lý này một cách an toàn, có khả năng mở rộng và tối ưu chi phí. Họ có thể sử dụng Dịch vụ Lưu trữ Đơn giản của Amazon (Amazon S3) để lưu trữ dữ liệu petabyte một cách bền vững và tiết kiệm chi phí, và chọn giải pháp tính toán ưa thích để xây dựng một kiến trúc có khả năng mở rộng linh hoạt dựa trên nhu cầu. Một số khách hàng dựa vào danh mục dịch vụ không máy chủ của AWS, giao quyền quản lý cơ sở hạ tầng và giảm thiểu công việc vận hành. Orbital Sidekick sử dụng AWS để xử lý dữ liệu vệ tinh theo kiểu kiến trúc này.

Tuy nhiên, trong một số trường hợp, các công ty gặp phải các trường hợp sử dụng đặc biệt hoặc khách hàng cuối cùng yêu cầu đường ống xử lý của họ được triển khai trên trang. Các lý do đằng sau yêu cầu này rất đa dạng; một số tổ chức có yêu cầu về nơi lưu trữ dữ liệu hoặc muốn tối đa hóa lợi nhuận từ cơ sở hạ tầng hiện có. Mặc dù các tình huống này chỉ chiếm một phần nhỏ trong tổng số tình huống sử dụng, các công ty phát triển các tải công việc loại này thường thiết kế kiến trúc có thể hỗ trợ những yêu cầu này và tránh việc duy trì hai giải pháp song song: một phù hợp cho triển khai trên đám mây và một cho các trường hợp sử dụng trên trang.

Trong bài đăng trên blog này, hãy tìm hiểu cách các công ty hoạt động trên AWS có thể thiết kế kiến trúc linh hoạt cao có thể hỗ trợ cả các trường hợp triển khai trên đám mây và trên cơ sở dữ liệu nội bộ cho công việc xử lý hình ảnh vệ tinh của họ với sự thay đổi tối thiểu, bằng cách sử dụng các dịch vụ AWS như Amazon Elastic Kubernetes Service (Amazon EKS) và AWS Outposts.

“Trên cơ sở dữ liệu nội bộ” có ý nghĩa gì thật sự?

Khi thảo luận về việc triển khai phải thực hiện trên cơ sở dữ liệu nội bộ, các yêu cầu cụ thể đằng sau nhu cầu này thường xác định giải pháp có lợi nhất. Một số người có thể nghĩ rằng việc triển khai trên cơ sở dữ liệu nội bộ luôn ám chỉ việc chạy trên cơ sở hạ tầng của khách hàng. Tuy nhiên, điều này có thể không đúng. Ví dụ, nếu yêu cầu này xuất phát từ ràng buộc về độ trễ hoặc địa phương dữ liệu, tổ chức và công ty có thể xem xét việc chạy trên AWS Outposts như một giải pháp thay thế.

Outposts là một họ giải pháp được quản lý hoàn toàn cung cấp cơ sở hạ tầng và dịch vụ AWS đến bất kỳ vị trí nội bộ hoặc ngoại vi nào. Với Outposts, bạn có thể chạy một số dịch vụ AWS cục bộ và kết nối với một loạt các dịch vụ có sẵn trong Khu vực AWS, đạt được tính nhất quán vận hành và sử dụng các dịch vụ, công cụ và API AWS quen thuộc, giúp duy trì cùng một tốc độ đổi mới như trên đám mây. Nó giảm đáng kể công việc vận hành so với việc chạy trên cơ sở hạ tầng của khách hàng vì theo Mô hình Trách nhiệm Chia sẻ của AWS, AWS chịu trách nhiệm về phần cứng và phần mềm chạy các dịch vụ AWS. AWS quản lý các bản vá bảo mật, cập nhật firmware và duy trì thiết bị Outposts. AWS cũng giám sát hiệu suất, sức khỏe và số liệu cho Outposts của bạn và xác định xem có cần bất kỳ công việc bảo trì nào hay không.

Môi trường tính toán nhất quán trên các triển khai khác biệt

Khi tổ chức cần ưu tiên khả năng triển khai các luồng xử lý dữ liệu trên nhiều môi trường khác nhau (bao gồm đám mây và trên cơ sở dữ liệu nội bộ), họ có thể sử dụng Amazon EKS. Là một giải pháp dựa trên container, Amazon EKS cung cấp tính di động và tính nhất quán vận hành trên các môi trường triển khai khác nhau. Ngoài ra, Amazon EKS đã được chứng nhận tuân thủ Kubernetes, do đó các ứng dụng hiện có chạy trên Kubernetescũng tương thích với Amazon EKS. Điều này mang lại những lợi ích khác nhau như tăng cường khả năng tương thích, linh hoạt và một cộng đồng nguồn nhân lực có kiến thức về Kubernetes ngày càng phát triển.

Các công ty có thể sử dụng Kubernetes để chạy các công việc xử lý dữ liệu và điều phối các đường ống học máy trong môi trường đám mây hoặc trên cơ sở dữ liệu nội bộ vì nó hỗ trợ các lập lịch công việc như Airflow, Prefect hoặc Argo để quản lý các quy trình phức tạp; các framework như Spark để xử lý hàng loạt; và nhiều nền tảng học máy khác nhau như Kubeflow hoặc MLFlow. Năm ngoái, AWS giới thiệu sáng kiến AWS Data on EKS (DoEKS) để tạo ra và phân phối các tài nguyên như các best practice, mẫu mã mã nguồn, và mã mẫu để đơn giản hóa và tăng tốc quá trình xây dựng, triển khai và mở rộng công việc xử lý dữ liệu trên Amazon EKS.

Amazon EKS cung cấp một loạt các tùy chọn triển khai Kubernetes từ AWS quản lý đến cơ sở hạ tầng do khách hàng quản lý, cho phép bạn thích nghi với nhiều trường hợp sử dụng khác nhau.

Hình 1. Phạm vi các tùy chọn triển khai Amazon EKS từ quản lý bởi AWS đến quản lý bởi khách hàng. Bắt đầu từ phần quản lý bởi AWS và di chuyển hướng đến các tùy chọn quản lý bởi khách hàng, khách hàng có thể sử dụng Amazon EKS, Amazon EKS trong các khu vực địa phương, Amazon EKS trong các khu vực Wavelength, Amazon EKS trên Outposts, Amazon EKS Anywhere và Amazon EKS Distro.

Triển khai trong một khu vực AWS

Khi chạy các workloads trong một khu vực AWS, Amazon EKS giúp chạy các nhóm Kubernetes ở quy mô lớn. Amazon EKS giảm thiểu công sức vận hành cần thiết bằng cách cung cấp một bộ điều khiển Kubernetes hoàn toàn được quản lý, có khả năng sẵn sàng cao và có khả năng mở rộng chạy trên nhiều AWS Availability Zones. Sau đó, bạn có thể chọn sử dụng các instance Amazon Elastic Compute Cloud (Amazon EC2) hoặc AWS Fargate cho data plane.

Triển khai trên Outposts rack của AWS

Khi triển khai một đường ống trên nền tảng trong cơ sở sử dụng một Outposts rack, bạn có thể sử dụng Amazon EKS trên Outposts và tiếp tục sử dụng các giao diện lập trình ứng dụng (API), bảng điều khiển và công cụ mà bạn đã sử dụng để chạy các nhóm Amazon EKS trong đám mây. Với tùy chọn triển khai nhóm mở rộng, bạn có thể tiếp tục chạy bộ điều khiển Kubernetes trong một khu vực AWS và các nút worker trên Outposts rack. Tuy nhiên, nếu kết nối đến khu vực AWS chạy Amazon EKS kém hoặc không đáng tin cậy, AWS khuyến nghị sử dụng tùy chọn triển khai nhóm cục bộ, trong đó cả bộ điều khiển và các nút chạy trên Outposts rack.

Triển khai trên cơ sở hạ tầng của khách hàng

Đối với các trường hợp sử dụng trong cơ sở không thể sử dụng Outposts rack, bạn vẫn có thể sử dụng Amazon EKS Anywhere để tạo và vận hành các nhóm Kubernetes trong cơ sở trên cơ sở hạ tầng của khách hàng. Amazon EKS Anywhere sử dụng Amazon EKS Distro, bản phân phối Kubernetes giống như bản triển khai bởi Amazon EKS, cho phép bạn tạo các nhóm nhất quán với các quy ước tốt nhất của Amazon EKS như cập nhật phần mềm mới nhất và các bản vá bảo mật mở rộng.

Cách triển khai hoạt động học máy (MLOps) trong môi trường kết hợp

Thông thường, các đường ống xử lý hình ảnh vệ tinh bao gồm các bước thực hiện suy luận học máy, chẳng hạn như phát hiện đám mây và phân loại bao phủ đất. Trong những trường hợp này, việc xây dựng MLOps mạnh mẽ và duy trì khả năng theo dõi cho các mô hình triển khai trên nhiều môi trường là quan trọng.

Trong các kịch bản kết hợp yêu cầu suy luận học máy được thực hiện trong cơ sở, khách hàng có thể chọn hai tùy chọn chính:

Triển khai toàn bộ đường ống MLOps như một phần của khối công việc trong cơ sở, bao gồm xây dựng, huấn luyện, triển khai và quản lý các mô hình học máy. Khách hàng có thể triển khai nền tảng ML ưa thích của họ, chẳng hạn như Kubeflow, Metaflow hoặc MLflow, trên nhóm Amazon EKS đãTriển khai trong một khu vực AWS

Khi chạy workloads trong một khu vực AWS, Amazon EKS giúp chạy các nhóm Kubernetes ở quy mô lớn. Amazon EKS giảm thiểu công sức vận hành cần thiết bằng cách cung cấp một bộ điều khiển Kubernetes hoàn toàn được quản lý, có khả năng sẵn sàng cao và có khả năng mở rộng chạy trên nhiều AWS Availability Zones. Sau đó, bạn có thể chọn sử dụng hoặc các instances Amazon Elastic Compute Cloud (Amazon EC2) hoặc AWS Fargate cho data plane.

Triển khai trên Outposts rack của AWS

Khi triển khai một pipeline trên cơ sở sử dụng một Outposts rack, bạn có thể sử dụng Amazon EKS trên Outposts và tiếp tục sử dụng các interfaces lập trình ứng dụng (APIs), bảng điều khiển và công cụ mà bạn đã sử dụng để chạy các nhóm Amazon EKS trong đám mây. Với tùy chọn triển khai nhóm mở rộng, bạn có thể tiếp tục chạy bộ điều khiển Kubernetes trong một khu vực AWS và các worker nodes trên Outposts rack. Tuy nhiên, nếu kết nối đến khu vực AWS chạy Amazon EKS không ổn định, AWS khuyến nghị sử dụng tùy chọn triển khai nhóm địa phương, trong đó cả bộ điều khiển và các node chạy trong Outposts rack.

Triển khai trên cơ sở hạ tầng của khách hàng

Trong các trường hợp sử dụng trên cơ sở không thể sử dụng Outposts rack, bạn vẫn có thể sử dụng Amazon EKS Anywhere để tạo và vận hành các nhóm Kubernetes trên cơ sở hạ tầng của khách hàng. Amazon EKS Anywhere sử dụng Amazon EKS Distro, bản phân phối Kubernetes tương tự như bản triển khai bởi Amazon EKS, cho phép bạn tạo các nhóm nhất quán với các quy tắc tốt nhất của Amazon EKS như cập nhật phần mềm mới nhất và các bản vá bảo mật mở rộng.

Cách triển khai hoạt động học máy (MLOps) trong môi trường kết hợp

Thông thường, các đường ống xử lý hình ảnh vệ tinh bao gồm các bước thực hiện suy luận học máy, chẳng hạn như phát hiện đám mây và phân loại bao phủ đất. Trong các trường hợp như vậy, việc xây dựng MLOps mạnh mẽ và duy trì khả năng theo dõi đối với các mô hình triển khai trên nhiều môi trường là quan trọng.

Trong các kịch bản kết hợp yêu cầu suy luận học máy được thực hiện trong cơ sở, khách hàng có thể chọn hai tùy chọn chính:

Triển khai toàn bộ đường ống MLOps là một phần của khối công việc trên cơ sở, bao gồm xây dựng, huấn luyện, triển khai và quản lý các mô hình học máy. Khách hàng có thể triển khai nền tảng ML ưa thích của mình, chẳng hạn như Kubeflow, Metaflow hoặc MLflow, trên nhóm Amazon EKS đã được cung cấp trên Outposts hoặc trên cơ sở hạ tầng của khách hàng. Các framework này là mã nguồn mở và cung cấp tính linh hoạt và khả năng di chuyển.

Xây dựng, huấn luyện và quản lý các mô hình học máy trong khu vực AWS và triển khai các mô hình để thực hiện suy luận trong cơ sở. Trong trường hợp này, bạn vẫn có thể chạy nền tảng ML mã nguồn mở ưa thích trên một nhóm Amazon EKS trong khu vực AWS; tuy nhiên, như một lựa chọn thay thế, bạn có thể sử dụng Amazon SageMaker. SageMaker là một dịch vụ của AWS để chuẩn bị dữ liệu và xây dựng, huấn luyện và triển khai các mô hình học máy với cơ sở hạ tầng, công cụ và quy trình làm việc được quản lý hoàn toàn. Các mô hình được xây dựng và huấn luyện bằng SageMaker trong khu vực AWS sau đó có thể triển khai trong cơ sở.

Làm thế nào mọi thứ kết hợp với nhau?

Bạn có thể tích hợp các triển khai trong cơ sở đã thảo luận trước đó với phần còn lại của cơ sở hạ tầng trong AWS. Hình 2 và Hình 3 dưới đây cho thấy hai kiến trúc tham chiếu bao gồm triển khai trong cơ sở trên Outposts rack và triển khai trong cơ sở trên cơ sở hạ tầng của khách hàng, tương ứng. Chi tiết của việc triển khai sẽ thay đổi tùy thuộc vào trường hợp sử dụng cụ thể và yêu cầu liên quan.

Triển khai đường ống xử lý hình ảnh vệ tinh trên Outposts rack

Hình 2. Sơ đồ kiến trúc cho một đường ống xử lý hình ảnh vệ tinh triển khai trên Outposts rack.

Hình 2 mô tả một kiến trúc cấp cao cho việc tạo ra một đường ống xử lý hình ảnh vệ tinh triển khai trên Outposts rack. Sử dụng các bước sau để xây dựng kiến trúc này:

Tạo một đường ống tích hợp liên tục (CI) cho khối công việc xử lý hình ảnh của bạn bằng cách sử dụng AWS CodeCommit, AWS CodePipeline và AWS CodeBuild. Lưu trữ hình ảnh container trong Amazon Elastic Container Registry (Amazon ECR).

Phát triển và huấn luyện các mô hình ML của bạn bằng SageMaker trong khu vực AWS hoặc một giải pháp ML thay thế, entwederentweder trong khu vực AWS hoặc là một phần của triển khai trong cơ sở.

Sử dụng Amazon CloudWatch để giám sát tập trung các tài nguyên AWS và trong cơ sở.

Đạt được trải nghiệm hybrid nhất quán và cơ sở hạ tầng được quản lý đầy đủ bằng cách sử dụng Outposts rack cho triển khai trong cơ sở.

Lưu trữ đường ống xử lý của bạn trong Amazon EKS trên Outposts. Chọn công cụ điều phối ưa thích của bạn.

Sử dụng một công cụ giao hàng liên tục (CD) như FluxCD, một hệ thống CD mã nguồn mở được phát triển bởi Weaveworks, để lấy và triển khai các hình ảnh container mới nhất.

Chạy các hoạt động hàng loạt để tối ưu hóa thời gian xử lý bằng cách sử dụng các giải pháp như Amazon EMR trên EKS.

Sử dụng framework ML đã chọn trong quá trình phát triển mô hình cho các bước đường ống xử lý yêu cầu suy luận ML.

Lưu trữ dữ liệu hình ảnh vệ tinh nguyên gốc và đã xử lý của bạn trong Amazon S3 trên Outposts. Duy trì siêu dữ liệu trong dịch vụ Cơ sở dữ liệu Quan hệ Amazon (Amazon RDS).

Một liên kết dịch vụ kết nối Outpost rack với khu vực AWS được lựa chọn của bạn. Tùy chọn, bạn có thể sử dụng AWS Direct Connect.

Triển khai đường ống xử lý hình ảnh vệ tinh trên cơ sở hạ tầng của khách hàng.

Hình 3. Sơ đồ kiến trúc cho một đường ống xử lý hình ảnh vệ tinh triển khai trên cơ sở hạ tầng của khách hàng.

Hình 3 mô tả một kiến trúc cấp cao để tạo ra một đường ống xử lý hình ảnh vệ tinh triển khai trên cơ sở hạ tầng của khách hàng. Sử dụng các bước sau để xây dựng kiến trúc này:

1. Tạo một đường ống tích hợp liên tục (CI) cho khối công việc xử lý hình ảnh của bạn bằng cách sử dụng CodeCommit, CodePipeline và CodeBuild. Lưu trữ hình ảnh container trong Amazon ECR.

2. Phát triển và huấn luyện các mô hình ML của bạn bằng cách sử dụng SageMaker trong Khu vực AWS hoặc một giải pháp ML thay thế trong Khu vực AWS hoặc là một phần của triển khai trong cơ sở.

3. Sử dụng CloudWatch để giám sát tập trung các tài nguyên AWS và trong cơ sở của khách hàng.

4. Trong trường hợp yêu cầu không cho phép triển khai trên Outposts rack, khách hàng có thể triển khai kiến trúc lai này trực tiếp trên cơ sở hạ tầng của khách hàng.

5. Triển khai đường ống xử lý trên Amazon EKS Anywhere. Chọn công cụ điều phối ưa thích của bạn.

6. Sử dụng một công cụ giao hàng liên tục (CD) như FluxCD để lấy và triển khai các hình ảnh container mới nhất.

7. Chạy các hoạt động hàng loạt để tối ưu hóa thời gian xử lý bằng cách sử dụng giải pháp ưa thích của bạn.

8. Sử dụng framework ML đã chọn trong quá trình phát triển mô hình cho các bước đường ống xử lý yêu cầu suy luận ML.

9. Lưu trữ dữ liệu hình ảnh vệ tinh nguyên gốc và đã xử lý trong giải pháp lưu trữ đối tượng đã chọn của bạn. Duy trì siêu dữ liệu trong cơ sở dữ liệu PostgreSQL.

10. Kết nối triển khai trong Khu vực AWS với trung tâm dữ liệu doanh nghiệp của bạn bằng cách sử dụng AWS Site-to-Site VPN hoặc Direct Connect.

Tìm hiểu thêm về AWS cho ngành hàng không vũ trụ và vệ tinh

Các tổ chức hàng không vũ trụ có thể sử dụng AWS để thiết kế kiến trúc tối đa hóa tính linh hoạt cho khối công việc xử lý hình ảnh vệ tinh của họ và cho phép cả trường hợp triển khai đám mây và trong cơ sở với ít sự thay đổi nhất. Tìm hiểu thêm về các giải pháp được tùy chỉnh cho các trường hợp sử dụng phổ biến khác trong ngành hàng không vũ trụ và vệ tinh trong Thư viện Giải pháp AWS.

Các tổ chức trong mọi quy mô và ngành công nghiệp đang biến đổi và thực hiện nhiệm vụ hàng không vũ trụ và vệ tinh của họ hàng ngày bằng cách sử dụng AWS. Tìm hiểu thêm về các giải pháp đám mây cho ngành hàng không vũ trụ và vệ tinh để bạn có thể bắt đầu hành trình Đám mây AWS của riêng mình ngay hôm nay.

Nereida Agüera

Nereida Agüera là một kiến trúc sư giải pháp trong nhóm Aerospace and Satellite tại Amazon Web Services (AWS). Cô ấy giúp khách hàng trong ngành hàng không vũ trụ tận dụng các công nghệ đám mây để xây dựng các giải pháp có khả năng mở rộng cho các ứng dụng quan sát Trái đất, truyền thông vệ tinh và thông tin địa lý.

Leave a comment