AWS Elastic Beanstalk - Dễ dàng triển khai ứng dụng



Hướng dẫn AWS Elastic Beanstalk này sẽ giúp bạn hiểu cách triển khai các ứng dụng web trên AWS Cloud bằng AWS Elastic Beanstalk.

không còn ở giai đoạn sơ khai nữa. Nó hiện đã được thiết lập tốt vàđang đóng vai trò là một nền tảng sáng tạo, cho phép các công ty triển khai các ứng dụng không thể cung cấp trên cơ sở hạ tầng truyền thống.Thành công này đi kèm với sự gia tăng theo cấp số nhân , PaaS là ​​một trong số họ. Amazon đã tung ra dịch vụ của riêng mình theo mô hình PaaS, đó là AWS Cây đậu đàn hồi!

Hãy cùng xem các chủ đề được đề cập trong bài viết AWS Beanstalk này:





  1. Amazon Elastic Beanstalk là gì?
  2. Lợi ích của AWS Elastic Beanstalk
  3. Các thành phần của AWS Elastic Beanstalk
  4. Kiến trúc AWS Elastic Beanstalk
  5. Demo - Triển khai ứng dụng trên Beanstalk

Amazon Elastic Beanstalk là gì?

ElasticBeanstalk - Cây đậu đàn hồi - Edureka

Điện toán đám mây đang định hình lại toàn bộ quy trình phát triển ứng dụng. Một số nhà cung cấp đám mây, bao gồmAmazon Web Services và Microsoft Azure, cung cấp các công cụ phát triển để giúp quy trình trở nên đơn giản và an toàn hơn. AWS ElaBeanstalk là một trong những công cụ phát triển được thực hiện dựa trên mô hình PaaS.



AWS Elastic Beanstalk là một dịch vụ dễ sử dụng để triển khai và mở rộng các ứng dụng và dịch vụ web được phát triển bằng Java, .NET, PHP, Node.js, Python, Ruby, Go và Docker trên các máy chủ quen thuộc như Apache, Nginx, Passenger và IIS.

Với AWS Elastic Beanstalk, nhà phát triển có thể triển khai ứng dụng mà không cần cung cấp cơ sở hạ tầng bên dưới trong khi vẫn duy trì tính khả dụng cao. Hãy xem video sau để biết thêm về Elastic Beanstalk.

Hướng dẫn AWS Elastic Beanstalk | Edureka

Nhưng tại sao lại chọn Elastic Beanstalk khi chúng ta đã có nhiều nền tảng khác? Vì vậy, hãy cùng thảo luận về những lợi ích của Elastic Beanstalk.



Lợi ích của AWS Elastic Beanstalk

Dưới đây là một số lợi ích mà AWS Elastic Beanstalk mang lại so với các dịch vụ PaaS khác

Tốc độ - Cây đậu đàn hồi - EdurekaCung cấp triển khai nhanh hơn: Elastic Beanstalk cung cấp cho các nhà phát triển cách nhanh nhất và đơn giản nhất để triển khai ứng dụng của họ. Trong vòng vài phút, ứng dụng sẽ sẵn sàng sử dụng mà người dùng không cần phải xử lý cơ sở hạ tầng hoặc cấu hình tài nguyên bên dưới.

Logo - Cây đậu co giãn - EdurekaHỗ trợ Multi-Người thuê nhàNgành kiến ​​trúc: AWS Elastic Beanstalk giúp người dùng có thể chia sẻ ứng dụng của họ trên các thiết bị khác nhau với khả năng mở rộng và bảo mật cao. Nó cung cấp một báo cáo chi tiết về việc sử dụng ứng dụng và hồ sơ người dùng.

Logo - Cây đậu co giãn - EdurekaĐơn giản hóa hoạt động: Beanstalk cung cấp và vận hành cơ sở hạ tầng cũng như quản lý ngăn xếp ứng dụng. Các nhà phát triển phải chỉ tập trung vào việc phát triển mã cho ứng dụng của họ thay vì dành thời gian vào việc quản lý và cấu hình máy chủ, cơ sở dữ liệu, tường lửa và mạng.

Cung cấp Kiểm soát tài nguyên hoàn chỉnh: Beanstalk cho dekhóa dánquyền tự do chọn AWS tài nguyên, như Phiên bản EC2 kiểu, tối ưu cho ứng dụng của họ. Nó cho phép các nhà phát triển giữ toàn quyền kiểm soát các tài nguyên AWS và truy cập chúng bất kỳ lúc nào.

Giờ đây, chúng ta đã có những lý do vững chắc để tin rằng tại sao AWS Elastic Beanstalk lại được các nhà phát triển ưa thích, hãy cùng xem các khái niệm cơ bản của nó.

Muốn trở thành kiến ​​trúc sư AWS được chứng nhận?

Các thành phần của AWS Elastic Beanstalk

Có một số khái niệm chính nhất định mà bạn sẽ gặp thường xuyên khi triển khai ứng dụng trên Beanstalk. Hãy để chúng tôi xem xét các khái niệm đó:

Ứng dụng:

  • Một ứng dụng trong Elastic Beanstalk về mặt khái niệm tương tự như một thư mục
  • Một ứng dụng là một tập hợp các thành phần bao gồm môi trường, phiên bản cấu hình môi trường

Phiên bản ứng dụng:

  • Một phiên bản ứng dụng thích hợp với sự lặp lại cụ thể, được gắn nhãn của mã có thể triển khai cho một ứng dụng web
  • Một phiên bản ứng dụng trỏ đến một đối tượng Amazon S3 có chứa mã có thể triển khai, chẳng hạn như tệp Java WAR

Môi trường:

  • Môi trường trong Ứng dụng Elastic Beanstalk là nơi phiên bản hiện tại của ứng dụng sẽ hoạt động
  • Mỗi môi trường chỉ chạy một phiên bản ứng dụng duy nhất tại một thời điểm. Nhưng có thể chạy cùng một lúc hoặc các phiên bản khác nhau của một ứng dụng trong nhiều môi trường cùng một lúc

Cấp môi trường:

Dựa trên yêu cầu cây đậu cung cấp hai tầng Môi trường khác nhau: Máy chủ webMôi trường, Môi trường công nhân

  • Môi trường máy chủ web: Xử lýYêu cầu HTTP từ máy khách
  • Công nhânMôi trường: Quy trìnhnhiệm vụ nền tiêu tốn tài nguyên và thời gian

Đây là một minh họa để chỉ ra cáchỨng dụng, Phiên bản ứng dụng và Môi trườngLiên quan đến nhau:

Và đây là cách Môi trường Beanstalk sử dụng loại vùng chứa mặc định trông như thế nào:


Bây giờ bạn đã biết về các khái niệm chính khác nhau liên quan đến Elastic Beanstalk, hãy hiểu kiến ​​trúc của Elastic Beanstalk.

Kiến trúc AWS Elastic Beanstalk

Trước khi tìm hiểu kiến ​​trúc AWS Elastic Beanstalk, hãy trả lời câu hỏi thường gặp nhất,

Môi trường cây đậu đàn hồi là gì?

Môi trường đề cập đến phiên bản hiện tại của ứng dụng. Khi bạn khởi chạy Môi trường cho ứng dụng của mình, Beanstalk yêu cầu bạn chọn trong số hai Cấp môi trường khác nhau, tức là Web Người phục vụ Môi trường hoặc là Môi trường công nhân . Hãy hiểu từng cái một.

Môi trường máy chủ web

Phiên bản ứng dụng được cài đặt trên Môi trường máy chủ web xử lý các yêu cầu HTTP từ máy khách. Sơ đồ sau minh họa một ví dụ về kiến ​​trúc AWS Elastic Beanstalk cho cấp Môi trường máy chủ web và cho biết cách các thành phần trong loại Cấp môi trường đó hoạt động cùng nhau.

Môi trường Beanstalk - Môi trường là trung tâm của ứng dụng. Khi bạn khởi chạy Môi trường, Beanstalk chỉ định các tài nguyên khác nhau cần thiết để chạy ứng dụng thành công.

Bộ cân bằng tải đàn hồi - Khi ứng dụng nhận được nhiều yêu cầu từ một máy khách, Amazon Route53 sẽ chuyển tiếp các yêu cầu này tới Bộ cân bằng tải đàn hồi. Bộ cân bằng tải phân phối các yêu cầu giữa các phiên bản EC2 của Nhóm tỷ lệ tự động.

Nhóm chia tỷ lệ tự động - Auto Scaling Group tự động bắt đầu các phiên bản Amazon EC2 bổ sung để phù hợp với tải ngày càng tăng trên ứng dụng của bạn. Nếu tải trên ứng dụng của bạn giảm, Amazon EC2 Auto Scaling sẽ dừng các phiên bản, nhưng luôn để lại ít nhất một phiên bản đang chạy.

Quản lý máy chủ - Nó là một thành phần phần mềm chạy trên mọi phiên bản EC2 đã được gán cho ứng dụng của bạn. Người quản lý máy chủ lưu trữ chịu trách nhiệm về những việc khác nhau như

  • Tạo và giám sát các tệp nhật ký ứng dụng
  • Tạo sự kiện cấp phiên bản
  • Giám sát máy chủ ứng dụng

Nhóm bảo mật - Nhóm bảo mật giống như một bức tường lửa cho ví dụ của bạn. Elastic Beanstalk có một nhóm bảo mật mặc định, cho phép máy khách truy cập ứng dụng bằng Cổng HTTP 80. Nó cũng cung cấp cho bạn một tùy chọn để bạn cũng có thể xác định các nhóm bảo mật cho máy chủ cơ sở dữ liệu. Hình ảnh dưới đây tóm tắt những gì chúng ta đã học về Môi trường Máy chủ Web.

Đó là tất cả về Môi trường máy chủ web. Nhưng điều gì sẽ xảy ra nếu phiên bản ứng dụng được cài đặt trên Web Server Tier tiếp tục từ chối nhiều yêu cầu vì nó gặp phải các tác vụ tốn nhiều thời gian và tài nguyên khi xử lý một yêu cầu? Đây là nơi mà Worker Tier xuất hiện trong bức tranh.

Bạn muốn nâng kiến ​​thức 'đám mây' của mình lên cấp độ tiếp theo?

Môi trường công nhân

Worker là một quy trình nền riêng biệt hỗ trợ Web Server Tier bằng cách xử lý các hoạt động sử dụng nhiều tài nguyên hoặc tốn nhiều thời gian. Ngoài ra, nó cũng gửi thông báo qua email, tạo báo cáo và dọn dẹp cơ sở dữ liệu. Điều này giúp ứng dụng có thể duy trì phản hồi và xử lý nhiều yêu cầu.

Điều đó thật tuyệt, nhưng làm cách nào để Quy trình công nhân biết những tác vụ nào cần xử lý và khi nào? Làm thế nào để hai tầng Môi trường này giao tiếp với nhau? Để làm được điều đó, chúng tôi sử dụng dịch vụ xếp hàng tin nhắn của AWS, gọi là Amazon Simple Queue Service (SQS). Hình ảnh dưới đây cung cấp cho bạn một ý tưởng sơ bộ về cách quy trình worker nhận và xử lý các tác vụ nền.

Quy trình làm việc của quy trình công nhân khá đơn giản. Khi bạn khởi chạy tầng Môi trường công nhân, Elastic Beanstalk cài đặt một daemon trên mỗi phiên bản EC2 trong nhóm Tự động mở rộng quy mô. Daemon kéo các yêu cầu được gửi từ hàng đợi Amazon SQS. Dựa trên mức độ ưu tiên của hàng đợi, SQS sẽ gửi tin nhắn quaBÀI ĐĂNGyêu cầu tới đường dẫn HTTP của môi trường công nhân. Nhân viên tiếp nhậnthông báo thực hiện các tác vụ và gửi phản hồi HTTP sau khi hoạt động hoàn tất. SQS khi nhận được tin nhắn phản hồi sẽ xóa tin nhắn trong hàng đợi. Nếu nó không nhận được phản hồi, nó sẽ liên tục thử gửi lại các tin nhắn.

Bây giờ chúng ta đã thấy Elastic Beanstalk về mặt lý thuyết, trong phần còn lại của blog này, chúng ta sẽ xem cách triển khai một ứng dụng trên Elastic Beanstalk.

phân tích tâm lý twitter bằng cách sử dụng spark

Triển khai một ứng dụng trên Elastic Beanstalk

Triển khai một ứng dụng trên Elastic Beanstalk là một quá trình khá đơn giản. Hãy xem cách triển khai ứng dụng theo từng bước.

Bước 1: Trên bảng điều khiển Elastic Beanstalk, nhấp vào Tạo ứng dụng mới Lựa chọn. Một hộp thoại xuất hiện để bạn có thể đặt tên và mô tả thích hợp cho ứng dụng của mình.

Bước 2: Bây giờ thư mục ứng dụng đã được tạo, bạn có thể nhấp vào Tab Hành động và chọn Tạo môi trường Lựa chọn. Beanstalk cung cấp cho bạn một tùy chọn để bạn có thể tạo nhiều Môi trường cho ứng dụng của mình.

Bước 3: Chọn trong số hai tùy chọn Cấp môi trường khác nhau. Chọn Môi trường máy chủ web nếu bạn muốn ứng dụng của mình xử lý các yêu cầu HTTP hoặc chọn Môi trường công nhân để xử lý các tác vụ nền.

Bước 4: Một hộp thoại khác xuất hiện, nơi bạn cần cung cấp tên miền và mô tả cho ứng dụng của mình.

Bước 5: Chọn một nền tảng bạn chọn cho ứng dụng của mình. Elastic Beanstalk sẽ cung cấp cho bạn nhiều lựa chọn. Bạn có thể chọn một ứng dụng mẫu do Beanstalk cung cấp hoặc tải lên một tệp có mã cho ứng dụng của bạn.

Beanstalk sẽ mất vài phút để khởi chạy Môi trường. Khi Môi trường được khởi chạy, trên ngăn điều hướng, bạn có thể thấy nhiều tùy chọn, nơi bạn có thể thay đổi cấu hình ứng dụng của mình, xem tệp nhật ký và sự kiện. Vì bạn đã ở trên trang Môi trường, hãy thử khám phá các tính năng khác nhau mà Beanstalk cung cấp.

Bước 6: Ở góc trên cùng bên phải, bạn sẽ tìm thấy URL của phiên bản ứng dụng của mình. Nhấp vào URL đó. Bạn sẽ được đưa đến một trang sẽ xác nhận rằng bạn đã khởi chạy thành công ứng dụng của mình trên Elastic Beanstalk.

Xin chúc mừng! Bạn đã triển khai thành công một ứng dụng trên Elastic Beanstalk Platform.

Tôi hy vọng bây giờ bạn đã có một bức tranh rõ ràng về Elastic Beanstalk và cách bạn có thể sử dụng Beanstalk để triển khai các ứng dụng của mình.

Vì vậy đây là nó! Tôi hy vọng blog này có nhiều thông tin và giá trị bổ sung cho kiến ​​thức của bạn. Nếu bạn muốn nâng cao kiến ​​thức của mình về Dịch vụ Web Amazon thì hãy đăng ký khóa học của Edureka.

Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến vấn đề này trong phần nhận xét của “AWS Elastic Beanstalk” và chúng tôi sẽ liên hệ lại với bạn trong thời gian sớm nhất.