通过Windows Azure Connect ,实现本地机器与Windows Azure 虚拟机的相互连接(转+译)...
公告 ???:本博客為微軟云計算中文博客 ?的鏡像博客。 ? 部分文章因為博客兼容性問題 ?,會影響閱讀體驗 ?。如遇此情況,請訪問 ?原博客 ?? 。
?
?
新版Windows Azure 中有許多非常有用的新特性。上一篇文章,我簡單介紹了一下以遠(yuǎn)程桌面訪問Windows Azure虛擬機。本文中我會講到另外一個非常酷的特性 - Windows Azure Connect.
什么是 Windows Azure Connect
以下是MSDN中,對于Windows Azure Connect 的定義。
有了Windows Azure Connect,您可以使用簡單的用戶界面來配置您公司內(nèi)的本地電腦或虛擬機與Windows Azure內(nèi)role之間的IP-sec連接。IP-sec利用密碼安全服務(wù)來保證IP網(wǎng)絡(luò)上通信的安全性。
上圖可以看到,使用Windows Azure Connect, Worker Role 1 和 Web Role 1 連接至開發(fā)用電腦和數(shù)據(jù)庫服務(wù)器,它們有一些是位于公司內(nèi),有一些則不是。
有了Windows Azure Connect,部署在云端的各種role實例都可以使用公司內(nèi)部網(wǎng)或者其他任何地方的資源了。這意味著role實例可以連接本地數(shù)據(jù)庫,訪問本地共享資源,文件夾和打印機等等。?
Windows Azure Connect與Windows Azure AppFabric的區(qū)別
Windows Azure Connect 所提供的功能似乎與Windows Azure AppFabric有所重疊。它們都是為了解決云端和本地資源的相互通信而生的。下表列出了我所認(rèn)為的區(qū)別。
| ? | Windows Azure Connect | Windows Azure AppFabric |
| 目的 | 本地機器與Windows Azure role的IP-sec 連接 | 運行于云端的應(yīng)用服務(wù) |
| 連接性 | IP-sec,Domain-joint | Net Tcp,Http,Https |
| 組件 | Windows Azure Connect Driver | Service Bus, Access Control, Caching |
| 用途 | Windows Azure role 連接本地數(shù)據(jù)庫服務(wù)。 Windows Azure role使用本地共享文件,文件夾和打印機等。 Windows Azure role加入本地AD。 | 向互聯(lián)網(wǎng)暴露本地服務(wù)。 將授權(quán)服務(wù)置于云端。 與現(xiàn)有的身份認(rèn)證服務(wù)相結(jié)合,例如Live ID,Google ID等等。 使用分布式緩存。 |
?
以下是一些可以使用的場景:
| 場景 | Connect | AppFabric |
| 希望互聯(lián)網(wǎng)上的用戶能夠訪問到公司內(nèi)部網(wǎng)部署的服務(wù) | ? | Y |
| 在Windows? Azure內(nèi)部署了一個網(wǎng)站,該網(wǎng)站需要使用到公司內(nèi)部的數(shù)據(jù)庫。我不希望將數(shù)據(jù)庫暴露給互聯(lián)網(wǎng)。 | Y | ? |
| 公司內(nèi)部網(wǎng)部署了一個服務(wù),其使用AD授權(quán)方式,同時Windows Azure內(nèi)部署了一個網(wǎng)站,要使用該服務(wù)。 | Y | ? |
| 公司內(nèi)部網(wǎng)部署了一個服務(wù),互聯(lián)網(wǎng)上的用戶需要通過驗證和授權(quán)才能使用該服務(wù)。 | ? | Y |
| 公司內(nèi)部網(wǎng)部署了一個服務(wù),Windows Azure內(nèi)部署了一個網(wǎng)站。互聯(lián)網(wǎng)用戶可以使用該服務(wù)。而通過AD授權(quán),用戶可以在網(wǎng)站上獲得更多功能。 | Y | Y |
?
如何開啟Windows Azure Connect功能
我們談?wù)摿嗽S多 Windows Azure Connect 與Windows Azure AppFabric之間的區(qū)別。我們看一下如何開啟并使用Windows Azure Connect。首先,這些新特性都處于CTP 階段,我們需要先申請才能使用。訪問Windows Azure Portal ,如下找到Windows Azure Connect。
在該頁,您可以發(fā)送加入Beta項目的申請。幾天后,微軟會向您發(fā)送一份郵件(您Live ID的郵件地址)。
之后,我們可以到 Windows Azure Connect 已經(jīng)被激活了,我們點擊頂部的Connect按鈕,或者點擊左邊導(dǎo)航欄的Virtual Network 項。
如果我們首次進(jìn)入Connect頁面,我們必須開啟Windows Azure Connect。
在頁面上,我們可以看到一些Windows Azure Connect 的信息。
?
將本地機器加入Windows ?Azure Connect
Windows Azure Connect可以在本地機器和Windows Azure role之間搭起一條 IP-sec 連接。所以首先需要將一臺本地機器加入我們的Windows Azure Connect。點擊頁面頂部Install Local Endpoint 按鈕,網(wǎng)站會給出一個URL。在需要被加入Connect的機器上打開該網(wǎng)址,并下載軟件。
安裝完之后,任務(wù)欄右下角會出現(xiàn)一個托盤圖標(biāo),表明當(dāng)前機器已經(jīng)加入了Connect。
該軟件每5分鐘便會刷新一次,得到當(dāng)前的連接信息。當(dāng)然我們也可以手動刷新。在portal頁面選擇Activated Endpoints 節(jié)點,在Windows Azure Portal ?中我們已經(jīng)可以看到該機器了。
?
將Windows Azure Role 加入Windows ?Azure Connect
在Visual studio中創(chuàng)建一個簡單的ASP.NET web role,右擊該項目,打開其屬性(properties)頁面,在Virtual Network 標(biāo)簽頁內(nèi),勾選Activate Windows Azure Connect選項。
下一步,從Windows Azure Portal 上獲得激活令牌。在相同的頁面,點擊Get Activation Token按鈕。
將該令牌復(fù)制到Visual? Studio先前的Connect標(biāo)簽頁中。如下圖:
?
之后,將該應(yīng)用部署至Windows Azure。 在完成部署之后,我們可以在Windows Azure Portal - Virtual Connect看到role實例。
?建立連接組
最后一步,我們需要創(chuàng)建一個連接組,包含上文的本地機器和role實例。
直到我們?yōu)槠鋭?chuàng)建連接組,本地機器和實例默認(rèn)都不會進(jìn)行連接。機器和實例可以被用于多個連接組。
在Virtual Connect 頁面,在左導(dǎo)航欄點擊Groups and Roles 節(jié)點, 在頂部點擊Create Group 按鈕。接著會出現(xiàn)一個對話框,我們需要指定連接組名稱,備注,并將本地機器和role實例選入該組內(nèi)。
在Windows Azure更新完 連接組設(shè)置后,我們可以在該頁面看到連接組和端點。
我們回到本地機器的界面,會發(fā)現(xiàn)托盤圖標(biāo)已經(jīng)改變了,狀態(tài)也變?yōu)镃onnected了。
Windows Azure Connect 每5分鐘便會更新一次連接組信息。如果你發(fā)現(xiàn)狀態(tài)仍然為Disconnected 狀態(tài),右鍵點擊托盤圖標(biāo),點擊刷新按鈕,讓軟件取得最新的連接組信息。
?
測試本地機器和Windows Azure實例之間的 Windows ?Azure Connect
現(xiàn)在本地機器和Windows Azure role 實例已經(jīng)連接上了。這意味著它們已經(jīng)可以在IP級別進(jìn)行相互通信了。舉例,我們可以打開本地SQL Server 端口,讓role通過機器名或者IP地址來連接該 SQL Server。
Windows Azure Connect 使用 IPv6 連接本地機器和role實例。您可以在Windows Azure Portal Virtual Network選中該端點,可以查看其IP地址。
下面我會進(jìn)行2個簡單的試驗。第一個是PING。
當(dāng)本地機器和role實例連接好之后,在防火墻設(shè)置中打開ICMP協(xié)議后,我們便能PING到它們。在本地機器和role實例內(nèi)分別打開命令行窗口,執(zhí)行如下命令:
netsh advfirewall firewall add rule name="ICMPv6" dir=in action=allow enable=yes protocol=icmpv6
感謝 Jason Chen, Patriek van Dorp, Anton Staykov 和 Steve Marx,它們幫助我開啟了ICMPv6 設(shè)置。 完整的討論在這里 。
使用Remote Desktop Access 特性,登錄Windows Azure role 實例。可以參考前一篇文章 。
我們現(xiàn)在可以通過機器名來PING本地機器或者role實例了。如下是我在Windows Azure ?role實例內(nèi)PING我的本地機器。
我們也可以使用IPv6地址來PING 對方。下圖是我在本地機器上使用IPv6地址來PING? role實例。
?
另外一個試驗便是文件夾共享。在本地我共享了一個文件夾,如果登錄到role實例上,我們可以在文件管理器內(nèi)看到該共享目錄。
?
總結(jié)
本文我介紹了另外一個新特性- Windows Azure Connect。利用該新特性 ,我們本地資源和role實例可以進(jìn)行相互連接。這樣,Windows Azure應(yīng)用便可以使用我們本地資源了。例如數(shù)據(jù)庫,打印機等,且無需向互聯(lián)網(wǎng)暴露這些資源。
?
?
本文翻譯自:http://geekswithblogs.net/shaunxu/archive/2010/12/16/communication-between-your-pc-and-azure-vm-via-windows-azure.aspx
轉(zhuǎn)載于:https://www.cnblogs.com/new0801/archive/2010/12/20/6176687.html
總結(jié)
以上是生活随笔為你收集整理的通过Windows Azure Connect ,实现本地机器与Windows Azure 虚拟机的相互连接(转+译)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言18个经典问题答录
- 下一篇: java信息管理系统总结_java实现科