Cẩm nang hướng dẫn tìm hiểu các khái niệm cốt lõi AWS

Bài viết dưới đây sẽ giúp mọi người trả lời các câu hỏi phổ biến về điện toán đám mây và khám phá các phương pháp hay nhất để xây dựng trên AWS, giúp bạn tự tin hơn khi bắt đầu hành trình trên đám mây của mình. 

Việc điều chỉnh sang hướng tiếp cận trên đám mây có thể mất thời gian, đặc biệt nếu bạn đã quen với cách cung cấp phần cứng và xây dựng ứng dụng tại chỗ (on-premises) truyền thống. Thay vì tập trung xây dựng đám mây ngay từ đầu, việc làm quen với các khái niệm cốt lõi của điện toán đám mây (cloud computing) và đám mây AWS sẽ giúp bạn tự tin hơn khi bắt đầu hành trình trên đám mây của mình. Sau đây, chúng ta sẽ cùng trả lời các câu hỏi phổ biến về điện toán đám mây và khám phá các phương pháp hay nhất để xây dựng trên AWS.
 

Điện toán đám mây (cloud computing) là gì?

Điện toán đám mây là sự phân phối các tài nguyên CNTT theo nhu cầu (như cấu hình máy tính, cơ sở dữ liệu, lưu trữ, ứng dụng và các tài nguyên khác) thông qua nền tảng dịch vụ đám mây với sự hỗ trợ của Internet theo chính sách thanh toán tuỳ vào mức sử dụng (pay-as-you-go). Theo truyền thống, lập trình viên muốn xây dựng một ứng dụng cần phải mua, thiết lập và duy trì cơ sở hạ tầng vật lý và ứng dụng. Đây là lúc điện toán đám mây xuất hiện.

Nền tảng dịch vụ đám mây cung cấp khả năng truy cập nhanh chóng vào các tài nguyên CNTT để bạn có thể sử dụng nhằm xây dựng và duy trì phần mềm & cơ sở dữ liệu một cách linh hoạt với chi phí thấp, đồng thời tạo ra các ứng dụng để làm hài lòng khách hàng. Bạn không cần phải đầu tư trả trước một số tiền lớn vào phần cứng và dành nhiều thời gian cho việc quản lý phần cứng đó. Bạn có thể truy cập, gần như ngay lập tức bao nhiêu tài nguyên tùy thích và chỉ phải trả tiền cho những gì bạn sử dụng. Quyền truy cập theo yêu cầu và trả tiền khi sử dụng dịch vụ là nền tảng của mô hình điện toán đám mây.

Lợi ích của điện toán đám mây (cloud computing)

Đám mây cung cấp cho lập trình viên tính linh hoạt cao hơn, khả năng mở rộng và đổi mới nhanh hơn. 

Với điện toán đám mây, bạn có thể:
•    Pay as you go – Bạn chỉ phải trả tiền khi bạn sử dụng và chỉ cho những gì bạn sử dụng.
•    Hưởng lợi từ tính kinh tế theo quy mô – AWS tổng hợp việc sử dụng từ hàng trăm nghìn khách hàng trên đám mây, điều này dẫn đến quy mô kinh tế cao hơn. Lẽ tất yếu là giá thành thấp hơn khi mua.
•    Ngừng việc ước lượng – Việc ước lượng trước khi triển khai ứng dụng thường dẫn đến việc thiếu hụt hoặc dư thừa tài nguyên làm gia tăng chi phí vô ích. Với điện toán đám mây, bạn có thể truy cập nhiều hay ít tài nguyên tùy thích và tăng giảm quy mô theo yêu cầu chỉ với một vài phút thông báo.
•    Gia tăng tốc độ và tính linh hoạt – Tài nguyên CNTT giờ đây có sẵn chỉ sau một cú nhấp chuột, điều này giúp giảm thời gian cung ứng từ vài tuần xuống còn vài phút. Điều này làm tăng đáng kể sự linh hoạt cho tổ chức, bởi vì chi phí và thời gian cần thiết để thử nghiệm và phát triển thấp hơn đáng kể.
•    Tiết kiệm chi phí – Các công ty có thể tập trung vào những dự án để tạo sự khác biệt cho hoạt động kinh doanh thay vì duy trì các trung tâm dữ liệu. Với điện toán đám mây, bạn có thể tập trung vào khách hàng của mình, thay vì tập trung vào việc xếp dỡ, chất đống và hao tốn năng lượng cho cơ sở hạ tầng vật lý.
•    Phát triển toàn cầu chỉ trong vài phút - Ứng dụng có thể được triển khai ở nhiều Khu vực trên thế giới chỉ với một vài cú nhấp chuột. Điều này có nghĩa là bạn có thể cung cấp ứng dụng với độ trễ thấp hơn và mang lại trải nghiệm tốt hơn cho khách hàng của mình với chi phí tối thiểu.

 

Đám mây AWS là gì?

Điện toán đám mây AWS cung cấp dịch vụ phân phối công nghệ theo yêu cầu thông qua Internet theo chính sách thanh toán tuỳ vào mức sử dụng. 

Đám mây AWS bao gồm một loạt các sản phẩm dựa trên đám mây toàn cầu bao gồm máy tính, lưu trữ, cơ sở dữ liệu, phân tích, mạng, thiết bị di động, công cụ dành cho lập trình viên, công cụ quản lý, IoT, bảo mật và các ứng dụng doanh nghiệp: theo yêu cầu, khả dụng trong vài giây, với định giá theo chính sách thanh toán tuỳ vào mức sử dụng. Với hơn 200 dịch vụ với đầy đủ tính năng có sẵn từ các trung tâm dữ liệu trên toàn cầu, đám mây AWS có những gì bạn cần để phát triển, triển khai và vận hành các ứng dụng của mình, đồng thời giảm chi phí, trở nên linh hoạt hơn và đổi mới nhanh hơn.

Ví dụ: với đám mây AWS, bạn có thể tạo ra một máy ảo, chỉ định số lõi CPU ảo (vCPU), bộ nhớ, dung lượng lưu trữ và các đặc điểm khác trong vài giây và chỉ thanh toán cho cơ sở hạ tầng được cung cấp cho mỗi giây chúng được cung cấp và hoạt động. Một lợi ích của mạng cơ sở hạ tầng toàn cầu AWS là bạn có thể cung cấp tài nguyên trong Vùng hoặc các Khu vực phục vụ tốt nhất cho trường hợp sử dụng cụ thể của bạn. Khi bạn đã hoàn thành công việc với các tài nguyên, bạn chỉ cần xóa chúng. Với tính linh hoạt và khả năng mở rộng được tích hợp sẵn này, bạn có thể xây dựng một ứng dụng để phục vụ khách hàng đầu tiên của mình và sau đó mở rộng quy mô để phục vụ 100 triệu người dùng tiếp theo.
 

On-premises và Điện toán đám mây

Trước khi có đám mây, các công ty, tổ chức lưu trữ và bảo trì phần cứng trong trung tâm dữ liệu của riêng họ. Điều này thường tiêu tốn toàn bộ phòng cơ sở hạ tầng để chăm sóc trung tâm dữ liệu đó. Việc này dẫn đến chi phí hoạt động tốn kém khiến một số khối lượng công việc và thử nghiệm không thể thực hiện được.

Nhu cầu về thiết bị máy tính, lưu trữ và mạng tăng lên khi việc sử dụng internet ngày càng phổ biến. Đối với một số công ty và tổ chức, chi phí duy trì trung tâm này là rất lớn và không bền vững. Điện toán đám mây xuất hiện để giải quyết vấn đề này.

Để phân biệt khối lượng công việc đang chạy trên cơ sở vật lý (on-premises) so với trên đám mây, hãy xem xét một tình huống mà trong đó nhóm các lập trình viên muốn triển khai một vài tính năng mới trong ứng dụng của họ. Trước khi triển khai, nhóm muốn kiểm tra các tính năng trong môi trường đảm bảo chất lượng riêng biệt, có cùng cấu hình như khi sản xuất.

Với giải pháp on-premises, một môi trường bổ sung yêu cầu bạn phải mua và cài đặt phần cứng, kết nối với hệ thống cáp cần thiết, cung cấp điện, cài đặt hệ điều hành, v.v. Những công việc này đều tốn thời gian và chi phí. Trong khi đó, nhóm cần trì hoãn việc phát hành các tính năng mới trong khi chờ đợi để xây dựng môi trường đảm bảo chất lượng cho việc kiểm tra này. Ngược lại, nếu bạn chạy ứng dụng của mình trên đám mây, bạn có thể tái tạo toàn bộ môi trường sản xuất, bất cứ khi nào cần, chỉ trong vài phút hoặc thậm chí vài giây. Thay vì cài đặt phần cứng vật lý và kết nối cáp, giải pháp được quản lý thông qua internet.

Việc sử dụng điện toán đám mây giúp tiết kiệm thời gian trong quá trình thiết lập và loại bỏ các công việc nặng nhọc không phân biệt bạn cần nhiều hay ít. Nếu nhìn vào bất kỳ ứng dụng nào, bạn sẽ thấy rằng một số yếu tố của nó rất quan trọng đối với doanh nghiệp, chẳng hạn như mã lập trình (code). Tuy nhiên, các khía cạnh khác lại không khác biệt mấy so với bất kỳ ứng dụng nào mà bạn có thể tạo - ví dụ như việc tính toán mà mã lập trình chạy. Là một lập trình viên, bạn có thể muốn tập trung vào những gì độc đáo và riêng biệt nhất cho ứng dụng của mình, chứ không phải các nhiệm vụ thông thường, chẳng hạn như cung cấp máy chủ, không khác biệt gì mấy cho ứng dụng của bạn. Một ví dụ là, một nhóm các nhà nghiên cứu từ Đại học Clemson đã đạt được cột mốc đáng chú ý trong khi nghiên cứu mô hình chủ đề, một thành phần quan trọng của machine learning liên quan đến xử lý ngôn ngữ tự nhiên (NLP). Trong khoảng thời gian chưa đầy 24 giờ, họ đã tạo ra một cụm (cluster) trên đám mây có hiệu suất cao bằng cách sử dụng hơn 1.100.000 CPU ảo trên Phiên bản Spot của Amazon EC2 chạy trong một Khu vực AWS duy nhất. Đây chỉ là một trong nhiều ví dụ về cách AWS có thể giúp bạn đổi mới nhanh hơn.
 

IaaS, PaaS, và SaaS

Điện toán đám mây cung cấp cho các lập trình viên khả năng tập trung vào những gì quan trọng nhất và tránh mua sắm, bảo trì hay lập kế hoạch năng lực cơ sở hạ tầng hoặc các công việc nặng nhọc không phân biệt khác.

Với sự phổ biến ngày càng tăng của điện toán đám mây, một số mô hình dịch vụ khác nhau đã xuất hiện để đáp ứng các nhu cầu cụ thể của những người dùng khác nhau. Mỗi loại dịch vụ đám mây cung cấp cho bạn các cấp độ phạm vi, kiểm soát, linh hoạt và quản lý khác nhau. Hiểu được sự khác biệt giữa dịch vụ cơ sở hạ tầng (Infrastructure as a Service - IaaS), dịch vụ nền tảng (Platform as a Service - PaaS) và dịch vụ phần mềm (Software as a Service - SaaS) có thể giúp bạn quyết định loại dịch vụ nào phù hợp với nhu cầu của mình với tư cách là một lập trình viên.
 
Dịch vụ cơ sở hạ tầng (IaaS) 
IaaS chứa các khối xây dựng cơ bản cho đám mây CNTT và thường cung cấp quyền truy cập vào các tính năng mạng, máy tính (ảo hoặc trên phần cứng chuyên dụng) và không gian lưu trữ dữ liệu. IaaS cung cấp cho bạn mức độ linh hoạt và quyền kiểm soát quản lý cao nhất đối với các tài nguyên CNTT của mình và giống như các tài nguyên CNTT hiện có mà nhiều lập trình viên quen thuộc ngày nay.
 
Dịch vụ nền tảng (PaaS)
PaaS loại bỏ yêu cầu bạn phải quản lý cơ sở hạ tầng bên dưới (thường là phần cứng và hệ điều hành) và cho phép bạn tập trung vào việc triển khai, quản lý các ứng dụng của mình. Điều này thúc đẩy tính hiệu quả vì bạn không cần phải lo lắng về việc mua sắm tài nguyên, lập kế hoạch năng lực, bảo trì phần mềm, vá lỗi hoặc bất kỳ công việc nặng nhọc không phân biệt nào khác liên quan đến việc chạy ứng dụng của bạn.
 
Dịch vụ phần mềm (SaaS)
SaaS cung cấp cho bạn một sản phẩm hoàn chỉnh do nhà cung cấp dịch vụ điều hành và quản lý. Trong hầu hết các trường hợp, người ta đề cập đến SaaS là đề cập đến các ứng dụng dành cho người dùng cuối. Với SaaS, bạn không cần phải suy nghĩ về cách dịch vụ được duy trì hay cách mà cơ sở hạ tầng bên dưới được quản lý; bạn chỉ cần nghĩ về cách mà bạn sẽ sử dụng phần mềm đó. Một ví dụ phổ biến về ứng dụng SaaS là email dựa trên nền tảng web mà bạn có thể sử dụng để gửi và nhận email mà không cần phải quản lý các tính năng bổ sung cho sản phẩm email hoặc duy trì các máy chủ và hệ điều hành mà chương trình email đang chạy.

 

Cơ sở hạ tầng toàn cầu

Với đám mây, bạn có thể mở rộng đến các khu vực địa lý mới và triển khai trên toàn cầu chỉ trong vài phút. Ví dụ: AWS có cơ sở hạ tầng trên toàn thế giới, vì vậy các lập trình viên có thể triển khai ứng dụng ở nhiều vị trí thực tế chỉ với một vài cú nhấp chuột. Bằng cách đưa các ứng dụng của bạn đến gần hơn với người dùng cuối, bạn có thể giảm độ trễ và cải thiện trải nghiệm người dùng.

AWS đang đều đặn mở rộng cơ sở hạ tầng toàn cầu để giúp khách hàng của họ đạt được độ trễ thấp hơn và thông lượng (throughput) cao hơn, đồng thời đảm bảo rằng dữ liệu của họ chỉ nằm trong Khu vực AWS mà họ chỉ định. Khi khách hàng của AWS phát triển doanh nghiệp của họ, AWS sẽ tiếp tục cung cấp cơ sở hạ tầng đáp ứng các yêu cầu toàn cầu của họ.

Cơ sở hạ tầng đám mây AWS được xây dựng xung quanh các Khu vực (Regions) và Vùng khả dụng (Availability Zones - AZ) của AWS. Vùng là một vị trí thực tế trên thế giới nơi mà AWS có nhiều Vùng khả dụng. Vùng khả dụng bao gồm một hoặc nhiều trung tâm dữ liệu rời rạc, mỗi trung tâm có nguồn, mạng và kết nối dự phòng, được đặt trong các cơ sở riêng biệt. Các Vùng khả dụng này cung cấp cho bạn khả năng vận hành các ứng dụng sản xuất và cơ sở dữ liệu có tính khả dụng cao hơn, khả năng chịu lỗi và khả năng mở rộng cao hơn so với khả năng của một trung tâm dữ liệu duy nhất.

Cơ sở hạ tầng đám mây AWS rộng khắp thế giới, cung cấp 200 dịch vụ với đầy đủ tính năng có sẵn từ các trung tâm dữ liệu trên toàn cầu. Với cơ sở hạ tầng toàn cầu lớn nhất so với bất kỳ nhà cung cấp dịch vụ đám mây nào, AWS cung cấp cho bạn cơ sở hạ tầng đám mây ở bất kỳ đâu và bất cứ khi nào bạn cần.

Bản đồ cơ sở hạ tầng AWS toàn cầu


 
Các công cụ dành cho lập trình viên

Cách tương tác với AWS
Khi sử dụng cơ sở hạ tầng ảo, như với điện toán đám mây, cách làm việc của các lập trình viên với cơ sở hạ tầng sẽ thay đổi một chút. Thay vì quản lý cơ sở hạ tầng về mặt vật lý, bạn quản lý nó một cách hợp lý thông qua giao diện lập trình ứng dụng AWS (API). Khi bạn tạo, xóa hoặc thay đổi bất kỳ tài nguyên AWS nào, bạn sẽ sử dụng các lệnh gọi API tới AWS để thực hiện điều đó.

Bạn có thể thực hiện các lệnh gọi API này theo nhiều cách, nhưng dưới đây sẽ trình bày một số cách như:
•    Bảng điều khiển quản lý AWS
•    Giao diện dòng lệnh AWS (AWS CLI) 
•    IDE và bộ công cụ IDE 
•    Bộ phát triển phần mềm AWS (SDK)

Bảng điều khiển quản lý AWS
Khi lần đầu tiên bắt đầu với AWS, mọi người thường bắt đầu với Bảng điều khiển quản lý AWS, một bảng điều khiển dựa trên web mà bạn đăng nhập thông qua trình duyệt. Bảng điều khiển bao gồm một bộ sưu tập lớn các bảng điều khiển dịch vụ để quản lý tài nguyên AWS. Bằng cách làm việc trong bảng điều khiển, bạn không cần phải lo lắng về tập lệnh hoặc cú pháp. Bạn cũng có thể chọn Khu vực cụ thể mà bạn muốn có dịch vụ AWS.

Sau khi làm việc trong bảng điều khiển, bạn có thể muốn chuyển sang triển khai thủ công dịch vụ AWS, có thể vì bạn đã quen thuộc hơn với AWS hoặc đang làm việc trong môi trường sản xuất yêu cầu một mức độ quản lý rủi ro cụ thể. Đây là lúc Giao diện dòng lệnh AWS xuất hiện.

Giao diện dòng lệnh AWS (AWS CLI)
Giao diện dòng lệnh AWS là một công cụ mã nguồn mở cho phép bạn tạo và định cấu hình các dịch vụ AWS bằng cách sử dụng các lệnh trong shell dòng lệnh của bạn. Bạn có thể chạy các lệnh trong Linux hoặc macOS bằng các chương trình shell phổ biến như bash, zsh và tcsh hoặc trên Windows, tại dấu nhắc lệnh Windows hoặc trong PowerShell. Một tùy chọn để thiết lập và chạy nhanh chóng với giao diện dòng lệnh AWS là AWS CloudShell, một shell dựa trên trình duyệt cung cấp quyền truy cập dòng lệnh vào các tài nguyên AWS. CloudShell được xác thực trước bằng thông tin đăng nhập bảng điều khiển của bạn. Các công cụ phát triển và hoạt động phổ biến được cài đặt sẵn, vì vậy không cần cài đặt hoặc cấu hình cục bộ.

Bằng cách chuyển sang giao diện dòng lệnh AWS, bạn có thể tập lệnh hoặc lập trình các lệnh gọi API. Thay vì sử dụng GUI, bạn tạo lệnh bằng cú pháp AWS đã xác định. Một lợi ích của giao diện dòng lệnh là bạn có thể tạo các lệnh đơn lẻ để tạo ra nhiều tài nguyên AWS, điều này có thể giúp giảm thiểu khả năng xảy ra lỗi của con người khi chọn và định cấu hình tài nguyên. Với giao diện dòng lệnh, bạn cần học cú pháp thích hợp để tạo các lệnh, nhưng khi bạn viết các lệnh này, bạn có thể lặp lại chúng. Điều này sẽ giúp bạn tiết kiệm thời gian về lâu dài.

IDE và bộ công cụ IDE
AWS hỗ trợ cho môi trường phát triển tích hợp (Integrated Development Environments - IDE) và các bộ công cụ IDE phổ biến để bạn có thể tạo, gỡ lỗi và triển khai mã lập trình (code) của mình trên AWS từ bên trong môi trường ưa thích của bạn. Các IDE và bộ công cụ được hỗ trợ bao gồm AWS Cloud9, IntelliJ, PyCharm, Visual Studio, Visual Studio Code, Azure DevOps, Rider và WebStorm.

Bộ phát triển phần mềm AWS (SDKs)
Bộ phát triển phần mềm (SDKs) là các công cụ cho phép bạn tương tác với giao diện lập trình ứng dụng AWS (API) theo chương trình. AWS tạo và duy trì SDK cho hầu hết các ngôn ngữ lập trình phổ biến, bao gồm cả những ngôn ngữ được hiển thị trong sơ đồ sau.


 
 

SDK rất hữu ích khi bạn muốn tích hợp mã nguồn ứng dụng của mình với các dịch vụ AWS. Ví dụ: bạn có thể sử dụng Python SDK để viết mã lập trình nhằm lưu trữ tệp trong Amazon Simple Storage Service (Amazon S3) thay vì trên ổ cứng cục bộ của bạn. Khả năng quản lý các dịch vụ AWS từ một nơi mà bạn có thể chạy mã nguồn, với các điều kiện, vòng lặp, mảng, danh sách và các phần tử lập trình khác, cung cấp rất nhiều sức mạnh và sự sáng tạo.

Đây chỉ là một số công cụ có sẵn dành cho các lập trình viên trên AWS. Để biết danh sách đầy đủ, bạn có thể xem thêm Tools to Build on AWS.

Mã cơ sở hạ tầng (IaC)

Tương tự như cách các nhà phát triển phần mềm viết mã lập trình cho ứng dụng, AWS cung cấp các dịch vụ cho phép các lập trình viên tạo, triển khai và duy trì cơ sở hạ tầng theo cách lập trình, mô tả và khai báo.

AWS CDK
Bộ phát triển đám mây AWS (AWS CDK) là khung phát triển phần mềm để xác định cơ sở hạ tầng đám mây trong mã lập trình và cung cấp nó thông qua AWS CloudFormation. AWS CDK hỗ trợ các ngôn ngữ lập trình quen thuộc, chẳng hạn như TypeScript, JavaScript, Python, Java, C#/.Net và Go (trong bản xem trước của lập trình viên).

Việc cấp phép các ứng dụng đám mây có thể là một thách thức, đòi hỏi bạn phải viết các tập lệnh tùy chỉnh, duy trì các biểu mẫu hoặc học thêm các ngôn ngữ dành riêng cho miền. AWS CDK sử dụng sự quen thuộc và sức mạnh biểu đạt của các ngôn ngữ lập trình để lập mô hình cho các ứng dụng của bạn. AWS CDK cung cấp các thành phần ban đầu được gọi là cấu trúc (constructs), các cấu trúc này xác định cấu hình tài nguyên đám mây trước với các giá trị mặc định đã được kiểm chứng, vì vậy bạn có thể xây dựng các ứng dụng đám mây một cách dễ dàng. AWS CDK cung cấp tài nguyên của bạn một cách an toàn, có thể lặp lại thông qua AWS CloudFormation. AWS CDK cũng cho phép bạn soạn và chia sẻ các constructs tùy chỉnh của riêng bạn kết hợp với các yêu cầu của tổ chức, giúp bạn xúc tiến các dự án mới.

Dưới đây là cách AWS CDK hoạt động:


 

AWS cũng cung cấp AWS CDK cho Kubernetes (cdk8s), một khung phát triển phần mềm mã nguồn mở để xác định các ứng dụng Kubernetes có sử dụng các ngôn ngữ lập trình với mục đích chung.

AWS CloudFormation
Việc lập mô hình và thiết lập tài nguyên AWS có thể tốn nhiều thời gian. Đây là lúc AWS CloudFormation có thể giúp bạn. CloudFormation giúp bạn lập mô hình và thiết lập tài nguyên AWS để bạn ít mất thời gian hơn cho việc quản lý tài nguyên và có nhiều thời gian hơn để tập trung vào các ứng dụng của mình. Sử dụng CloudFormation, bạn có thể tạo một mẫu mô tả tất cả các tài nguyên AWS mà bạn muốn (như bản sao Amazon EC2 hoặc bản Amazon RDS DB). Sau khi bạn tạo mẫu, CloudFormation sẽ xử lý việc cung cấp và định cấu hình các tài nguyên đó cho bạn. Bạn không cần phải tạo và định cấu hình tài nguyên AWS riêng lẻ và tìm ra cái gì phụ thuộc vào cái gì; CloudFormation xử lý việc này. CloudFormation có thể giúp bạn đơn giản hóa việc quản lý cơ sở hạ tầng, nhanh chóng tái tạo cơ sở hạ tầng, đồng thời dễ dàng kiểm soát cũng như theo dõi các thay đổi đối với cơ sở hạ tầng của bạn.

Dưới đây là cách AWS CloudFormation hoạt động:


 
Kiến trúc cơ sở hạ tầng

Tổng quan về khung chuẩn
Việc thiết kế một kiến trúc đám mây vững chắc là công việc cơ bản liên quan đến toàn bộ đội ngũ kỹ thuật. Hiểu được sáu trụ cột của Khung Kiến trúc AWS sẽ giúp bạn định hướng suy nghĩ về các phương pháp hay nhất khi làm việc với các dịch vụ AWS.

Kiến trúc AWS giúp các kiến trúc sư, lập trình viên xây dựng cơ sở hạ tầng trên đám mây một cách an toàn, có hiệu suất cao, có khả năng phục hồi và hiệu quả cho nhiều ứng dụng và khối lượng công việc. Được xây dựng dựa trên sáu trụ cột – vận hành trơn tru (operational excellence), bảo mật (security), độ tin cậy (reliability), hiệu suất hoạt động (performance efficiency), tối ưu hóa chi phí (cost optimization) và tính bền vững (sustainability) - Kiến trúc AWS cung cấp cách tiếp cận nhất quán để bạn đánh giá kiến trúc và triển khai các thiết kế có thể mở rộng về sau.

Khung Kiến trúc AWS bao gồm ống kính dành riêng cho miền, phòng thí nghiệm thực hành và Công cụ Kiến trúc AWS. Công cụ Kiến trúc AWS, được cung cấp miễn phí trong Bảng điều khiển quản lý AWS, cung cấp một cơ chế để đánh giá thường xuyên khối lượng công việc, xác định các vấn đề có nguy cơ cao và ghi lại các cải tiến.

Vận hành trơn tru (operational excellence)
Trụ cột này tập trung vào việc vận hành và giám sát các hệ thống, đồng thời liên tục cải tiến các quy trình và thủ tục. Các chủ đề chính bao gồm tự động hóa các thay đổi, phản hồi các sự kiện và xác định các tiêu chuẩn để quản lý các hoạt động hàng ngày.

Bảo mật (security)
Trụ cột này tập trung vào việc bảo vệ thông tin và hệ thống. Các chủ đề chính bao gồm tính bảo mật và tính toàn vẹn của dữ liệu, quản lý quyền của người dùng và thiết lập các biện pháp kiểm soát để phát hiện các sự kiện liên quan đến bảo mật.

Độ tin cậy (reliability)
Trụ cột này tập trung vào khối lượng công việc thực hiện các chức năng dự kiến và cách phục hồi nhanh chóng khi không đáp ứng được nhu cầu. Các chủ đề chính bao gồm thiết kế hệ thống phân tán, lập kế hoạch khôi phục và thích ứng với các yêu cầu thay đổi.

Hiệu suất hoạt động (performance efficiency)
Trụ cột này tập trung vào việc phân bổ có cấu trúc và hợp lý các tài nguyên máy tính và CNTT. Các chủ đề chính bao gồm lựa chọn các loại và kích thước tài nguyên được tối ưu hóa cho các yêu cầu về khối lượng công việc, giám sát hiệu suất và duy trì hiệu quả khi nhu cầu kinh doanh phát triển.

Tối ưu hóa chi phí (cost optimization) 
Trụ cột này tập trung vào việc tránh các chi phí không cần thiết. Các chủ đề chính bao gồm chi tiêu hợp lý theo thời gian và kiểm soát phân bổ ngân sách, lựa chọn nguồn lực đúng loại và số lượng, cũng như mở rộng quy mô để đáp ứng nhu cầu kinh doanh mà không gây bội chi.

Tính bền vững (sustainability)
Trụ cột này tập trung vào việc giảm thiểu các tác động đến môi trường khi chạy khối lượng công việc trên đám mây. Các chủ đề chính bao gồm mô hình trách nhiệm chung về tính bền vững, hiểu biết về tác động và tận dụng tối đa để giảm thiểu các nguồn lực cần thiết và giảm tác động đến hạ nguồn.

Bảo mật

Khi bạn xây dựng ứng dụng trên AWS, việc quản lý bảo mật và tuân thủ là trách nhiệm chung của AWS và bạn. Để mô tả trách nhiệm chung này, AWS đã tạo ra mô hình trách nhiệm chung (xem sơ đồ bên dưới). Sự khác biệt về trách nhiệm thường được gọi là bảo mật “của” đám mây so với bảo mật “trên” đám mây.


 
Trách nhiệm của AWS
Chịu trách nhiệm về bảo mật “của” đám mây có nghĩa là AWS bảo vệ và bảo mật cơ sở hạ tầng để chạy các dịch vụ được cung cấp trong Đám mây AWS. AWS chịu trách nhiệm về:
•    Bảo vệ và bảo mật các Khu vực AWS, Vùng khả dụng và trung tâm dữ liệu, đồng thời bảo mật vật lý cho các nơi này. 
•    Quản lý phần cứng, phần mềm và các thành phần mạng để chạy các dịch vụ AWS, chẳng hạn như máy chủ vật lý, hệ điều hành máy chủ, lớp ảo hóa và các thành phần mạng AWS.

Trách nhiệm của khách hàng
Khách hàng, hoặc bất kỳ ai xây dựng ứng dụng trên đám mây, đều chịu trách nhiệm về bảo mật “trên” đám mây. Khi sử dụng bất kỳ dịch vụ AWS nào, bạn có trách nhiệm định cấu hình đúng dịch vụ và các ứng dụng của mình, ngoài việc đảm bảo rằng dữ liệu của bạn phải được bảo mật.

Mức độ trách nhiệm của bạn phụ thuộc vào dịch vụ AWS mà bạn chọn. Một số dịch vụ yêu cầu bạn thực hiện tất cả các tác vụ quản lý và cấu hình bảo mật cần thiết, trong khi có những dịch vụ chỉ yêu cầu bạn quản lý dữ liệu và kiểm soát quyền truy cập vào tài nguyên của mình.

Do mức độ yêu cầu trách nhiệm khác nhau, khách hàng phải cân nhắc họ sử dụng dịch vụ AWS nào và xem xét mức độ trách nhiệm cần thiết để đảm bảo cho mỗi dịch vụ. Họ cũng phải xem xét cách mà mô hình bảo mật chung có thể phù hợp với các tiêu chuẩn bảo mật trong môi trường CNTT của họ, bên cạnh bất kỳ luật và quy định hiện hành nào.

Ý tưởng chính là khách hàng duy trì quyền kiểm soát hoàn toàn dữ liệu của họ và chịu trách nhiệm quản lý bảo mật liên quan đến nội dung của họ.

Bản tóm tắt ngắn gọn này về bảo mật đám mây chỉ giới thiệu các khái niệm cốt lõi. Bạn có thể xem qua trang Security Learning để tìm hiểu thêm về các chủ đề chính, lĩnh vực nghiên cứu và cơ hội đào tạo về bảo mật đám mây trên AWS.
 

Nguồn: aws.amazon


 


Cũ hơn Mới hơn


Thông tin liên hệ

Thông tin chuyển khoản
Công ty Cổ phần ATOHA. Ngân hàng Á Châu (ACB). Số tài khoản: 6868 2468, PGD Tân Sơn Nhì, TPHCM.
Đăng ký khóa học
Chọn khóa học phù hợp bằng cách điền thông tin như link bên dưới. Tư vấn viên Atoha sẽ liên hệ anh/chị ngay.
Câu hỏi thường gặp

“Có. Atoha sẽ có chứng nhận hoàn thành chương trình đào tạo dành cho học viên và cung cấp 35 giờ đào tạo bắt buộc (1 trong 3 điều kiện thi lấy chứng chỉ PMP quốc tế)."

“Cả 2. Tài liệu có thể là tiếng Anh hoặc tiếng Việt tùy vào lớp. Atoha có thể đào tạo bằng cả tiếng Anh hoặc tiếng Việt."

“Chưa bao gồm. Học viên sẽ cần đóng phí thi trực tiếp cho viện PMI nếu muốn đăng ký thi, phí thi tham khảo như sau: 389 USD/non-member và 393 USD/member (trong đó phí thành viên PMI là 99 USD, phí admin là 10 USD, phí thi PMP là 284 USD). Chi phí này dành cho một số khu vực, trong đó có Việt Nam. Tham khảo thêm tại: www.pmi.org"

Liên hệ ngay với Atoha để được tư vấn về chương trình phù hợp