1. Trang chủ
  2. » Công Nghệ Thông Tin

Tìm hiểu một vài nhà cung cấp dịch vụ đám mây

38 655 1
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài luận
Năm xuất bản 2025
Thành phố Hà Nội
Định dạng
Số trang 38
Dung lượng 2,64 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tìm hiểu một vài nhà cung cấp dịch vụ đám mây

Trang 1

Tìm hiểu một vài nhà cung cấp dịch vụ đám mây

Nền tảng dịch vụ đám mây vẫn còn trong giai đoạn xây dựng , nhưng các nhà kinh doanhlớn như Microsoft, IBM, Amazon, và Google đã có những đầu tư đáng kể cho tương laitrong việc cung ứng dịch vụ đám mây

Dịch vụ Web Amazon

Amazon là hãng bán lẻ lớn nhất trên thế giới, và để hỗ trợ các hoạt động hằng ngày,Amazon là một trong những trung tâm dữ liệu tiên tiến nhất trên thế giới Việc xử lí hàngtriệu giao dịch mỗi giờ yêu cầu một cơ sở hạ tầng giao dịch cấp cao và nó không chỉ cungcấp tính ổn định, tốc độ mà còn giảm chi phí chuyển đổi Amazon đã đạt được điều nàybằng cách xây dựng một cơ sở hạ tầng trung tâm dữ liệu tự động triển khai hệ điều hành

ảo và máy chủ lưu trữ Amazon quyết định kiếm tiền từ sở hữa trí tuệ này bằng cách chothuê nền tảng của họ và các dịch vụ lưu trữ để các lập trình viên và nhà cung cấp dịch vụđộc lập (ISVs) phát triển và lưu trữ ứng dụng Năm dịch vụ mà nền tảng đám mây củaAmazon cung cấp :

- Elastic Compute Cloud (EC2)

Trang 3

Hình 1-8 Trang chủ dịch vụ web Amazon (http://aws.amazon.com/)

Từ góc nhìn của lập trình viên có 3 phần quan trọng trong trang này : Sản phẩm& Dịch

vụ (Products & Services ) , Đăng kí (Signup) – đăng kí tài khoản miễn phí, và Lập trìnhviên (Developers) – chứa các tài nguyên để xây dựng phần mềm với các công nghệ được

hỗ trợ như : Java, PHP, Ruby,Windows & Net

Trang 4

Amazon EC2

Amazon EC2 là môi trường tính toán ảo cung cấp khả năng tính toán trong đám mây Cáclập trình viên có thể tạo , khởi động và tắt máy ảo theo nhu cầu Máy ảo hỗ trợ nhiều hệđiều hành khác nhau như Red Hat Enterprise, Linux, Windows Server 2003, OracleEnterprise Linux, OpenSolaris, openSUSE Linux, Ubuntu Linux, Fedora, Gentoo Linux,

và Debian Máy ảo cũng hỗ trợ nhiều phần mềm như Oracle 11g, Microsoft SQL Server

2005 Standard Edition, Apache Web Server, IIS / ASP.Net, Java Application Server,Jboss Enterprise Application Platform,…

Hình 1-10 : Trang chủ Amazon EC2

Trang 5

Amazon SimpleDB

Amazon SimpleDB là một dịch vụ cơ sở dữ liệu đám mây cung cấp các chức năng cơ sở

dữ liệu để lưu trữ dữ liệu chỉ mục và hàng đợi Simple DB không phải là một cơ sở dữliệu quan hệ trong đám mây nhưng là một phương tiện lưu trữ để lưu trữ và lấy dữ liệu

Hình 1-12 Trang chủ Amazon SimpleDB

Trang 6

Amazon Simple Storage Service (S3)

Amazon S3 là một cơ sở dữ liệu đám mây, được sử dụng để lưu trữ và lấy dữ liệu quainternet Đây là cơ sở hạ tầng lưu trữ dữ liệu mà Amazon chạy các trang riêng của nó trêntoán cầu Các lập trình viên có thể tận dụng cơ sở hạ tầng lưu trữ chất lượng tương tự

Amazon S3 chứa 3 khái niệm lưu trữ : object, bucket, và key Object là đối tượng nền

tảng trong S3, chứa các dữ liệu và siêu dữ liệu (metadata) ,và kích thước tối đa có thể là

5GB Các object có thể được lưu trữ trong bucket Bucket cung cấp một namespace duy nhất để chứa các object Key dùng để nhận biết các object trong bucket

Hình 1-14 Trang chủ Amazon S3

Trang 7

Amazon CloudFront

Amazon CloudFront là một mạng phân phối dữ liệu để chuyển đổi nội dung AmazonCloudFont hoạt động cùng với Amazon S3 để cung cấp các bản sao của đối tượng từ vịtrí gần nhất đến ứng dụng đang gọi Ví dụ, nếu bạn có một ứng dụng đang chạy trong mộttrung tâm dữ liệu ở châu Á, Amazon CloudFront có thể cung cấp các đối tượng từ vị trí Á

Hình 1-16 : Trang chủ Amazon CloudFont

Trang 8

Amazon Simple Queue Service

Amazon SQS là dịch vụ truy vấn đám mây để lưu trữ tin nhắn Các lập trình viên có thểtận dụng SQS để chia sẻ dữ liệu truy vấn thông qua ứng dụng phân tán SQS hỗ trợ tất cảcác chức năng truy vấn cơ bản như tạo, lập danh sách, và xóa truy vấn cũng như gửi,nhận và xóa tin nhắn Bạn có thể sử dụng Amazon SQS cùng với EC2 và S3 để xây dựngcác luồng làm việc phức tạp

Hình 1-18 Trang chủ Amazon SQS

Trang 9

Google là người dẫn đầu trong các dịch vụ tìm kiếm trên Internet và có những tài sảnđáng kể trong lĩnh vực quảng cáo, hợp tác, e-mail, và các trang mạng xã hội Google cócác trung tâm dữ liệu khổng lồ, với các thuật toán tuy chỉnh để làm chủ công cụ tìm kiếmnhanh nhất thế giới Công ty đã mở rộng cơ sở hạ tầng một cách ồ ạt để làm chủ các nềntảng giao tiếp và cộng tác gọi là Google Apps và nền tảng ứng dụng gọi là GoogleAppEngine để phát triển và triển khai ứng dụng web

Trang 10

Hình 1-22b Trang chủ Google Apps cho giáo dục.

Trang 11

Các dịch vụ chính được cung cấp bởi Google Apps là thư điện tử (Gmail), tin nhanh(Google Talk), lịch (Google Calendar), quản lí tài liệu (Google Docs), và quản lí trangweb (Google Sites)

Google cung cấp các API gọi là Google Data API để lập trình không chỉ cho GoogleApps mà còn cho các ứng dụng khác như Google Maps, Google Health, and YouTube

Hình 1-23 Google Data API

Trang 12

Google App Engine

Google App Engine là môi trường để phát triển và triển khai các ứng dụng web trên

cơ sở hạ tầng Google App Engine hỗ trợ Python và Java như là ngôn ngữ lập trình chính

để phát triển ứng dụng web Các nhà phát triển có thể phát triển các ứng dụng web bằngPython hoặc Java và triển khai những ứng dụng trong App Engine App Engine cũngcung cấp một kho dữ liệu với các chức năng hỗ trợ đơn giản như tạo, lấy, và xóa Các nhàphát triển có thể truy cập kho dữ liệu từ bên trong với các ứng dụng web App Engine đểlưu trữ và truy vấn dữ liệu Google App Engine cũng cung cấp Google Data APIs để truycập vào thành phần Google Apps như email, lịch, tìm kiếm, và docs

Hình 1-24 Hướng dẫn phát triển Google App Engine

Trang 13

Các dịch vụ đám mây GoGrid cung cấp máy ảo Windows và Linux cấu hình sẵn với cácthành phần phần mềm được sử dụng thường xuyên nhất Dịch vụ này rất giống dịch vụAmazon EC2 với một số tính năng khác biệt

Hình 1-26 Trang chủ GoGrid.com

Trang 15

Azure, hệ điều hành "đám mây" mà Microsoft giới thiệu vào cuối tháng 10 tại hội nghịPDC 2008 Windows Azure được phát triển trong 2 năm bởi kiến trúc sư trưởng phầnmềm Ray Ozzie của Microsoft

Azure Services Platform là một giải pháp hoàn thiện cho các doanh nghiệp Microsoft

sẽ lưu trữ các ứng dụng được xây dựng từ các hãng thứ ba cũng như những dịch vụ Webcủa chính Microsoft như là Office Live, Windows Live, Exchange Online, CRM Online Kết hợp chặt chẽ .NET Services (cho lập trình viên), SQL Services (cho cơ sở dữ liệu vàbáo biểu), Live Services (cho việc tương tác với các thiết bị người dùng) vào trong cácdịch vụ SharePoint và CRM (cho nội dung doanh nghiệp)

Trang 16

Môi trường phát triển ứng dụng Windows Azure

Môi trường lập trình của WA bao gồm 2 thành phần chính: Windows Azure Toolscho Visual Studio và Windows Azure SDK

Kiểu project Visual Studio

Windows Azure Tools cho Visul Studio tạo ra một kiểu project chứa các template

dự án cho Web role và Worker role Sau khi cài đặt Windows Azure Tools cho VisualStudio, mở Visual Studio và tạo một project mới bằng cách: File  New  Project

Chọn Cloud Service, tiếp theo thêm vào các role cho dự án

Trang 17

Có 4 role hợp lệ cho cloud service.

 ASP.NET Web role : Role này gồm một project ASP.NET Bạn có thể xây

dựng hay chuyển bất cứ project ASP.NET để triển khai trên đám mây

 WCF Service Web role : Role này chứa một WCF project Cũng như

ASP.NET Web role Bạn có thể xây dựng hay chuyển bất cứ dịch vụ WCF đểtriển khai trên đám mây

 Worker role: Dự án Worker role là một ứng dụng xử lý background

 CGI Web role: CGI Web role là một Web role cho phép dùng FasstCGI.

Trang 18

Sau khi tạo xong,

Hình 1 Ví dụ một Cloud Service

Trong hình trên, project cloud service HelloCloud giữ tham chiếu đến tất cả cácproject trong solution trong thư mục con Roles Đồng thời, project cũng chứa 2 tập tin:

“ServiceDefinition.csdef “ và “ServiceConfiguration.cscfg” định nghĩa các thiết lập cấu

hình cho các role trong cloud service Dự án WCF service bao gồm một service mẫu và

cấu hình liên kết với nó trong tập tin “web.config” Tập tin “Webrole.cs” cài đặt sự kiện

bắt đầu và thay đổi cấu hình tạo ra bởi Windows Azure Platform Tập tin này được tạo

Trang 19

cho tất cả các role với hàm điều khiển sự kiện bắt đầu và thay đổi cấu hình mặc định Bạn

có thể điều khiển các sự kiện khác như StatusCheck hay Stopping tùy thuộc vào yêu cầu của ứng dụng Lớp WebRole kế thừa từ lớp RoleEntryPoint từ không gian tên

Microsoft.WindowsAzure.ServiceRuntime Tập tin “WebRole.cs” tương tự như tập

tin “Global.asax” trong ứng dựng ASP.NET

Project ASP.NET Web role gồm một tập tin “Default.aspx” và tập tin behind và tập tin “web.config” Cuối cùng, project Worker role gồm tập tin

code-“WorkerRole.cs” và “app.config” Khi kế thừa lớp RoleEntryPoint, có thể override

phương thức Run() Bởi vì Worker role không được thiết kế để có bất kì một external

interface nào, nên nó không chứa bất kì tập tin ASP.NET hay WCF nào

Thiết lập và cấu hình Roles

Trong một project cloud service, bạn có thể cấu hình cho từng role bằng cách nhấp đúpchuột vào các role reference trong thư mục con Role của dự án

Trong Visual Studio có thể thấy như hình sau:

Hình 2 Role settings

Trang 20

Trang thiết lập role có 5 tab: Configuration, Settings, Endpoints, Local Storage, vàCertificates

Thẻ Configuration được chọn mặc định và hiển thị lựa chọn cấu hình sau:

 NET Trust Level: NET Trust Level chỉ ra mức độ tin cậy khi role này chạytrên thực tế Có 2 lựa chọn là Full Trust và Windows Azure Partial Trust Lựachọn Full Trust cho role đặc quyền để truy cập đến các tài nguyên,và thực thiđược native-code Trong Full trust, role có thể chạy trong ngữ cảnh người sửdụng Windows Azure chuẩn, hoặc là admin Trong lựa chọn Partial Trust, rolechạy trong môi trường tin cậy một phần và ko có quyền truy cập tài nguyêncũng như thực thi các native code trên máy

 Instances: Số đếm thể hiện định nghĩa số lượng thể hiện của mỗi role mà bạnmuốn chạy trên cloud Ví dụ, bạn muốn chạy 2 thể hiện của Web roleASP.NET và một thể hiện của Worker role cho xử lý background Mặc định,tất cả các role đều chạy ở một thể hiện duy nhất Lựa chọn này cho bạn khảnăng để tăng giảm số thể hiện theo yêu cầu

Lựa chọn VM size cho bạn khả năng chọn kích thước của máy ảo phụ thuộc vào sự triểnkhai ứng dụng của bạn

 Small: 1 core processor, 1.7GB RAM, 250GB hard disk

 Medium: 2 core processors, 3.5GB RAM, 500GB hard disk

 Large: 4 core processors, 7GB RAM, 1000GB hard disk

 Extra large: 8 core processors, 15GB RAM, 2000GB hard disk

Trang 21

Trong thẻ Setting, bạn có thể thêm hoặc xóa các thiết lập của mình.

Những cặp tên- giá trị này tương tự như cặp tên-giá trị trong “app.config”, hay

“web.config” Bạn có thể lấy giá trị của các thiết lập này trong code bằng cách gọi

RoleEnvironment.GetConfigurationSettingValue Mặc định, có một thiết lập

DiagnosticsConnectionString được sử dụng cho logging từ code của bạn, không xóa bỏ

thiết lập này

Thẻ Endpoint chứa các endpoint của role sẽ được tạo ra khi triển khai.

Hình 3 Thẻ Endpoint cho Web role

Trang 22

Hình 4 Thẻ Enpoint cho Work role

Một Web role có thể có InputEndpoints và một internal endpoint InputEndpoints

có thể là HTTP hay HTTPS endpoints xuất ra bên ngoài Số Port định nghĩa cổng được

sử dụng khi truy cập trang web mặc định hay dịch vụ trong Web role này Trong trườnghợp là HTTPS endpoint, bạn có thể upload một chứng chỉ X.509 cho việc truy cập trangweb hay dịch vụ sử dụng kết nối được mã hóa HTTPS Internal endpoint là một endpoint

có thể truy cập dến các role khác của cùng một cloud service Ví dụ, một Worker role cóthể tham chiếu đến một internal endpoint của một Web role trong cùng một cloud servicecho việc tạo ra các phương thức dịch vụ web gọi đến nó

Một Worker role không định nghĩa endpoint như Web role bởi vì nó được dùngnhư là một xử lý background Để dịnh nghĩa một endpoint, bạn phải thêm một danh sách

và chọn kiểu của nó (input hay internal), protocol (tcp, http, https), cổng, và một tùychọn- tên chứng chỉ SSL

Chú ý rằng Web role chỉ có thể có HTTP hoặc HTTPS endpoints, nhưng mộtWorker role có thể có một HTTP, HTTPS, hay TCP endpoint

Thẻ LocalStorage định nghĩa thư mục cục bộ được tạo ra trên máy chủ của role để choviệc lưu trữ tập tin cục bộ

Trang 23

Hình 5 Thẻ Local Storage

Tên của local storage sẽ là tên của thư mục được tạo trên máy chủ Cột size địnhnghĩa kích thước tối đa của thư mục đó, và Clean on Role Recycle chỉ ra rằng nội dungcủa thư mục đó có bị dọn dẹp đi khi một role dọn rát không Bạn có thể sử dụng tùy chọnnày để tạo ra nơi lưu trữ nhanh để duy trì trạng thái của các role sau khi khởi động lại hay

bị hư hỏng Local storage còn rất hữu ích khi sử dụng cho việc catching tạm thời, hayquản lý session của ứng dụng

Thẻ Certificate được sử dụng cho việc tham chiếu đến các chứng chỉ trong role của bạn.Bạn có thể sử dụng Windows Azure developer portal hay các API các service quản lý choviệc upload các chứng chỉ lên server và sau đó tham chiếu đến các chứng chỉ này trongcác thiết lập như hình sau:

 Chú ý: Tất cả các thiết lập trên có thể thay đổi trực tiếp trong tập tin

ServiceDefinition.csdef và ServiceConfiguration.cscfg

Trang 24

Làm việc với dự án Windows Azure trong Visual Studio

Khi đã tạo một dự án cloud service, bạn có thể làm việc với các role, làm việc vớicác dịch vụ lưu trữ, và làm việc trong debug và triển khai của service

Làm việc với Cloud Service Roles

Bạn có thể liên kết các một Web role hay Worker role đã tồn tại trong solution vàomột cloud service hoặc tạo mới một Web role hay Worker role Để thêm mới,nhấn chuộtphải vào thư mục con Role  chọn Add

Hình 6 Thêm một Web role hay một Worker role

Làm việc với Storage Services

Windows Azure development fabric bao gồm một môi trường lưu trữ cục bộtương tự như dịch vụ lưu trữ đám mây Nó có các service blob, queue, table tương tự nhưtrên đám mây Những service này phụ thuộc vào cơ sở dữ liệu SQL Server 2005 hay

2008 Vì thế, bạn cần phải cài đặt SQL Server 2005 hay 2008 trên máy của bạn khi làmviệc với các dịch vụ lưu trữ trên môi trường phát triển

Để chạy development storage:

 Chọn Start  All Programs  Windows Azure SDK  DevelopmentStorage

Trang 25

Hình 7 Development Storage

 Khi debug một dự án cloud service bằng Visual Studio, nó sẽ khởi độngDevelopment Storage Nhấp phải chuột vào icon Windows Azure và chọnShow Development Storage UI

Và đây là màn hình development storage

Trang 26

Triển khai dịch vụ

Để triển khai dịch vụ đám mây Windows Azure trên đám mây, bạn phải đóng gói

nó thành tập tin * cspkg Nó chứa tất cả các thành phần, thư viện, và upload gói này lên

Windows Azure developer portal Để đóng gói một service, nhấp phải chuột vào dự áncloud service, chọn Publish

Khi chọn Publish, Visual Studio NET tạo ra 2 tập tin [Tên service].cspkg vàServiceConfiguration.cscfg Nó cũng sẽ mở trình duyệt của bạn and và đưa bạn đến mànhình đăng nhập LiveID để đăng nhập vào Windows Azure developer portal Tập tin [TênService].cspkg là gói dịch vụ chứa tất cả các thành phần được yêu cầu bởi WindowsAzure để chạy service trên đám mây Tập tin cspkg là một tập tin nén, bạn có thể đổi tên

nó thành zip để có thể giải nén nội dung bên trong Tập tin ServiceConfiguration.cscfg làtập tin cấu hình cho thể hiện của dịch vụ Nó là bản copy của tập tinServiceConfiguration.cscfg từ dự án cloud service

Ngày đăng: 24/01/2013, 09:31

HÌNH ẢNH LIÊN QUAN

Hình 1-8 .Trang chủ dịch vụ web Amazon (http://aws.amazon.com/) - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 1 8 .Trang chủ dịch vụ web Amazon (http://aws.amazon.com/) (Trang 3)
Hình 1-10 : Trang chủ Amazon EC2 - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 1 10 : Trang chủ Amazon EC2 (Trang 4)
Hình 1-12 . Trang chủ Amazon SimpleDB - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 1 12 . Trang chủ Amazon SimpleDB (Trang 5)
Hình 1-18 Trang chủ Amazon SQS - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 1 18 Trang chủ Amazon SQS (Trang 8)
Hình 1-22a . Trang chủ Google Apps cho doanh nghiệp - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 1 22a . Trang chủ Google Apps cho doanh nghiệp (Trang 9)
Hình 1-22b. Trang chủ Google Apps cho giáo dục. - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 1 22b. Trang chủ Google Apps cho giáo dục (Trang 10)
Hình 1-26. Trang chủ GoGrid.com - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 1 26. Trang chủ GoGrid.com (Trang 13)
Hình 1-27. Ví dụ 3Tera AppLogic - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 1 27. Ví dụ 3Tera AppLogic (Trang 14)
Hình 1. Ví dụ một Cloud Service - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 1. Ví dụ một Cloud Service (Trang 18)
Hình 2. Role settings - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 2. Role settings (Trang 19)
Hình 3. Thẻ Endpoint cho Web role - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 3. Thẻ Endpoint cho Web role (Trang 21)
Hình 5. Thẻ Local Storage - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 5. Thẻ Local Storage (Trang 23)
Hình 8. Giao diện Development Fabric - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 8. Giao diện Development Fabric (Trang 34)
Hình 9. Attach Debugger - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 9. Attach Debugger (Trang 35)
Hình 10. Development Storage - Tìm hiểu một vài nhà cung cấp dịch vụ đám mây
Hình 10. Development Storage (Trang 36)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w