Azure

Sử dụng máy tính trong đám mây có thể làm cho rất nhiều ý nghĩa. Thay vì mua và bảo trì máy móc của riêng bạn, tại sao không khai thác các mẫu Anh của Internet có thể truy cập vào máy chủ cung cấp ngày hôm nay? Đối với một số ứng dụng, mã và dữ liệu của họ cả hai có thể sống trong mây, nơi mà người khác quản lý và duy trì các hệ thống mà họ sử dụng. Ngoài ra, ứng dụng chạy bên trong một tổ chức, trên cơ sở ứng dụng có thể lưu trữ dữ liệu trong đám mây hoặc dựa vào các dịch vụ cơ sở hạ tầng khác mây. Ứng dụng chạy trên máy tính để bàn và các thiết bị di động có thể sử dụng dịch vụ trong các đám mây để đồng bộ hóa thông tin trên nhiều hệ thống, hoặc theo những cách khác. Tuy nhiên nó được thực hiện, khai thác của đám mây khả năng có thể cải thiện thế giới của chúng tôi.

pdf23 trang | Chia sẻ: tlsuongmuoi | Lượt xem: 2396 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Azure, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ặc cả hai, một số loại nền ứng dụng được yêu cầu. Được xem rộng rãi, một nền tảng ứng dụng có thể được dùng như bất cứ điều gì mà cung cấp cho nhà phát triển có thể truy cập các dịch vụ cho việc tạo các ứng dụng. Trong các địa phương, trên thế giới Windows mặt bằng, ví dụ, điều này bao gồm các công nghệ như NET Framework., SQL Server, và nhiều hơn nữa. Để cho phép các ứng dụng khai thác mây, mây nền tảng ứng dụng cũng phải tồn tại. Và bởi vì có một số cách cho các ứng dụng sử dụng dịch vụ đám mây, các loại khác nhau của các nền tảng đám mây là hữu ích trong các tình huống khác nhau. Nền tảng của Microsoft Windows Azure (ban đầu được biết đến như Azure Services Platform) là một nhóm các công nghệ đám mây, từng cung cấp một tập hợp cụ thể của dịch vụ cho các nhà phát triển ứng dụng. Như Hình 1 cho thấy, nền tảng Windows Azure có thể được sử dụng cả hai bởi các ứng dụng đang chạy trong đám mây và bởi các ứng dụng chạy trên hệ thống của địa phương. Hình 1: Windows Azure nền tảng hỗ trợ các ứng dụng, dữ liệu, và cơ sở hạ tầng trong đám mây. - Windows Azure: Cung cấp một môi trường dựa trên Windows để chạy các ứng dụng và lưu trữ dữ liệu trên các máy chủ trong Microsoft trung tâm dữ liệu. 4 - SQL Azure: Cung cấp các dịch vụ dữ liệu trong đám mây dựa trên SQL Server. - NET Dịch vụ:. Cung cấp dịch vụ phân phối cơ sở hạ tầng mây trên và các ứng dụng của địa phương. Mỗi thành phần của nền tảng Windows Azure có vai trò riêng của mình để chơi. Tổng quan này mô tả cả ba thành viên của mình, trước tiên ở mức cao, sau đó chi tiết hơn một chút. Trong khi không ai trong số đó là chưa cuối cùng chi tiết và nhiều hơn nữa có thể thay đổi trước khi phát hành đầu tiên của họ-nó không phải quá sớm để bắt đầu sự hiểu biết này đặt nền tảng mới của công nghệ. WINDOWS AZURE Ở mức cao, Windows Azure là đơn giản để hiểu: Đó là một nền tảng cho các ứng dụng chạy Windows và lưu trữ dữ liệu của họ trong đám mây. Hình 2 cho thấy thành phần chính của nó. Hình 2: Windows Azure cung cấp Windows dựa trên tính toán và các dịch vụ lưu trữ cho các ứng dụng đám mây. Theo con số cho thấy, Windows Azure chạy trên một số lượng lớn máy móc, tất cả đều nằm trong Microsoft trung tâm dữ liệu và truy cập qua Internet. Một Windows Azure vải thường Knits này plethora của sức mạnh xử lý vào một toàn bộ thống nhất. Windows Azure tính toán và các dịch vụ lưu trữ được xây dựng trên vải này. Windows Azure tính toán các dịch vụ dựa, tất nhiên, trên Windows. Đối với sự sẵn có ban đầu của dịch vụ này, một cộng đồng Công nghệ Preview (CTP) được công bố vào mùa thu năm 2008, Microsoft Windows Azure cho phép chạy các ứng dụng chỉ được xây dựng trên NET Framework.. Hôm nay, tuy nhiên, cũng hỗ trợ Windows Azure unmanaged code, cho phép các nhà phát triển chạy các ứng dụng không được xây dựng trên NET Framework.. Trong cả hai trường hợp, những ứng dụng được viết bằng ngôn ngữ bình thường trong Windows-C #, Visual Basic, C + +, và những người khác, bằng cách sử dụng Visual Studio 2008 hoặc công cụ khác phát triển. Các nhà phát triển có thể tạo Các ứng dụng web bằng cách sử dụng các công nghệ như ASP.NET và Windows Communication Foundation (WCF), ứng dụng chạy như là quá trình nền độc lập, hoặc các ứng dụng kết hợp cả hai. Cả Windows Azure ứng dụng và trên cơ sở ứng dụng có thể truy cập các dịch vụ lưu trữ Windows Azure, và cả hai làm theo cùng một cách: sử dụng một phương pháp tiếp cận yên tĩnh. Việc lưu trữ dữ liệu nằm bên dưới không phải là Microsoft SQL Server, tuy nhiên. Trong thực tế, Windows Azure hệ thống lưu trữ không phải là quan hệ, và ngôn ngữ của nó không phải là truy vấn SQL. Bởi vì nó chủ yếu được thiết kế để hỗ trợ các ứng dụng được xây dựng trên Windows Azure, nó cung cấp đơn giản, các loại khác có thể mở rộng dung lượng lưu trữ. Theo đó, nó cho phép lưu trữ các đối tượng nhị phân lớn (blobs), cung cấp hàng đợi để liên lạc giữa các thành phần của ứng dụng Windows Azure, và thậm chí cung cấp một hình thức của các bảng với một ngôn ngữ truy vấn đơn giản. (Đối với các ứng dụng Windows Azure mà cần phải quan hệ truyền thống lưu trữ, tuy nhiên, cung cấp cho nền tảng Windows Azure Azure Cơ sở dữ liệu SQL, được mô tả sau.) Chạy các ứng dụng và lưu trữ dữ liệu của họ trong đám mây có thể có lợi ích rõ ràng. Thay vì mua, lắp đặt và vận hành các hệ thống riêng của mình, ví dụ, một tổ chức có thể dựa vào một đám mây nhà cung cấp để làm điều này cho họ. Ngoài ra, khách hàng chỉ cần trả tiền cho các máy tính và lưu trữ chúng sử dụng, hơn là việc duy trì một lượng lớn các máy chủ chỉ cho tải cao điểm. Và nếu họ viết một cách chính xác, các ứng dụng có thể dễ dàng quy mô, lợi dụng các trung tâm dữ liệu khổng lồ mà các nhà cung cấp mây cung cấp. Chưa đạt được những lợi ích này đòi hỏi phải quản lý hiệu quả. Trong Windows Azure, mỗi ứng dụng có một tập tin cấu hình, như trong hình 2. Bằng cách thay đổi thông tin trong tập tin này bằng tay hay lập trình, chủ sở hữu của một ứng dụng có thể kiểm soát các khía cạnh khác nhau của hành vi của nó, như thiết lập số lượng các trường hợp mà Windows Azure nên chạy. Windows Azure vải màn hình ứng dụng để duy trì này mong muốn nhà nước. Để cho khách hàng của mình tạo ra, cấu hình, và theo dõi các ứng dụng, Windows Azure cung cấp một trình duyệt có thể truy cập cổng. Một khách hàng cung cấp một Windows Live ID, sau đó chọn hay không để tạo một tài khoản lưu trữ cho các ứng dụng đang chạy, một tài khoản lưu trữ để lưu trữ dữ liệu, hoặc cả hai. Là một ứng dụng miễn phí để tính phí khách hàng của mình trong bất kỳ cách nào nó thích: đăng ký, mỗi lần lệ phí sử dụng, hoặc bất cứ điều gì khác. Windows Azure là một nền tảng chung mà có thể được sử dụng trong các kịch bản khác nhau. Dưới đây là một vài ví dụ, tất cả đều dựa trên những gì phiên bản CTP cho phép: - Một khởi tạo một trang web mới của Facebook tiếp theo, nói-có thể xây dựng các ứng dụng của nó trên Windows Azure. Bởi vì nền tảng này hỗ trợ cả các dịch vụ web phải đối mặt với nền và các quy trình, ứng dụng có thể cung cấp một giao diện người dùng tương tác cũng như thực hiện công việc cho người sử dụng không đồng bộ. Thay vì dành thời gian và tiền bạc đáng lo ngại về cơ sở hạ tầng, bắt đầu lên thay vì chỉ duy nhất có thể tập trung vào việc tạo mã cung cấp giá trị cho người dùng và các nhà đầu tư của mình. Công ty cũng có thể bắt đầu nhỏ, incurring chi phí thấp trong khi ứng dụng của nó chỉ có một vài người sử dụng. Nếu đơn xin của họ bắt ngày và tăng việc sử dụng, Windows Azure có thể mở rộng các ứng dụng khi cần thiết. - An ISV tạo ra một phần mềm như một dịch vụ (SaaS) phiên bản của một ngày hiện tại cơ sở ứng dụng Windows có thể chọn để xây dựng nó trên Windows Azure. Bởi vì Windows Azure chủ yếu là cung cấp một môi trường Windows tiêu chuẩn, di chuyển logic kinh doanh của ứng dụng nền tảng đám mây này sẽ không thường gây nhiều vấn đề. Và một lần nữa, xây dựng trên một nền tảng hiện có cho phép các ISV tập trung vào logic kinh doanh của mình, điều đó làm cho họ tiền chứ không phải là thời gian chi tiêu vào cơ sở hạ tầng. 6 - Một doanh nghiệp tạo ra một ứng dụng cho các khách hàng có thể chọn để xây dựng nó trên Windows Azure. Bởi vì Windows Azure hỗ trợ NET, nhà phát triển những kỹ năng phải. Không khó để tìm, hoặc chúng là tốn kém. Chạy các ứng dụng trong trung tâm dữ liệu của Microsoft giải phóng các doanh nghiệp từ trách nhiệm và kinh phí quản lý máy chủ của riêng mình, biến chi phí vốn vào chi phí điều hành. Và đặc biệt là nếu trong Đơn có đột biến trong việc sử dụng, có thể nó là một on-line hoa cửa hàng mà phải xử lý vội vàng Ngày của mẹ, cho phép Microsoft duy trì các cơ sở lớn được yêu cầu cho máy chủ này có thể làm cho tinh thần kinh tế. Chạy các ứng dụng trong đám mây là một trong những khía cạnh quan trọng nhất của điện toán đám mây. Với Windows Azure, Microsoft cung cấp một nền tảng để thực hiện điều này, cùng với một cách thức để lưu trữ dữ liệu của ứng dụng. Theo tính toán lãi suất trong đám mây tiếp tục phát triển, mong đợi để xem chi tiết các ứng dụng Windows này tạo ra cho thế giới mới. SQL AZURE Một trong những cách quan trọng nhất của việc sử dụng Internet có thể truy cập máy chủ là để xử lý dữ liệu. Mục tiêu của SQL Azure là địa chỉ khu vực này, cung cấp một tập các dịch vụ dựa trên đám mây để lưu trữ và làm việc với nhiều loại thông tin. Trong khi Microsoft cho biết SQL Azure cuối cùng sẽ bao gồm một loạt các dữ liệu theo định hướng khả năng, bao gồm báo cáo, phân tích dữ liệu, và những người khác, các thành phần Azure SQL đầu tiên xuất hiện là cơ sở dữ liệu SQL Azure và "Huron" Data Sync. Hình 3 minh họa này. Hình 3: SQL Azure cung cấp dữ liệu theo định hướng các cơ sở trong đám mây. Cơ sở dữ liệu SQL Azure (trước đây gọi là Dịch vụ dữ liệu SQL) cung cấp một hệ thống quản lý cơ sở dữ liệu (DBMS) trong đám mây. Công nghệ này cho phép trên mặt bằng và các ứng dụng đám mây lưu trữ các loại quan hệ và các dữ liệu trên máy chủ của Microsoft trong Microsoft trung tâm dữ liệu. Cũng như với các công nghệ đám mây khác, một tổ chức chỉ trả cho những gì nó sử dụng, tăng và giảm sử dụng (và chi phí) như thay đổi các nhu cầu của tổ chức. Sử dụng một cơ sở dữ liệu mây cũng cho phép chuyển đổi những gì sẽ là chi phí vốn, như đầu tư vào đĩa và phần mềm DBMS, vào chi phí điều hành. 7 Không giống như các dịch vụ lưu trữ Windows Azure, Azure Cơ sở dữ liệu SQL được xây dựng trên Microsoft SQL Server. Tuy nhiên, trong bản gốc phát hành CTP 2008 của mình, Cơ sở dữ liệu SQL Azure không phơi bày một cái nhìn truyền thống quan hệ của dữ liệu. Dựa trên thông tin phản hồi của khách hàng, Microsoft đã quyết định thay đổi này. Đi về phía trước, cơ sở dữ liệu SQL Azure sẽ hỗ trợ các dữ liệu quan hệ, SQL Server cung cấp một môi trường trong đám mây, hoàn chỉnh với các chỉ số, xem, lưu trữ các thủ tục, gây nên, và nhiều hơn nữa. Dữ liệu này có thể được truy cập bằng cách sử dụng ADO.NET và Windows truy cập các dữ liệu giao diện. Trong thực tế, ứng dụng mà ngày hôm nay truy cập SQL Server tại địa phương hầu như không thay đổi sẽ làm việc với dữ liệu trong cơ sở dữ liệu SQL Azure. Khách hàng cũng có thể sử dụng trên cơ sở các phần mềm như SQL Server Reporting Services để làm việc với đám mây này dựa trên thông tin. Trong khi các ứng dụng có thể sử dụng cơ sở dữ liệu SQL Azure nhiều như họ làm một DBMS địa phương, các yêu cầu quản lý đã giảm đáng kể. Thay vì lo lắng về cơ học, như giám sát việc sử dụng đĩa và phục vụ các tập tin log, một cơ sở dữ liệu SQL Azure khách hàng có thể tập trung vào những gì quan trọng là: các dữ liệu. Microsoft xử lý các chi tiết hoạt động. Và cũng giống như các thành phần khác của nền tảng Windows Azure, sử dụng cơ sở dữ liệu SQL Azure là đơn giản: Chỉ cần đi đến một cổng Web và cung cấp các thông tin cần thiết. SQL thứ hai Azure thành phần công bố cho đến nay là "Huron" Data Sync. Được xây dựng trên Sync Framework và Microsoft SQL Azure Cơ sở dữ liệu, công nghệ này đồng bộ hóa dữ liệu quan hệ trên cơ sở khác nhau trên DBMSs. Các chủ sở hữu dữ liệu đó có thể xác định những gì cần được đồng bộ, làm thế nào xung đột nên được xử lý, và nhiều hơn nữa. Ứng dụng có thể dựa vào SQL Azure trong những cách khác nhau. Dưới đây là một số ví dụ: Một Windows Azure ứng dụng có thể lưu trữ dữ liệu của nó trong cơ sở dữ liệu SQL Azure. Trong khi Windows Azure cung cấp lưu trữ riêng của mình, các bảng không phải là quan hệ giữa các tùy chọn nó cung cấp. Vì nhiều ứng dụng hiện có sử dụng lưu trữ và phát triển quan hệ nhiều người biết làm thế nào để làm việc với nó, một số lượng đáng kể các ứng dụng Windows Azure có khả năng dựa vào cơ sở dữ liệu SQL Azure để làm việc với dữ liệu trong cách này quen thuộc. Để cải thiện hiệu suất, khách hàng có thể chỉ định rằng một ứng dụng Windows Azure cụ thể phải chạy trong trung tâm dữ liệu giống nhau, trong đó cơ sở dữ liệu SQL Azure cửa hàng là ứng dụng của thông tin. Một ứng dụng trong một doanh nghiệp nhỏ hoặc một bộ phận của một tổ chức lớn, có thể dựa vào cơ sở dữ liệu SQL Azure. Thay vì lưu trữ dữ liệu của nó trong một cơ sở dữ liệu SQL Server hoặc Access chạy trên một máy tính dưới bàn làm việc của ai đó, ứng dụng thay vì có thể tận dụng được độ tin cậy và tính sẵn sàng của các lưu trữ mây. Giả sử một nhà sản xuất muốn làm cho thông tin sản phẩm sẵn có cho cả hai mạng lưới đại lý của mình và trực tiếp cho khách hàng. Đưa dữ liệu này trong SQL Azure Cơ sở dữ liệu sẽ cho phép nó để được truy cập bởi các ứng dụng đang chạy ở các đại lý và khách hàng phải đối mặt với một ứng dụng web do các nhà sản xuất riêng của mình. Một tổ chức với một cơ sở dữ liệu khách hàng rộng khắp vùng địa lý khác nhau có thể sử dụng "Huron" Data Sync để giữ các bản sao đồng bộ. Có lẽ khai từng nhu cầu riêng của mình bản sao của các dữ liệu cho hiệu suất hoặc để đảm bảo tính sẵn sàng hoặc vì một lý do khác. Tự động đồng bộ hóa có thể thực hiện phân phối này cần thiết một cách đáng kể ít đau. Cho dù đó là để hỗ trợ một ứng dụng Windows Azure, làm cho dữ liệu dễ tiếp cận hơn, giữ dữ liệu đồng bộ, hoặc lý do khác, các dịch vụ dữ liệu trong đám mây có thể được hấp dẫn. Theo công nghệ mới trở thành 8 theo ô SQL Azure, các tổ chức sẽ có tùy chọn để sử dụng các đám mây cho nhiều dữ liệu hơn và nhiều hơn nữa nhiệm vụ định hướng. NET DỊCH VỤ. Chạy các ứng dụng và lưu trữ dữ liệu trong đám mây là cả hai khía cạnh quan trọng của điện toán đám mây. Họ đang xa toàn bộ câu chuyện, tuy nhiên. Một lựa chọn khác là cung cấp các dịch vụ dựa trên mây cơ sở hạ tầng có thể được sử dụng bởi hoặc là trên cơ sở ứng dụng hoặc các ứng dụng đám mây. Điền khoảng cách này là mục tiêu. NET Services. Ban đầu được biết đến như là BizTalk Dịch vụ, chức năng cung cấp bởi NET Dịch vụ địa chỉ cơ sở hạ tầng thách thức phổ biến trong việc tạo ra các ứng dụng phân phối.. Hình 4 cho thấy các thành phần của nó. Hình 4:. NET cung cấp các dịch vụ dựa trên cơ sở hạ tầng mây có thể được sử dụng bởi cả đám mây và trên cơ sở ứng dụng. Các thành phần của. NET Dịch vụ này là: Access Control: Một cách tiếp cận ngày càng phổ biến để nhận dạng là có mỗi người dùng cung cấp một ứng dụng với một bộ mã thông báo một số có chứa các tuyên bố. Các ứng dụng sau đó có thể quyết định những người sử dụng này được cho phép để làm dựa trên đơn xin này. Làm điều này một cách hiệu quả các công ty trên toàn liên bang đòi hỏi danh tính, cho phép tạo ra tuyên bố trong một phạm vi nhận dạng được chấp nhận trong một. Nó cũng có thể yêu cầu tuyên bố chuyển đổi, sửa đổi tuyên bố khi họ được thông qua giữa các phạm vi tính. Các Access Control cung cấp các dịch vụ dựa trên một đám mây thực hiện cả hai. Dịch vụ xe buýt: Exposing dịch vụ của một ứng dụng trên Internet là khó hơn so với hầu hết mọi người nghĩ. Mục tiêu của dịch vụ xe buýt là để làm cho đơn giản bằng cách cho phép một ứng dụng dịch vụ Web phơi thiết bị đầu cuối, có thể được truy cập bởi các ứng dụng khác, cho dù trên mặt bằng hoặc trong mây. Mỗi điểm cuối là được giao tiếp xúc với một URI, mà khách hàng có thể sử dụng để xác định vị trí và truy cập các dịch vụ. Dịch vụ xe buýt cũng 9 xử lý các thách thức về đối phó với dịch địa chỉ mạng và vượt qua bức tường lửa mà không cần mở port mới cho các ứng dụng tiếp xúc. Đây là một số ví dụ về cách NET Dịch vụ. Có thể được sử dụng: ISV An cung cấp một ứng dụng được sử dụng bởi khách hàng trong nhiều tổ chức khác nhau có thể sử dụng dịch vụ Access Control để đơn giản hóa sự phát triển của ứng dụng và hoạt động. Ví dụ, NET Dịch vụ này. Thành phần có thể dịch các yêu cầu đa dạng được sử dụng trong các tổ chức khách hàng khác nhau, mỗi trong số đó có thể sử dụng một công nghệ nhận dạng khác nhau trong nội bộ, thành một tập quán đó của ISV ứng dụng có thể sử dụng. Làm điều này cũng cho phép giảm tải các cơ học của liên bang nhận dạng vào đám mây trên cơ sở dịch vụ truy cập cửa, giải phóng các ISV chạy riêng của mình trên phần mềm cơ sở liên bang. Giả sử một doanh nghiệp muốn để cho phần mềm lúc truy cập các đối tác kinh doanh của một trong các ứng dụng của nó. Nó có thể phơi bày các chức năng này của ứng dụng thông qua SOAP hoặc Restful dịch vụ Web, sau đó đăng ký thiết bị đầu cuối của họ với dịch vụ xe buýt. Các đối tác kinh doanh của nó thì có thể sử dụng dịch vụ xe buýt để tìm các thiết bị đầu cuối và truy cập các dịch vụ. Từ khi làm điều này không yêu cầu mở cổng mới trong tường lửa của tổ chức, nó làm giảm nguy cơ bị phơi bày các ứng dụng. Việc tổ chức cũng có thể sử dụng Access Control dịch vụ, được thiết kế để làm việc với dịch vụ xe buýt, để hợp lý hoá thông tin nhận dạng được gửi đến ứng dụng bởi các đối tác. Như với Windows Azure, một trình duyệt cổng có thể truy cập được cung cấp cho khách hàng đăng ký. NET sử dụng một dịch vụ Windows Live ID. Với mục tiêu của Microsoft. NET Dịch vụ rất rõ ràng: cung cấp các đám mây hữu ích dựa trên cơ sở hạ tầng cho các ứng dụng phân phối. Một TECHNOLOGIES ĐẨY XEM CÁC Có một sự hiểu biết rộng của nền tảng Windows Azure là một bước quan trọng đầu tiên. Bắt một sự hiểu biết sâu sắc hơn về công nghệ môi cũng rất hữu dụng, tuy nhiên. Phần này có một hơi sâu hơn xem mỗi thành viên trong gia đình. Windows Azure Windows Azure không chính hai điều: Nó chạy các ứng dụng và lưu trữ dữ liệu của họ. Theo đó, phần này được chia thành hai phần, một cho mỗi của các khu vực này. Làm thế nào hai điều này được quản lý cũng rất quan trọng, và như vậy mô tả này trông lúc này là một phần của câu chuyện là tốt. Các ứng dụng đang chạy Trên Windows Azure, một ứng dụng thường có nhiều trường hợp, mỗi lần chạy một bản sao của tất cả hay một phần của mã của ứng dụng. Mỗi trường hợp chạy trong máy ảo riêng (VM). Những máy ảo chạy 64-bit Windows Server 2008, và họ đang được cung cấp bởi một ảo đó là thiết kế đặc biệt để sử dụng trong đám mây. Chưa một nhà phát triển không cung cấp hình ảnh VM riêng của mình cho Windows Azure để chạy, ông cũng không cần phải lo lắng về việc duy trì một bản sao của hệ điều hành Windows. Thay vào đó, phiên bản CTP cho phép một nhà phát triển tạo ứng dụng web bằng cách sử dụng hợp vai trò và / hoặc trường hợp vai trò của công nhân. Hình 5 cho thấy cách nhìn này. Hình 5: Trong phiên bản CTP, Windows Azure ứng dụng có thể bao gồm các trường hợp vai trò Web và trường hợp vai trò công nhân, mỗi dụ đang chạy trong máy ảo riêng của nó. Như tên gọi của nó cho thấy, mỗi vai trò dụ web chấp nhận đến HTTP (hoặc HTTPS) yêu cầu thông qua Internet Information Services (IIS) 7. Một vai trò web có thể được thực hiện bằng cách sử dụng ASP.NET, WCF, hoặc công nghệ khác làm việc với IIS. Như hình 5 cho thấy, Windows Azure cung cấp được xây dựng trong cân bằng tải để lây lan các yêu cầu trên web trường hợp vai trò là một phần của ứng dụng tương tự. Một ví dụ vai trò của công nhân, bằng cách tương phản, không thể chấp nhận yêu cầu trực tiếp từ thế giới bên ngoài, nó không được phép có bất kỳ kết nối mạng đến, và IIS không hoạt động trong máy ảo của nó. Thay vào đó, nó thường được đầu vào của mình thông qua một hàng đợi trong lưu trữ Windows Azure. Các bài viết trong hàng đợi này có thể đến từ một trường hợp vai trò web, một trên cơ sở ứng dụng, hay cái gì khác. Bất cứ nơi nào nó xuất phát từ đầu vào, một trường hợp vai trò của công nhân có thể gửi ra hàng đợi khác hoặc với thế giới bên ngoài, kết nối mạng gửi đi được. Và không giống như một trường hợp vai trò web, được tạo ra để xử lý các yêu cầu HTTP gửi đến, một trường hợp vai trò của công nhân là một việc làm theo đợt. Befitting này tổng quát, một vai trò công nhân có thể được thực hiện bằng cách sử dụng bất kỳ công nghệ Windows với một phương pháp () chính. Cho dù nó chạy một trường hợp vai trò Web hoặc một trường hợp vai trò của công nhân, mỗi máy ảo cũng có chứa một Windows Azure đại lý cho phép các ứng dụng để tương tác với vải Windows Azure, như hình 5 cho thấy. Các đại lý exposes một Azure Windows định nghĩa API cho phép các dụ viết thư cho một Azure Windows-duy trì đăng nhập, gửi thông báo cho chủ sở hữu của nó qua vải Windows Azure, và nhiều hơn nữa. Trong khi điều này có thể thay đổi theo thời gian, phát hành của Windows Azure CTP ban đầu duy trì một one-to-một trong những mối quan hệ giữa một máy ảo và một bộ xử lý lõi vật lý. Do đó, hiệu suất của mỗi ứng dụng có thể được bảo đảm cho mỗi trường hợp vai trò Web và dụ công nhân có vai trò nòng cốt của riêng bộ vi xử lý chuyên dụng của nó. Để tăng hiệu suất của một ứng dụng, chủ nhân của nó có thể tăng số lượng các trường hợp quy định tại chạy tập tin cấu hình của ứng dụng. Windows Azure vải sau đó sẽ quay lên mới 11 VM, gán cho chúng đến lõi, và bắt đầu chạy trường hợp nhiều ứng dụng này. Vải này cũng phát hiện khi một vai trò Web hoặc dụ vai trò công nhân đã không thành công, sau đó bắt đầu một hình mới. Thông báo này ngụ ý gì: Để có thể mở rộng, Windows Azure web trường hợp vai trò phải được quốc tịch. Bất kỳ khách hàng cụ thể nhà nước phải được ghi vào lưu trữ Windows Azure, được gửi đến cơ sở dữ liệu SQL Azure, hoặc thông qua lại cho khách hàng trong một cookie. Statelessness web vai trò cũng là tất cả, nhưng được uỷ thác bởi Windows Azure's built-in cân bằng tải. Bởi vì nó không cho phép tạo ra một ái lực với vai trò là một ví dụ cụ thể web, không có cách nào để đảm bảo rằng các yêu cầu nhiều từ cùng một người dùng sẽ được gửi đến các trường hợp tương tự. Cả hai vai trò Web và vai trò của công nhân được thực hiện bằng cách sử dụng Windows chuẩn công nghệ. Chưa di chuyển các ứng dụng hiện tại cho Windows Azure có thể yêu cầu một số thay đổi. Đối với một điều, người truy cập lưu trữ Windows Azure sử dụng ADO.NET Data Services, một công nghệ tương đối mới mà chưa được phổ biến trong các ứng dụng trên mặt bằng. (A Windows Azure ứng dụng cũng có thể sử dụng ADO.NET tiêu chuẩn để truy cập vào kho quan hệ cung cấp bởi cơ sở dữ liệu SQL Azure, tuy nhiên, điều này làm cho nó dễ dàng hơn để di chuyển một ứng dụng nền tảng này hiện có để mây.) Ngoài ra, công nhân hợp vai trò thường dựa vào hàng đợi trong Windows Azure lưu trữ cho đầu vào của họ, một trừu tượng đó là không có ở trên cơ sở các môi trường Windows. Trong chính, tuy nhiên, thế giới thấy một ứng dụng chạy trên Windows Azure là giống như những gì nó thấy trên bất kỳ các hệ thống Windows Server 2008. Đối với các nhà phát triển, xây dựng một Windows Azure ứng dụng trong phiên bản CTP trông giống như xây dựng một ứng dụng Windows truyền thống. Microsoft cung cấp Visual Studio 2008 dự án mẫu cho việc tạo Windows Azure web vai trò, vai trò của công nhân, và kết hợp của hai. Các nhà phát triển có thể tự do sử dụng bất kỳ ngôn ngữ lập trình Windows (mặc dù đó là công bằng để nói rằng tập trung ban đầu của Microsoft cho Windows Azure đã được về C #). Ngoài ra, Windows Azure kit phát triển phần mềm bao gồm một phiên bản của môi trường Windows Azure chạy trên máy tính của nhà phát triển. Được biết đến như là vải Windows Azure phát triển, nó bao gồm Windows Azure lưu trữ, một đại diện Windows Azure, và mọi thứ khác nhìn thấy một ứng dụng đang chạy trong đám mây. Một nhà phát triển có thể tạo và gỡ lỗi ứng dụng của mình bằng cách sử dụng này simulacrum địa phương, sau đó triển khai các ứng dụng cho Windows Azure trong đám mây khi nó sẵn sàng. Tuy nhiên, một số công việc thực sự là khác nhau trong đám mây. Nó không thể đính kèm một debugger vào một đám mây trên cơ sở ứng dụng, ví dụ, và để gỡ lỗi các ứng dụng đám mây dựa chủ yếu vào một văn bản cho Windows Azure duy trì đăng nhập thông qua các đại lý Windows Azure. Windows Azure cũng cung cấp các dịch vụ khác cho các nhà phát triển. Ví dụ, một ứng dụng Windows Azure có thể gửi một chuỗi cảnh báo thông qua các đại lý Windows Azure, và Windows Azure sẽ mong rằng cảnh báo qua email, nhắn tin, hoặc một số cơ chế khác để nhận định của mình. Nếu muốn, Windows Azure vải tự nó có thể phát hiện một sự thất bại đơn và gửi một cảnh báo. Windows Azure nền tảng cũng cung cấp thông tin chi tiết về tiêu thụ tài nguyên của ứng dụng, bao gồm cả thời gian xử lý, vào và ra băng thông, và lưu trữ. Truy cập vào dữ liệu Làm việc với các ứng dụng dữ liệu theo nhiều cách khác nhau. Đôi khi, tất cả đó là yêu cầu được blobs đơn giản, trong khi tình huống khác gọi một cách chi tiết cấu trúc để lưu trữ thông tin. Và trong một số trường hợp, tất cả đó là thực sự cần thiết là một cách để trao đổi dữ liệu giữa các phần khác nhau của một ứng dụng. Windows Azure lưu trữ địa chỉ cả ba của các yêu cầu này, như Hình 6 cho thấy. Hình 6: Windows Azure cho phép lưu trữ dữ liệu trong blobs, bảng biểu, và hàng đợi, tất cả các truy cập vào một phong cách yên tĩnh qua HTTP hoặc HTTPS. Cách đơn giản nhất để lưu trữ dữ liệu trong lưu trữ Windows Azure là sử dụng blobs. Như Hình 6 cho thấy, có một cấu trúc đơn giản: Một tài khoản lưu trữ có thể có một hoặc nhiều container, mỗi trong số đó nắm giữ một hoặc nhiều blobs. Blobs có thể được lớn lên tới 50 gigabyte mỗi-và để thực hiện chuyển giao blobs lớn hiệu quả hơn, một số có thể được chia thành các khối. Nếu không xảy ra, retransmission có thể tiếp tục với khối gần đây nhất thay vì gửi blob toàn bộ một lần nữa. Blobs cũng có thể có liên quan đến siêu dữ liệu, như thông tin về nơi mà một bức ảnh JPEG hoặc những người đã được đưa nhà soạn nhạc được cho một file MP3. Blobs chỉ là đúng cho một số loại dữ liệu, nhưng chúng cũng có cấu trúc cho nhiều tình huống. Để cho phép các ứng dụng để làm việc với dữ liệu trong một tốt đẹp hơn-grained cách, Windows Azure lưu trữ cung cấp bảng. Không được lừa bởi tên: Đây không phải là bảng quan hệ. Trong thực tế, mặc dù chúng được gọi là "bảng", dữ liệu họ có thực sự được lưu giữ trong một tập hợp các thực thể bằng tài sản. Một bảng không có định nghĩa giản đồ; thay vào đó, tài sản có thể có các loại khác nhau, như int, string, bơi, hoặc DateTime. Và thay vì sử dụng SQL, một ứng dụng có thể truy cập của một bảng dữ liệu sử dụng ADO.NET Data Services hoặc LINQ. Một bảng đơn có thể khá lớn, với tỷ thực thể đang nắm giữ terabyte dữ liệu, lưu trữ và Windows Azure có thể phân vùng nó trên nhiều máy chủ nếu cần thiết để cải thiện hiệu suất. Blobs và bàn đều tập trung vào việc lưu trữ dữ liệu. Các tùy chọn thứ ba trong lưu trữ Windows Azure, hàng đợi, có một mục đích khá khác nhau. Vai trò chính của hàng đợi là cung cấp một cách để trường hợp vai trò Web để giao tiếp với các trường hợp vai trò của công nhân. Ví dụ, người dùng có thể gửi một yêu cầu để thực hiện một số tác vụ tính toán, chuyên sâu thông qua một trang web thực hiện bởi một vai trò Windows Azure Web. Vai trò dụ web đó nhận được yêu cầu này có thể viết một tin nhắn vào một hàng đợi mô tả công việc phải làm. Một vai trò công nhân dụ đó là xếp hàng chờ đợi ngày này sau đó có thể đọc tin nhắn và thực hiện các công việc chỉ định. Bất cứ kết quả có thể được trả lại qua hàng đợi khác hoặc xử lý bằng cách khác. 13 Bất kể như thế nào nó được lưu trữ trong blobs, bàn, hoặc hàng đợi-tổ chức tại tất cả các dữ liệu lưu trữ Windows Azure là nhân rộng ba lần. Điều này cho phép nhân rộng khả năng chịu lỗi, vì mất đi một bản sao không gây tử vong. Sự ổn định của hệ thống bảo lãnh, tuy nhiên, do đó, một ứng dụng đọc dữ liệu nó cũng đã có văn bản sẽ có được những gì nó mong muốn. Windows Azure lưu trữ có thể được truy cập, hoặc bởi một ứng dụng Windows Azure, hoặc bằng một ứng dụng đang chạy ở một nơi khác. Trong cả hai trường hợp, cả ba Windows Azure phong cách lưu trữ sử dụng các công ước của Văn để xác định và phơi bày dữ liệu. Tất cả mọi thứ được đặt tên là URIs bằng cách sử dụng và truy cập với tiêu chuẩn hoạt động HTTP. Một. NET khách hàng cũng có thể sử dụng ADO.NET Data Services và LINQ, nhưng truy cập để lưu trữ Windows Azure từ, nói rằng, một ứng dụng Java có thể chỉ cần sử dụng REST tiêu chuẩn. Ví dụ, một blob có thể được đọc với một HTTP GET chống lại một URI được định dạng như thế này: http:// blob.core.windows.net /. / Là một định danh được phân công khi một tài khoản lưu trữ mới được tạo ra, và nó xác nhận blobs, bảng biểu, và hàng đợi được tạo ra bằng cách sử dụng tài khoản này. Và chỉ là tên của các container và blob rằng yêu cầu này được truy cập. Tương tự, một truy vấn với một bảng cụ thể được thể hiện như là một HTTP GET chống lại một URI được định dạng như thế này: http:// . table.core.windows.net / ? $ lọc = Ở đây, xác định trong bảng được truy vấn, trong khi chứa các truy vấn được thực hiện để chống lại bảng này. Ngay cả hàng đợi có thể được truy cập bằng cả hai Azure ứng dụng Windows và các ứng dụng bên ngoài bằng việc phát hành một HTTP GET chống lại một URI được định dạng như thế này: http:// . queue.core.windows.net / Windows Azure phí một cách độc lập nền tảng cho tính toán và tài nguyên lưu trữ. Điều này có nghĩa là trên cơ sở ứng dụng có thể sử dụng chỉ cần Windows Azure lưu trữ, truy cập vào dữ liệu của nó trong cách yên tĩnh được mô tả. Và bởi vì rằng dữ liệu có thể được truy cập trực tiếp từ không ứng dụng Windows Azure, nó vẫn có sẵn ngay cả khi Windows Azure ứng dụng sử dụng nó không chạy. Mục tiêu của các nền tảng ứng dụng, cho dù trên mặt bằng hoặc trong đám mây, là hỗ trợ các ứng dụng và dữ liệu. Windows Azure cung cấp một trang chủ cho cả hai của những việc này. Trước mắt, sẽ thấy một phần của những gì đã có thể được trên cơ sở ứng dụng Windows thay vì chạy trên nền tảng đám mây mới. SQL Azure SQL Azure là một tên ô dù cho một nhóm các đám mây trên nền công nghệ để làm việc với các kiểu quan hệ và các dữ liệu. Các thành viên đầu tiên của gia đình này xuất hiện là cơ sở dữ liệu SQL Azure và "Huron" Data Sync. Phần này sẽ xem xét kỹ hơn ở cả hai. Cơ sở dữ liệu SQL Azure Một DBMS trong đám mây là hấp dẫn đối với nhiều lý do. Đối với một số tổ chức, cho phép một nhà cung cấp dịch vụ chuyên biệt đảm bảo độ tin cậy, xử lý back-up, và thực hiện chức năng quản lý khác làm cho tinh thần. Dữ liệu 14 trong đám mây cũng có thể được truy cập bởi các ứng dụng chạy bất cứ nơi nào, thậm chí trên các thiết bị di động. Và cho các nền kinh tế của quy mô mà một nhà cung cấp dịch vụ thích, sử dụng một cơ sở dữ liệu mây cũng có thể làm nó rẻ hơn so với chính mình. Mục tiêu của Cơ sở dữ liệu SQL Azure là cung cấp cho tất cả các quyền lợi này. Hình 7 cho thấy một cái nhìn đơn giản của công nghệ này. Hình 7: Các ứng dụng truy cập dữ liệu trong SQL Azure Cơ sở dữ liệu thông qua giao thức TDS của Microsoft, cho phép họ sử dụng dữ liệu ADO.NET và phổ biến các giao diện khác. Một ứng dụng bằng cách sử dụng cơ sở dữ liệu SQL Azure có thể chạy trên Windows Azure, tại trung tâm dữ liệu của doanh nghiệp, trên một thiết bị di động, hoặc ở một nơi khác. Bất cứ nơi nào nó chạy, ứng dụng truy cập dữ liệu qua giao thức gọi là Tabular Data Stream (TDS). Đây là cùng một giao thức được sử dụng để truy cập vào một cơ sở dữ liệu SQL Server địa phương, và do đó, một cơ sở dữ liệu SQL Azure ứng dụng có thể sử dụng bất kỳ khách hàng hiện tại thư viện SQL Server. Điều quan trọng nhất trong số này có lẽ là ADO.NET, nhưng ODBC và những người khác cũng có thể được sử dụng. Đối với hầu hết các phần, một ứng dụng bằng cách sử dụng cơ sở dữ liệu SQL Azure thấy một môi trường SQL Server quen thuộc. Một số điều được bỏ qua, tuy nhiên, như thường SQL Language Runtime (CLR) và hỗ trợ cho dữ liệu không gian. Ngoài ra, bởi vì chính quyền được xử lý bởi Microsoft, các dịch vụ không vạch trần chức năng vật lý hành chính. (Một khách hàng không có thể tắt hệ thống, ví dụ) Và. Như bạn mong muốn trong một môi trường chia sẻ, một truy vấn có thể chạy một thời gian chỉ có hạn chế không có yêu cầu duy nhất có thể mất nhiều hơn trước một xác định số tiền của tài nguyên. Tuy vậy, trong khi môi trường sẽ tiêu chuẩn, các dịch vụ ứng dụng được là mạnh hơn so với những gì một trường hợp duy nhất của SQL Server cung cấp. Như trong lưu trữ Windows Azure, tất cả các dữ liệu được lưu trữ trong cơ sở dữ liệu SQL Azure là nhân rộng ba lần. Cũng như Windows Azure lưu trữ, cung cấp dịch vụ mạnh mẽ 15 thống nhất: Khi viết thư trả về, tất cả các bản sao đã được viết. Mục đích là để cung cấp đáng tin cậy lưu trữ dữ liệu ngay cả khi đối mặt với hệ thống mạng và thất bại. Kích thước tối đa của một cơ sở dữ liệu duy nhất trong cơ sở dữ liệu SQL Azure là 10 gigabyte. Một ứng dụng có dữ liệu là trong giới hạn này có thể sử dụng chỉ là một cơ sở dữ liệu, trong khi một ứng dụng với nhiều dữ liệu hơn sẽ cần phải tạo ra nhiều cơ sở dữ liệu. Hình 8 minh hoạ ý tưởng này. Hình 8: Một ứng dụng có thể sử dụng một cơ sở dữ liệu duy nhất hoặc nhiều cơ sở dữ liệu. Với một cơ sở dữ liệu duy nhất, một ứng dụng thấy một tập hợp dữ liệu, và vì vậy các truy vấn SQL có thể được sử dụng như bình thường trên tất cả các dữ liệu này. Với cơ sở dữ liệu nhiều, tuy nhiên, việc áp dụng phải phân chia dữ liệu của nó trong số đó. Thông tin về khách hàng có tên bắt đầu bằng "A" có thể là tại một cơ sở dữ liệu, ví dụ, khách hàng có tên bắt đầu với "B" ở khác, vv. Trong khi mỗi cơ sở dữ liệu cho thấy nhiều giao diện bình thường quan hệ, ứng dụng không còn có thể phát hành một đĩa đơn truy vấn SQL mà truy cập tất cả các dữ liệu trong tất cả các cơ sở dữ liệu. Thay vào đó, các ứng dụng mà làm việc với nhiều cơ sở dữ liệu sẽ cần phải được nhận thức như thế nào dữ liệu được chia. Trong một số trường hợp, thậm chí cả các ứng dụng với số lượng nhỏ của dữ liệu có thể chọn để sử dụng cơ sở dữ liệu khác nhau. Cách tiếp cận này cho phép truy vấn song song, ví dụ, và do đó, nó có thể cung cấp hiệu năng tốt hơn trong một số trường hợp. Tương tự, một ứng dụng đa người thuê nhà cung cấp dịch vụ cho các tổ chức khác nhau có thể chọn để sử dụng cơ sở dữ liệu nhiều, có lẽ chỉ định một đến từng tổ chức. Cho dù một ứng dụng cần nhiều cơ sở dữ liệu hoặc chỉ một, SQL Azure Cơ sở dữ liệu có thể giúp các nhà phát triển ứng dụng địa chỉ một loạt các tình huống. Dù là vấn đề được giải quyết, mục tiêu cơ bản của công nghệ vẫn như nhau: để cung cấp một cơ sở dữ liệu chi phí đám mây quen thuộc, đáng tin cậy, và thấp cho tất cả các loại ứng dụng. 16 "Huron" Data Sync Lý tưởng nhất, dữ liệu được lưu giữ trong chỉ một nơi. Thực ra, tuy nhiên, điều này thường không có. Nhiều tổ chức có bản sao của cùng một dữ liệu lan rộng trên khắp cơ sở dữ liệu khác nhau, thường là ở các địa điểm khác nhau về địa lý. Giữ rằng dữ liệu đồng bộ là đầy thách thức, nhưng cần thiết. "Huron" Đồng bộ hoá dữ liệu địa chỉ vấn đề này. Được xây dựng trên Sync Framework và Microsoft SQL Azure Cơ sở dữ liệu, nó có thể đồng bộ hóa dữ liệu trong cơ sở dữ liệu quan hệ nhiều. Hình 9 cho thấy những vấn đề cơ bản của công nghệ này. Hình 9: "Huron" Đồng bộ hoá dữ liệu sử dụng Microsoft Framework Sync để đồng bộ hóa dữ liệu trên SQL Azure Cơ sở dữ liệu và trên cơ sở dữ liệu cơ sở. "Huron" Đồng bộ hoá dữ liệu ban đầu sẽ hỗ trợ SQL Server và SQL Server Compact Edition. Công nghệ này cũng bao gồm một SDK, tuy nhiên, cho phép người khác để thêm sự hỗ trợ cho DBMSs hơn. Dù công nghệ cơ sở dữ liệu được sử dụng, "Huron" Đồng bộ hoá dữ liệu công trình theo cùng một cách: thay đổi dữ liệu được đồng bộ hóa đầu tiên Azure Cơ sở dữ liệu SQL, sau đó đến DBMSs đang được đồng bộ. Công nghệ này cung cấp một giao diện đồ họa cho phép người dùng xác định đó phải được đồng bộ hóa dữ liệu trên mà cơ sở dữ liệu. Đồng bộ hóa được nhiều thầy, có nghĩa là thay đổi có thể được thực hiện cho bất kỳ các bản sao. Những người dùng thiết lập đồng bộ cũng có thể định nghĩa như thế nào xung đột nên được xử lý. Tùy chọn bao gồm việc viết cuối cùng giành chiến thắng, đòi hỏi rằng những thay đổi được thực hiện cho một cơ sở dữ liệu cụ thể giành chiến thắng, và nhiều hơn nữa. 17 "Huron" Đồng bộ hoá dữ liệu, làm việc với cơ sở dữ liệu SQL Azure, địa chỉ là một vấn đề quan trọng trong nhiều tổ chức. Khi SQL Azure gia đình mở rộng, mới thấy mây nhiều giải pháp dựa trên dữ liệu theo định hướng các vấn đề phổ biến. NET DỊCH VỤ. Lưu trữ dữ liệu trong đám mây là hữu ích, nhưng như vậy là cung cấp các dịch vụ dựa trên mây cơ sở hạ tầng. Những dịch vụ này có thể được sử dụng bởi hoặc là trên cơ sở hoặc các ứng dụng dựa trên mây, và họ có thể giải quyết vấn đề mà không thể được giải quyết cũng như trong bất kỳ cách nào khác. Phần này có một cái nhìn sâu hơn về các dịch vụ của Microsoft trong lĩnh vực này: các NET cận. Control NET Dịch vụ và Dịch vụ. Buýt, được gọi chung là. NET Services. Access Control Service Làm việc với nhận dạng là một phần cơ bản của hầu hết các ứng dụng phân phối. Dựa trên thông tin về danh tính của người sử dụng, một ứng dụng ra quyết định về những gì mà người dùng được phép làm. Để truyền tải thông tin này, ứng dụng có thể dựa vào thẻ được xác định bằng cách sử dụng Security Assertion Markup Language (SAML). Một SAML có chứa mã thông báo yêu cầu, mỗi có thể mang theo một số mẩu thông tin về một người sử dụng. Một trong những yêu cầu bồi thường có thể chứa tên của cô, một có thể chỉ ra vai trò của mình, chẳng hạn như quản lý, trong khi một phần ba có chứa địa chỉ email của cô. Thẻ được tạo ra bởi phần mềm được biết đến như một dịch vụ bảo mật mã thông (STS), mà mỗi một dấu hiệu kỹ thuật số để xác minh nguồn gốc của nó. Khi một khách hàng (như là một trình duyệt Web) có một mã thông báo cho người sử dụng của nó, nó có thể trình bày dâu hiệu cho một ứng dụng. Ứng dụng này sau đó yêu cầu sử dụng của thẻ để quyết định những gì người dùng này được cho phép để làm. Có một vài vấn đề có thể, tuy nhiên: Nếu dâu hiệu không chứa các tuyên bố này cần áp dụng? Với tuyên bố dựa trên danh tính, mỗi ứng dụng là miễn phí để xác định tập các tuyên bố rằng người dùng của nó phải hiện nay. Tuy nhiên, STS đã tạo mã thông báo này có thể không có đưa vào nó một cách chính xác những gì ứng dụng này đòi hỏi. gì nếu các ứng dụng không tin tưởng rằng STS cấp thẻ này? Một ứng dụng không thể chấp nhận thẻ phát hành bởi chỉ cần bất kỳ STS. Thay vào đó, ứng dụng thường có quyền truy cập vào một danh sách các giấy chứng nhận cho STSs tin cậy, cho phép nó để xác nhận chữ ký trên thẻ mà họ tạo ra. Chỉ có thẻ từ những STSs tin cậy sẽ được chấp nhận. Chèn khác STS vào quá trình này có thể giải quyết cả hai vấn đề. Để chắc chắn rằng thẻ chứa các tuyên bố quyền, điều này phụ STS thực hiện yêu cầu chuyển đổi. STS có thể chứa các quy tắc xác định cách thức đầu vào và đầu ra phải được yêu cầu liên quan, sau đó sử dụng những quy tắc để tạo ra một thẻ mới có chứa các tuyên bố chính xác một ứng dụng đòi hỏi. Quyết những vấn đề thứ hai, thường được gọi là nhận dạng liên bang, đòi hỏi sự tin tưởng ứng dụng STS mới. Nó cũng đòi hỏi phải thiết lập một mối quan hệ tin cậy giữa này STS mới và một trong đó tạo ra các STS token nhận được. Thêm một STS cho phép chuyển đổi và liên bang tuyên bố danh tính, cả những điều có ích. Nhưng mà nên này STS chạy? Có thể sử dụng một STS chạy bên trong một tổ chức, một lựa chọn đó là do nhà cung cấp một vài ngày hôm nay. Tuy vậy tại sao không chạy một STS trong đám mây? Điều này sẽ làm cho nó dễ tiếp cận cho người dùng và các ứng dụng trong tổ chức nào. Nó cũng có những nơi gánh nặng cho chạy và quản lý STS trên một nhà cung cấp dịch vụ. 18 Điều này là chính xác những gì các Access Control Dịch vụ cung cấp: Đây là một STS trong đám mây. Để xem cách này STS có thể được sử dụng, giả sử một ISV cung cấp một ứng dụng có thể truy cập Internet mà có thể được sử dụng bởi những người trong nhiều tổ chức khác nhau. Trong khi tất cả những tổ chức có thể có thể cung cấp thẻ SAML cho người dùng của họ, những thẻ ít có khả năng để chứa các thiết lập chính xác của tuyên bố này cần áp dụng. Hình 10 minh hoạ cách Access Control dịch vụ có thể giải quyết những thách thức này. Hình 10: The Access Control cung cấp các dịch vụ dựa trên luật lệ chuyển đổi và liên bang tuyên bố danh tính. Trước tiên, các ứng dụng của người dùng (mà trong ví dụ này là một trình duyệt web, nhưng cũng có thể là một khách hàng WCF hay cái gì khác) sẽ gửi SAML của người sử dụng thẻ để kiểm soát truy cập dịch vụ (bước 1). Dịch vụ này xác nhận chữ ký trên thẻ, xác minh rằng nó đã được tạo ra bởi một STS các tín thác dịch vụ. Dịch vụ này và sau đó tạo ra một dấu hiệu mới SAML có chứa mã thông báo chính xác các yêu cầu ứng dụng này yêu cầu (bước 2). Để làm điều này, các Access Control dịch vụ của STS dựa vào quy định của chủ sở hữu của ứng dụng mà người dùng đang cố gắng truy cập. Ví dụ, giả sử ứng dụng cấp quyền truy cập cụ thể đến bất kỳ một người sử dụng quản lý trong công ty của mình là ai. Trong khi mỗi công ty có thể bao gồm một tuyên bố trong thẻ của nó cho thấy rằng một người dùng là một người quản lý, họ sẽ có khả năng tất cả sẽ khác nhau. Một trong những công ty có thể sử dụng chuỗi "Quản lý", một chuỗi các "Supervisor", và một mã một phần ba số nguyên. Để giúp các ứng dụng đối phó với sự đa dạng này, chủ nhân của nó có thể định nghĩa được quy định trong Access Control rằng chuyển đổi tất cả ba trong số các tuyên bố đến chuỗi thường Maker Quyết định "". Các ứng dụng của cuộc sống bây giờ là đơn giản, kể từ công tác tuyên bố chuyển đổi được thực hiện cho nó. Một khi nó được tạo ra, STS trong kiểm soát truy cập dịch vụ trở về bước này (thẻ mới cho khách hàng 3) những người sau đó vượt qua nó trên vào ứng dụng (Bước 4). Ứng dụng này xác nhận chữ ký trên thẻ, đảm bảo rằng nó thực sự đã được phát hành bởi các kiểm soát truy cập dịch vụ STS. Lưu ý rằng trong khi Access Control vụ STS phải duy trì một mối quan hệ tin cậy với STS của mỗi tổ chức của khách hàng, ứng dụng 19 Bản thân sự tin tưởng chỉ cần truy cập cửa Dịch vụ STS. Khi nó đã được một số mã thông báo của provenance này, ứng dụng có thể sử dụng các tuyên bố nó chứa để quyết định những gì người dùng này được phép làm (bước 5). Một cách khác để sử dụng Access Control Service là ngụ ý bằng tên của nó: Một ứng dụng có thể có hiệu quả offload đến các quyết định về loại dịch vụ của mỗi người dùng truy cập được cho phép. Ví dụ, giả truy cập vào một chức năng nhất định của một ứng dụng đòi hỏi người sử dụng hiện nay là một yêu cầu cụ thể. Các quy tắc trong việc kiểm soát truy cập dịch vụ cho các ứng dụng có thể được xác định để đưa ra tuyên bố này chỉ cho người dùng rằng hiện nay yêu cầu khác theo yêu cầu, như là một trong những người quản lý các yêu cầu được mô tả trước đó. Khi ứng dụng nhận được một người sử dụng của thẻ, nó có thể cấp hoặc từ chối truy cập dựa trên sự hiện diện của yêu cầu này, quyết định đã có hiệu quả làm cho nó bằng các kiểm soát truy cập Dịch vụ. Làm điều này cho phép một quản trị viên xác định nguyên tắc kiểm soát truy cập tại địa điểm chung, và nó cũng có thể giúp trong việc chia sẻ các quy tắc kiểm soát truy cập trên nhiều ứng dụng. Mọi liên lạc với kiểm soát truy cập dịch vụ dựa trên giao thức chuẩn như WS-Trust và WS-Liên bang. Điều này làm cho các dịch vụ truy cập từ bất kỳ loại ứng dụng trên nền tảng nào. Và để xác định các quy tắc, dịch vụ cung cấp cho cả một trình duyệt dựa trên giao diện và một API cho khách hàng truy cập vào chương trình. Tuyên bố dựa trên danh tính là trên đường trở thành phương pháp tiêu chuẩn cho các môi trường phân phối. Bằng cách cung cấp một STS trong đám mây, hoàn chỉnh với quy định dựa trên yêu cầu chuyển đổi, các Access Control Dịch vụ này làm cho cách tiếp cận hiện đại để nhận dạng hấp dẫn hơn. Dịch vụ xe buýt: Giả sử bạn có một ứng dụng chạy bên trong tổ chức của bạn mà bạn muốn trình bày cho hệ thống trong các tổ chức khác thấy thông qua Internet. Thoạt nhìn, điều này có vẻ như là một vấn đề đơn giản. Giả sử ứng dụng của bạn cung cấp chức năng của nó như là dịch vụ Web (RESTful hoặc SOAP-based), bạn chỉ có thể làm cho người dùng thấy được các dịch vụ web này. Khi bạn thực sự cố gắng để làm điều này, một số vấn đề xuất hiện. Trước tiên, làm thế nào để ứng dụng trong các tổ chức khác (hoặc ngay cả trong các bộ phận khác trong tổ chức của bạn) có thể tìm thấy thiết bị đầu cuối để có thể kết nối đến các dịch vụ của bạn? Sẽ tốt hơn nếu có một số loại đăng ký (Registry), nơi mà những ứng dụng khác có thể xác định vị trí ứng dụng của bạn. Và một khi các ứng dụng khác đã tìm thấy, có thể yêu cầu bằng cách nào để phần mềm trong các tổ chức khác được kết nối vào ứng dụng của bạn? Cơ chế dịch địa chỉ mạng (NAT - Network Address Translate) rất phổ biến, do đó, một ứng dụng thường xuyên không có địa chỉ IP cố định để giao tiếp với bên ngoài. Và thậm chí nếu NAT không được sử dụng, làm thế nào để nhận được yêu cầu thông qua tường lửa của bạn? Điều này có thể được thực hiện bằng cách mở tường lửa để cho phép truy cập vào các ứng dụng của bạn, nhưng hầu hết các nhà quản trị mạng không khuyến khích điều này. Service Bus sẽ phân tích những thách thức nêu trên. Hình 11: Service Bus cho phép ứng dụng đăng ký thiết bị đầu cuối, sau đó các ứng dụng khác truy xuất và sử dụng các thiết bị đầu cuối này để truy cập vào dịch vụ của ứng dụng đó. Để bắt đầu, ứng dụng của bạn đăng ký một hoặc nhiều thiết bị đầu cuối với Service Bus (bước 1). Service Bus gán cho tổ chức của bạn một gốc URI, nơi mà bạn được miễn phí tạo ra bất kỳ hệ thống cấp bậc được đặt tên theo ý bạn. Điều này cho phép thiết bị đầu cuối của bạn được gán một cách rõ ràng – một URIs có thể được nhìn thấy. Ứng dụng của bạn cũng phải mở một kết nối với Service Bus cho mỗi thiết bị đầu cuối nó giao tiếp. Service Bus giữu cho kết nối này mở để giải quyết hai vấn đề. Một là, NAT không còn là một vấn đề, bởi vì lưu lượng thông tin trên kết nối được mở bằng Service Bus luôn luôn được chuyển đến ứng dụng của bạn. Hai là, bởi vì kết nối được tạo ra từ bên trong tường lửa, nên không có lỗi thông tin được trả về lại cho ứng dụng thông qua kết nối này - tường lửa không ngăn chặn kết nối này. Khi một ứng dụng trong một tổ chức khác (hoặc là một phần khác của bạn) muốn truy cập vào ứng dụng của bạn, nó chỉ cần kết nối tới khối Đăng ký(registy) của Service Bus (bước 2). Kết nối này sử dụng giao thức Atom Publishing (Atom Publishing Protocol), và nó trả về tài liệu của dịch vụ AtomPub liên quan đến thiết bị đầu cuối của ứng dụng của bạn. Khi có được điều đó, nó có thể gọi dịch vụ cung cấp thông qua các thiết bị đầu cuối này(bước 3). Mỗi kết nối được nhận bởi Service Bus, sau đó chuyển sang cho ứng dụng của bạn, bằng con đường ngược lại. Mặc dù nó không được hiển thị trong hình, Service Bus thiết lập một kết nối trực tiếp giữa một ứng dụng và ứng dụng khách của nó bất cứ khi nào có thể, làm cho giao tiếp được hiệu quả hơn. Service Bus cũng cho phép giao tiếp thông qua hàng đợi, cho phép một ứng dụng khách gửi yêu cầu ngay cả khi ứng dụng nguồn không có sẵn; Service Bus có thể xếp các yêu cầu chờ ứng dụng nguồn trả lời trong một tuần. Cùng với việc giao tiếp dễ dàng hơn, Service Bus có thể cải thiện khả năng bảo mật. Bởi vì máy khách bây giờ chỉ thấy địa chỉ IP được cung cấp bởi Service Bus, bạn không cần cung cấp IP bên trong tổ chức của bạn. Điều này làm ứng dụng của bạn vô danh một cách hiệu quả, vì bên ngoài không thể nhìn thấy địa chỉ IP tổ chức của bạn. Service Bus hoạt động như một DMZ(De-Militarised Zone) bên ngoài, cung cấp một lớp vô hướng để ngăn chặn kẻ tấn công. Và cuối cùng, Service Bus được thiết kế để được sử dụng bởi dịch vụ điều khiển truy cập (Access Control Service), cho phép các quy tắc cơ bản yêu cầu chuyển đổi. Trong thực tế, Service Bus chỉ chấp nhận các thẻ được phát hành bởi dịch vụ điều khiển truy cập (Access Control Service) STS. Một ứng dụng muốn thể hiện dịch vụ của mình thông qua Service Bus thường được thực hiện bằng cách sử dụng WCF(Windows Communication Foundation: một nền tảng (framework) để xây dựng và chạy các ứng dụng hướng dịch vụ). Khách hàng có thể được xây dựng với WCF hoặc các công nghệ khác, chẳng hạn như Java, và họ có thể thực hiện các yêu cầu thông qua SOAP hoặc HTTP. Ứng dụng và các thành phần của nó cũng được tự do sử dụng cơ chế bảo mật riêng của chúng, chẳng hạn như mã hóa, để bảo vệ chúng khỏi những kẻ tấn công và từ Service Bus. Trưng bày ứng dụng ra thế giới bên ngoài không đơn giản. Mục đích của Service Bus là làm cho việc này trở nên đơn giản nhất. KẾT LUẬN Sự thật hiển nhiên là: Cloud computing là ở đây. Đối với các nhà phát triển, lợi dụng đám mây nghĩa là sử dụng nền tảng đám mây một cách nào đó. Với nền tảng Windows Azure, Microsoft giới thiệu một loạt các phong cách nền tảng địa chỉ một loạt các nhu cầu: Windows Azure cung cấp một tính toán dựa trên Windows và môi trường lưu trữ trong đám mây. SQL Azure DBMS cung cấp một đám mây với SQL Azure Cơ sở dữ liệu và đồng bộ hóa dữ liệu thông qua "Huron" Data Sync, với đám mây hơn dựa trên dữ liệu các dịch vụ kế hoạch. . NET cung cấp dịch vụ đám mây trên cơ sở hạ tầng cho các đám mây và trên cơ sở ứng dụng. Những phương pháp tiếp cận địa chỉ một loạt các yêu cầu, và không phải tất cả các nhà phát triển sẽ sử dụng tất cả chúng. Tuy vậy cho dù bạn làm việc cho một ISV hoặc một doanh nghiệp, một số nền tảng dịch vụ đám mây có khả năng có ích cho các ứng dụng tổ chức của bạn tạo ra. Một thế giới mới là unfolding; chuẩn bị được một phần của nó. GIỚI THIỆU CỦA TÁC GIẢ David Chappell là hiệu trưởng Chappell & Associates (www.davidchappell.com) tại San Francisco, California. Thông qua nói của ông, viết, và tư vấn, ông đã giúp người dân trên toàn thế giới hiểu, sử dụng, và đưa ra quyết định tốt hơn về công nghệ mới.

Các file đính kèm theo tài liệu này:

  • pdfAzure.pdf
Tài liệu liên quan