Database
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Database

Cách bắt đầu với Amazon ECS và Amazon Fargate

Docker có thể được cài đặt trên các nền tảng hệ điều hành được sử dụng phổ biến nhất. CoreOS đã được cài đặt sẵn Docker và được thiết kế đặc biệt để chạy các vùng chứa Docker. Docker cho AWS cung cấp chế độ bầy đàn Docker độc đáo trong đó một cụm nút, được gọi là bầy đàn, cung cấp một nền tảng phân tán để chạy các ứng dụng vùng chứa Docker.

Vấn đề: Tất cả các nền tảng Docker nói trên chỉ là các loại cài đặt Docker khác nhau và yêu cầu vùng chứa Docker chạy và được quản lý trên dòng lệnh.

Giải pháp: Amazon ECS ( Dịch vụ vùng chứa co giãn ) là một dịch vụ được quản lý cho vùng chứa Docker với hỗ trợ tích hợp cho việc mở rộng quy mô, cân bằng tải, mạng, lưu trữ, ghi nhật ký và các tác vụ quản lý vùng chứa Docker khác. Amazon ECS hỗ trợ hai kiểu khởi chạy:EC2 và Fargate.

Với kiểu khởi chạy EC2, các phiên bản EC2 được bắt đầu chạy vùng chứa Docker. Loại khởi chạy Fargate, được giới thiệu gần đây (tháng 11 năm 2017), lưu trữ các tác vụ đóng gói các vùng chứa Docker. Người dùng có thể truy cập trực tiếp các tác vụ qua Giao diện mạng đàn hồi ( ENI ). Các phiên bản EC2 mà Fargate được cung cấp không được hiển thị cho người dùng và không thể truy cập trực tiếp.

Trong chương này, chúng ta sẽ tìm hiểu về những điều sau:Amazon Fargate là gì

  • Lợi ích của các đối tượng Fargate Amazon ECS
  • Tính toán tài nguyên trong Amazon ECS Fargate
  • Có gì mới trong chế độ khởi chạy Amazon Fargate?

Amazon Fargate là gì

Amazon Fargate là một loại khởi chạy mới cho Amazon ECS và Amazon EKS ( Dịch vụ Kubernetes đàn hồi ) -dịch vụ điều phối được quản lý cho vùng chứa Docker trên AWS. Với kiểu khởi chạy Fargate, cơ sở hạ tầng được cung cấp đầy đủ bởi Fargate. Nó không có máy chủ và không có phiên bản EC2 nào được hiển thị cho người dùng. Vùng chứa Docker được định nghĩa là định nghĩa vùng chứa trong định nghĩa nhiệm vụ. Một dịch vụ triển khai định nghĩa tác vụ để chạy một hoặc nhiều tác vụ. Mỗi nhiệm vụ được liên kết với một ENI. Nếu tính năng tự động gán IP công cộng ở cấp tác vụ được bật, thì IP công cộng mà máy khách bên ngoài có thể truy cập vào một tác vụ sẽ được tự động gán cho một tác vụ. Các tác vụ giao tiếp với nhau qua một IP riêng.

Lợi ích của Fargate

Các lợi ích trong ECS ​​như sau:

  • Một dịch vụ được quản lý dành cho các ứng dụng trong vùng chứa không yêu cầu nhiều thông tin đầu vào của người dùng để chạy các ứng dụng Docker
  • Microservices bao gồm nhiều ứng dụng chạy trong các vùng chứa riêng biệt Tự động điều chỉnh các tác vụ dựa trên tải ứng dụng
  • Tích hợp với các dịch vụ AWS khác bao gồm IAM, Nhật ký CloudWatch, Cân bằng tải đàn hồi, mẫu CloudFormation, Khối lượng EBS, Nhật ký hàng loạt, ECR và CloudTrail
  • Một đám mây riêng ảo ( VPC ) mà không chia sẻ tài nguyên với người dùng khác Cung cấp hỗ trợ để chạy CodePipeline với ECS làm nền tảng triển khai
  • Hỗ trợ phiên bản Docker 17.0 mới nhất

Fargate cung cấp các lợi ích bổ sung sau:

  • Với kiểu khởi chạy Fargate, người dùng không tạo hoặc quản lý bất kỳ phiên bản EC2 nào, vì không phiên bản nào được hiển thị trên cụm.
  • Các công việc được hiển thị trực tiếp với người dùng thông qua ENI.
  • Cơ sở hạ tầng cơ bản do Fargate cung cấp. Các phiên bản EC2 không được quản lý bằng kiểu khởi chạy Fargate.
  • CodePipeline hỗ trợ Fargate làm nền tảng triển khai.
  • Các dịch vụ nhỏ dựa trên định nghĩa Vùng chứa được gói gọn trong định nghĩa nhiệm vụ được liên kết rõ ràng và không được liên kết với bất kỳ tùy chọn bổ sung nào, chẳng hạn như liên kết.
  • Nhật ký CloudWatch có thể được định cấu hình tự động.

Đối tượng Amazon ECS

Các đối tượng Amazon ECS với Fargate cũng giống như đối với loại khởi chạy EC2. Cụm ECS là gói ngoài cùng và nó bao gồm một hoặc nhiều dịch vụ. Một cụm có thể được phân phối trên nhiều vùng khả dụng. Dịch vụ là một triển khai định nghĩa tác vụ và chạy một hoặc nhiều tác vụ. Một định nghĩa nhiệm vụ có thể có một hoặc nhiều bản sửa đổi nhiệm vụ. Bản sửa đổi nhiệm vụ là một định nghĩa nhiệm vụ riêng biệt với một tập hợp các nhiệm vụ và một dịch vụ được liên kết với nó. Một phiên bản Fargate được liên kết với một tập hợp các nhiệm vụ trong một dịch vụ. Định nghĩa nhiệm vụ bao gồm không hoặc nhiều định nghĩa vùng chứa. Thông thường, một định nghĩa nhiệm vụ sẽ được liên kết với một hoặc nhiều định nghĩa vùng chứa và một định nghĩa nhiệm vụ không bao gồm bất kỳ định nghĩa vùng chứa nào sẽ không chạy bất kỳ vùng chứa tác vụ nào. Sơ đồ các đối tượng ECS ​​được hiển thị như sau:

A Định nghĩa nhiệm vụ là một mẫu ứng dụng và mô tả một hoặc nhiều vùng chứa. Trong khi một số thuộc tính hoặc cài đặt được định cấu hình ở cấp tác vụ, hầu hết chúng được định cấu hình ở cấp vùng chứa. Nhiều bản sửa đổi có thể được kết hợp với một định nghĩa nhiệm vụ.

A Dịch vụ triển khai một định nghĩa nhiệm vụ và xác định số lượng mong muốn cho các tác vụ để chạy cho một định nghĩa nhiệm vụ. Các tính năng tùy chọn như tự động điều chỉnh tỷ lệ và cân bằng tải được định cấu hình trong dịch vụ.

A Cụm trong một dịch vụ ECS là một nhóm của một hoặc nhiều dịch vụ vùng chứa. Tên cụm phải là duy nhất trong một tài khoản. Một cụm được gọi là mặc định được cung cấp theo mặc định.

Tính toán tài nguyên trong Amazon ECS Fargate

Kích thước nhiệm vụ bao gồm Bộ nhớ tác vụ (GB) CPU tác vụ (vCPU) . Mặc dù là tùy chọn trong kiểu khởi chạy EC2, nhưng kích thước tác vụ là bắt buộc với kiểu khởi chạy Fargate. Tùy chọn cài đặt bộ nhớ cấp vùng chứa Docker và cài đặt CPU có thể được xác định, nhưng bị ghi đè bởi cài đặt cấp độ định nghĩa tác vụ. Chỉ các kết hợp cụ thể giữa bộ nhớ tác vụ và CPU tác vụ mới được hỗ trợ và trình hướng dẫn ECS chỉ ra bằng thông báo giá trị được hỗ trợ (hoặc phạm vi giá trị) cho một giá trị đã chọn. Ví dụ:phạm vi CPU hợp lệ cho bộ nhớ 1 GB là 0,25 vCPU đến 0,5 vCPU. Tổng tài nguyên (bộ nhớ hoặc CPU) được định cấu hình ở cấp bộ chứa không được vượt quá cài đặt tài nguyên cấp tác vụ. Ví dụ:nếu định nghĩa tác vụ bao gồm hai vùng chứa (MySQL và WordPress) với giới hạn bộ nhớ là 128 MB cho mỗi vùng chứa, thì bộ nhớ cấp tác vụ phải có ít nhất 256 MB. Ngoài ra, tổng bộ nhớ cấp vùng chứa không được vượt quá 256 MB. Tương tự như vậy đối với CPU. Hai giới hạn bộ nhớ có thể được xác định ở cấp vùng chứa: Giới hạn mềm Giới hạn cứng . Giới hạn mềm tương ứng với memoryReservation thuộc tính ở cấp tác vụ và Giới hạn cứng tương ứng với bộ nhớ thuộc tính ở cấp độ nhiệm vụ. Tổng các đặt trước bộ nhớ vùng chứa (Giới hạn mềm) không được vượt quá bộ nhớ tác vụ. Giới hạn cứng cho mỗi vùng chứa không được vượt quá bộ nhớ được cấu hình ở cấp tác vụ. Theo mặc định, phải chỉ định tối thiểu 4 GB cho một vùng chứa.

Kích thước tác vụ mẫu được hiển thị trong ảnh chụp màn hình sau, trong đó Bộ nhớ tác vụ ( bộ nhớ thuộc tính) được đặt thành 0,5 GB (512 GB) và CPU tác vụ được đặt thành 0,25 vCPU . Ở cấp vùng chứa, như được định cấu hình trong hai định nghĩa vùng chứa, bộ nhớ dành riêng là 128 MB cho mỗi vùng chứa, điều này làm cho tổng bộ nhớ dành riêng là 256 MB trong phạm vi 512 GB được phân bổ ở cấp độ nhiệm vụ. Kích thước nhiệm vụ được phân bổ cho một nhiệm vụ, cho dù được sử dụng hay không. Tương tự, số lượng Đơn vị CPU được định cấu hình cho mỗi vùng chứa là 10 , làm cho tổng số đơn vị CPU là 20 cho các vùng chứa bên trong các đơn vị CPU, 25 đơn vị được phân bổ ở cấp tác vụ. Tham khảo ảnh chụp màn hình sau:

Cấu hình và phân bổ kích thước tác vụ cho vùng chứa

Có gì mới trong chế độ khởi chạy Amazon Fargate?

Ngoài và đồng thời với các lợi ích của Fargate đã thảo luận trước đó, Fargate hỗ trợ các tính năng mới sau:

  • Chế độ kết nối mạng, awsvpc , là chế độ được hỗ trợ duy nhất
  • Ánh xạ cổng máy chủ không hợp lệ với chế độ mạng loại khởi chạy Fargate ( awsvpc ) và các cổng lưu trữ mà ứng dụng được hiển thị cũng giống như các cổng vùng chứa
  • ecsTaskExecutionRole được thêm vào kiểu khởi chạy Fargate để cho phép kéo hình ảnh Docker và gửi nhật ký đến CloudWatch Logs
  • Chỉ awslog cấu hình nhật ký và awslogs trình điều khiển nhật ký được hỗ trợ với CloudWatch Logs
  • Vị trí nhiệm vụ không được hỗ trợ, vì không có phiên bản ECS nào được cung cấp để xác định các ràng buộc về vị trí cho
  • Chỉ hỗ trợ hình ảnh Docker trên Docker Hub và Amazon ECR Các vùng chứa Windows đặc quyền không được hỗ trợ cho loại khởi chạy Fargate Các thiết bị lưu trữ không thể tiếp xúc với vùng chứa
  • Máy chủ sourcePath các tham số cho khối lượng không được hỗ trợ với loại khởi chạy Fargate

Tóm tắt

Trong chương giới thiệu này, chúng ta đã thảo luận về những lợi ích của việc sử dụng kiểu khởi chạy Fargate, cách phân phối và cấu hình tài nguyên tính toán với kiểu khởi chạy Fargate, cách các đối tượng ECS ​​với Fargate giống với kiểu khởi chạy EC2 và các tính năng mới trong Fargate. Trong chương tiếp theo, chúng ta sẽ thảo luận về mạng được sử dụng với Fargate.

Tài liệu trước là một đoạn trích từ Hướng dẫn Bắt đầu Nhanh của Amazon Fargate , của Deepak Vohra, được xuất bản bởi Pact Publishing.

Bài viết này đã được đóng góp. © Nhà phát triển.com. Mọi quyền được bảo lưu


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm tình huống cho INSTEAD OF Trigger - Phần 1

  2. AWS RDS là gì

  3. Các hoạt động trực tuyến khác hiện có sẵn - hoặc sớm

  4. Cách viết các thủ tục được lưu trữ cho các báo cáo SSRS chuyên nghiệp

  5. Cân nhắc về hiệu suất phiên bản được quản lý của Azure SQL