Tiết kiệm chi phí bằng cách tự động tắt các tài nguyên nhàn rỗi trong Amazon SageMaker Studio

Nút nguồn: 1854620

Xưởng sản xuất Amazon SageMaker cung cấp một giao diện trực quan thống nhất, dựa trên web, nơi bạn có thể thực hiện tất cả các bước phát triển máy học (ML), giúp các nhóm khoa học dữ liệu làm việc hiệu quả hơn gấp 10 lần. Studio cung cấp cho bạn quyền truy cập, kiểm soát và khả năng hiển thị đầy đủ vào từng bước cần thiết để xây dựng, đào tạo và triển khai các mô hình. Sổ ghi chép Studio là sổ ghi chép cộng tác mà bạn có thể khởi chạy nhanh chóng vì bạn không cần thiết lập trước các phiên bản điện toán và lưu trữ tệp. Amazon SageMaker là một dịch vụ được quản lý hoàn toàn, cung cấp các khả năng trừu tượng hóa công việc quản lý cơ sở hạ tầng nặng nề, đồng thời cung cấp sự linh hoạt và khả năng mở rộng mà bạn mong muốn cho các hoạt động ML quy mô lớn với các tính năng khác nhau và trả tiền khi bạn sử dụng Mô hình định giá.

Trong bài đăng này, chúng tôi trình bày cách thực hiện như sau:

  • Phát hiện và dừng các tài nguyên nhàn rỗi đang phát sinh chi phí trong Studio bằng cách sử dụng tiện ích mở rộng Jupyter tự động tắt có thể được cài đặt thủ công và tự động
  • Bật thông báo sự kiện để theo dõi hồ sơ người dùng trong các miền Studio chưa cài đặt tiện ích mở rộng tự động tắt
  • Sử dụng tiện ích mở rộng tự động tắt máy đã cài đặt để quản lý Trình sắp xếp dữ liệu Amazon SageMaker chi phí bằng cách tự động tắt các phiên bản có thể dẫn đến chi phí lớn hơn dự kiến

thành phần phòng thu

Trong Studio, sổ ghi chép đang chạy được chứa riêng biệt với giao diện người dùng JupyterServer để tách kích thước cơ sở hạ tầng điện toán. Một sổ ghi chép Studio chạy trong một môi trường được xác định như sau:

  • Loại phiên bản – Cấu hình phần cứng cơ bản, xác định mức giá. Điều này bao gồm số lượng và loại bộ xử lý (vCPU và GPU), cũng như số lượng và loại bộ nhớ.
  • Hình ảnh SageMaker – Một hình ảnh vùng chứa tương thích (do SageMaker cung cấp hoặc tùy chỉnh) lưu trữ nhân sổ ghi chép. Hình ảnh xác định thông số kỹ thuật nhân mà nó cung cấp, chẳng hạn như nhân Python 3 (Khoa học dữ liệu) tích hợp sẵn.
  • Ứng dụng cổng nhân SageMaker – Một phiên bản đang chạy của hình ảnh vùng chứa trên loại phiên bản cụ thể. Nhiều ứng dụng có thể chia sẻ một phiên bản đang chạy.
  • Chạy phiên hạt nhân – Quá trình kiểm tra và chạy mã có trong sổ ghi chép. Nhiều sổ ghi chép đang mở (nhân) có cùng thông số kỹ thuật và loại phiên bản được mở trong cùng một ứng dụng.

Giao diện người dùng Studio chạy dưới dạng một loại ứng dụng riêng biệt JupyterServer thay vì KernelGateway, cho phép bạn chuyển một sổ ghi chép đang mở sang các nhân hoặc loại phiên bản khác nhau từ trong Studio UI. Để biết thêm thông tin về cách nhân máy tính xách tay chạy liên quan đến KernelGateway ứng dụng, người dùng và miền Studio, hãy xem Sử dụng Máy tính xách tay Amazon SageMaker Studio.

thanh toán phòng thu

Không tính thêm phí khi sử dụng Studio. Chi phí phát sinh khi chạy sổ ghi chép Studio, trình bao tương tác, bảng điều khiển và thiết bị đầu cuối dựa trên mức sử dụng loại phiên bản Studio. Để biết thông tin về thanh toán cùng với các ví dụ về giá, hãy xem Amazon SageMaker Giá.

Khi bạn chạy sổ ghi chép Studio, trình bao tương tác hoặc thiết bị đầu cuối hình ảnh trong Studio, bạn phải chọn một nhân và một loại phiên bản. Các tài nguyên này được khởi chạy bằng phiên bản Studio dựa trên loại đã chọn từ giao diện người dùng. Nếu một phiên bản của loại đó đã được khởi chạy trước đó và có sẵn, thì tài nguyên sẽ được chạy trên phiên bản đó. Đối với hình ảnh dựa trên CPU, loại phiên bản mặc định là ml.t3.medium. Đối với hình ảnh dựa trên GPU, loại phiên bản mặc định là ml.g4dn.xlarge. Chi phí phát sinh dựa trên loại phiên bản và bạn được lập hóa đơn riêng cho từng phiên bản. Quá trình đo bắt đầu khi một phiên bản được tạo và kết thúc khi tất cả các ứng dụng trên phiên bản bị tắt hoặc phiên bản bị tắt.

Tắt phiên bản để ngừng phát sinh phí. Nếu bạn tắt sổ ghi chép đang chạy trên phiên bản nhưng không tắt phiên bản, thì bạn vẫn bị tính phí. Khi bạn mở nhiều sổ ghi chép trên cùng một loại phiên bản, các sổ ghi chép đó sẽ chạy trên cùng một phiên bản ngay cả khi chúng đang sử dụng các nhân khác nhau. Bạn chỉ bị tính phí trong thời gian mà một phiên bản đang chạy. Bạn có thể thay đổi loại phiên bản từ bên trong sổ ghi chép sau khi bạn mở sổ ghi chép đó và tắt các tài nguyên riêng lẻ, bao gồm sổ ghi chép, thiết bị đầu cuối, nhân, ứng dụng và phiên bản. Bạn cũng có thể tắt tất cả các tài nguyên thuộc một trong các danh mục này cùng một lúc. Khi bạn tắt sổ ghi chép, mọi thông tin chưa lưu trong sổ ghi chép sẽ bị mất. Sổ tay không bị xóa.

Bạn có thể tắt sổ ghi chép đang mở từ Studio Tập tin thực đơn hoặc từ Chạy Terminal và Kernel khung. Các Chạy thiết bị đầu cuối và hạt nhân bảng bao gồm bốn phần. Mỗi phần liệt kê tất cả các tài nguyên thuộc loại đó. Bạn có thể tắt từng tài nguyên riêng lẻ hoặc tắt tất cả các tài nguyên trong một phần cùng một lúc. Khi bạn chọn tắt tất cả tài nguyên trong một phần, điều sau đây sẽ xảy ra:

  • Phiên bản đang chạy/Ứng dụng đang chạy – Tất cả các phiên bản, ứng dụng, sổ ghi chép, phiên nhân, phiên Trình sắp xếp dữ liệu, bảng điều khiển hoặc trình bao và thiết bị đầu cuối hình ảnh đều bị tắt. Thiết bị đầu cuối hệ thống không tắt. Chọn tùy chọn này để ngừng tích lũy tất cả các khoản phí.
  • Phiên hạt nhân – Tất cả kernel, notebook và console hoặc shell đều bị tắt.
  • Phiên cuối – Tất cả các thiết bị đầu cuối hình ảnh và thiết bị đầu cuối hệ thống đều bị tắt.

Để tắt tài nguyên, ở thanh bên trái, hãy chọn Chạy thiết bị đầu cuối và hạt nhân biểu tượng. Để tắt một tài nguyên cụ thể, hãy chọn Power trên cùng một hàng với tài nguyên.

Đối với các phiên bản đang chạy, hộp thoại xác nhận liệt kê tất cả các tài nguyên sẽ bị tắt. Đối với các ứng dụng đang chạy, hộp thoại xác nhận sẽ hiển thị. Chọn Tắt tất cả tiến hành với. Không có hộp thoại xác nhận nào được hiển thị cho phiên kernel hoặc phiên cuối. Để tắt tất cả các tài nguyên trong một phần, hãy chọn X biểu tượng ở bên phải của nhãn phần. Một hộp thoại xác nhận được hiển thị. Chọn Tắt tất cả tiến hành với.

Tự động tắt các kernel nhàn rỗi với tiện ích mở rộng JupyterLab

Thay vì phụ thuộc vào người dùng để tắt các tài nguyên mà họ không còn sử dụng nữa, bạn có thể sử dụng tiện ích mở rộng tự động tắt Studio để tự động phát hiện và tắt các tài nguyên nhàn rỗi, tiết kiệm chi phí. Phần mở rộng JupyterLab là những tiện ích bổ sung đơn giản giúp mở rộng chức năng cơ bản của môi trường máy tính xách tay. Tiện ích mở rộng tự động tắt các kernel, ứng dụng và phiên bản đang chạy trong Studio khi chúng không hoạt động trong một khoảng thời gian quy định. Bạn có thể định cấu hình trực quan ngưỡng thời gian nhàn rỗi (tính bằng phút) thông qua giao diện người dùng. Sau khi các hạt nhân không hoạt động đủ lâu, tiện ích mở rộng sẽ tự động tắt chúng. Để biết hướng dẫn về cách tải xuống và cài đặt tiện ích mở rộng, hãy xem Repo GitHub.

Bạn có thể tự động cài đặt tiện ích mở rộng trong khi khởi động JupyterServer nếu bạn đang sử dụng Quản lý truy cập và nhận dạng AWS (IAM) cho người dùng của bạn hoặc thực hiện thủ công nếu bạn đang sử dụng xác thực đăng nhập một lần (SSO).

Sau khi tiện ích mở rộng được cài đặt, nó sẽ hiển thị dưới dạng một biểu tượng ở thanh bên trái của giao diện Studio. Bạn có thể định cấu hình giới hạn thời gian nhàn rỗi bằng giao diện người dùng mà tiện ích mở rộng này cung cấp. Hướng dẫn cài đặt được cung cấp trong repo GitHub.

Tham số giới hạn thời gian nhàn rỗi là đặt thời gian sau đó các tài nguyên nhàn rỗi không có phiên sổ ghi chép đang hoạt động nào sẽ bị tắt. Theo mặc định, giới hạn thời gian nhàn rỗi được đặt thành 120 phút

Hạn chế và khắc phục sự cố

Tiện ích mở rộng tự động tắt máy có những hạn chế sau:

  • Tiện ích mở rộng không giám sát hoạt động trên các thiết bị đầu cuối mở. Ví dụ: nếu các hạt nhân của bạn không hoạt động trong thời gian bạn đã định cấu hình nhưng các thiết bị đầu cuối thì không, tiện ích mở rộng sẽ tắt các thiết bị đầu cuối và hạt nhân.
  • Bạn phải cài đặt lại tiện ích mở rộng và định cấu hình giới hạn thời gian nhàn rỗi nếu bạn xóa JupyterServer trên bảng điều khiển SageMaker Studio và tạo lại nó. Đây không phải là một hạn chế nếu bạn sử dụng phương pháp cài đặt tự động.

Bạn có thể kiểm tra nhật ký mở rộng trong amazoncloudwatch theo /aws/sagemaker/studio nhóm nhật ký và bằng cách đi qua <Studio_domain>/<user_profile>/JupyterServer/default luồng nhật ký.

Trình kiểm tra tiện ích mở rộng tự động tắt Studio

Sơ đồ sau đây minh họa cách bật thông báo email để theo dõi các tài nguyên nhàn rỗi đang chạy trong nhiều hồ sơ người dùng cư trú trong Studio.

Bất kể bạn cài đặt tiện ích tự động tắt như thế nào trong miền Studio của mình, quản trị viên có thể muốn theo dõi và cảnh báo bất kỳ người dùng nào chạy mà không có tiện ích này. Để giúp theo dõi việc tuân thủ và tối ưu hóa chi phí, bạn có thể làm theo hướng dẫn trong Repo GitHub để thiết lập trình kiểm tra tiện ích mở rộng tự động tắt và bật thông báo sự kiện.

Theo sơ đồ kiến ​​trúc, một Quy tắc Sự kiện CloudWatch được kích hoạt theo lịch trình định kỳ (ví dụ: hàng giờ hoặc hàng đêm). Để tạo quy tắc, chúng tôi chọn một lịch trình cố định và chỉ định tần suất chạy tác vụ. Đối với mục tiêu của chúng tôi, chúng tôi chọn một AWS Lambda chức năng kiểm tra định kỳ xem tất cả hồ sơ người dùng trong miền Studio đã cài đặt tiện ích mở rộng để tự động tắt hay chưa. Chức năng này thu thập tên hồ sơ người dùng không đáp ứng yêu cầu này.

Hồ sơ người dùng sau đó được định tuyến đến một Dịch vụ thông báo đơn giản của Amazon (Amazon SNS) chủ đề mà quản trị viên Studio và các bên liên quan khác có thể đăng ký để nhận thông báo (chẳng hạn như qua email hoặc Slack). Ảnh chụp màn hình sau đây hiển thị thông báo cảnh báo qua email trong đó hồ sơ người dùng user-wuser-y trong miền SageMaker d-bo6udbiz4vmi chưa cài đặt tiện ích mở rộng tự động tắt máy.

Tự động tắt tài nguyên Data Wrangler

Để chứng minh thêm về cách thức hoạt động của tiện ích mở rộng tự động tắt, hãy xem xét tiện ích này từ góc độ của Trình sắp xếp dữ liệu trong Studio. Data Wrangler là một khả năng mới của SageMaker giúp các nhà khoa học và kỹ sư dữ liệu chuẩn bị dữ liệu cho các ứng dụng ML nhanh hơn bằng cách sử dụng giao diện trực quan.

Khi bạn khởi động Data Wrangler từ Studio, nó sẽ tự động tạo ra một ml.m5.4xlarge thể hiện và khởi động kernel bằng thể hiện đó. Khi bạn không sử dụng Data Wrangler, điều quan trọng là phải tắt phiên bản mà nó chạy để tránh phát sinh thêm phí.

Data Wrangler tự động lưu luồng dữ liệu của bạn cứ sau 60 giây. Để tránh mất công việc, hãy lưu thủ công luồng dữ liệu của bạn trước khi tắt Data Wrangler. Để làm như vậy, chọn Tập tin và sau đó chọn Lưu dữ liệu Wrangler Flow.

Để tắt phiên bản Trình sắp xếp dữ liệu trong Studio, hãy chọn Phiên bản và hạt nhân đang chạy biểu tượng. Dưới Đang chạy các ứng dụng, locate các sagemaker-data-wrangler-1.0 ứng dụng. Chọn Power biểu tượng bên cạnh ứng dụng này.

Làm theo các bước này theo cách thủ công có thể rườm rà và rất dễ quên. Với tiện ích mở rộng tự động tắt, bạn có thể đảm bảo rằng các tài nguyên nhàn rỗi cung cấp năng lượng cho Data Wrangler được tắt một cách thận trọng để tránh phát sinh thêm chi phí cho SageMaker.

Kết luận

Trong bài đăng này, chúng tôi đã trình bày cách giảm chi phí SageMaker bằng cách sử dụng tiện ích mở rộng Jupyter tự động tắt để tắt các tài nguyên nhàn rỗi đang chạy trong Studio. Chúng tôi cũng đã chỉ ra cách thiết lập trình kiểm tra tiện ích mở rộng tự động tắt và bật thông báo sự kiện để theo dõi hồ sơ người dùng trong Studio chưa cài đặt tiện ích mở rộng. Cuối cùng, chúng tôi đã chỉ ra cách tiện ích mở rộng có thể giảm chi phí Trình sắp xếp dữ liệu bằng cách tắt các tài nguyên nhàn rỗi cung cấp năng lượng cho Trình sắp xếp dữ liệu.

Để biết thêm thông tin về tối ưu hóa việc sử dụng tài nguyên và chi phí, hãy xem Định cỡ tài nguyên phù hợp và tránh chi phí không cần thiết trong Amazon SageMaker.

Nếu bạn có bất kỳ ý kiến ​​hoặc câu hỏi nào, vui lòng để lại trong phần bình luận.


Về các tác giả

Arunprasath Shankar là Kiến trúc sư chuyên về giải pháp trí tuệ nhân tạo và máy học (AI / ML) của AWS, giúp khách hàng toàn cầu mở rộng quy mô các giải pháp AI của họ một cách hiệu quả và hiệu quả trên đám mây. Khi rảnh rỗi, Arun thích xem phim khoa học viễn tưởng và nghe nhạc cổ điển.

 Andras Garzo là Kiến trúc sư giải pháp ML trong nhóm AWS AI Platforms và giúp khách hàng chuyển sang SageMaker, áp dụng các phương pháp hay nhất và tiết kiệm chi phí.

Pavan Kumar Sunder là Kỹ sư R&D cấp cao của Amazon Web Services. Anh cung cấp hướng dẫn kỹ thuật và giúp khách hàng tăng tốc khả năng đổi mới thông qua việc thể hiện nghệ thuật của những điều khả thi trên AWS. Anh ấy đã xây dựng nhiều nguyên mẫu xung quanh AI/ML, IoT và Robotics cho khách hàng của chúng tôi.

Alex Thewsey là Kiến trúc sư Giải pháp Chuyên gia Máy học tại AWS, có trụ sở tại Singapore. Alex giúp khách hàng trên khắp Đông Nam Á thiết kế và triển khai các giải pháp với AI và ML. Anh ấy cũng thích đua xe kart, làm việc với các dự án nguồn mở và cố gắng theo kịp nghiên cứu ML mới.

Nguồn: https://aws.amazon.com/blogs/machine-learning/save-costs-by-automatically-shutting-down-idle-resources-within-amazon-sagemaker-studio/

Dấu thời gian:

Thêm từ Blog Học máy AWS