當我們使用vs發布乙個cloud service或者在portal上上傳發布包後,就能啟動和執行乙個雲服務,可以保護webrole,workerrole的乙個或者多個例項。
windows azure是怎麼實現這乙個過程的呢?要了解這個過程,需要首先了解windows azure 的雲服務角色架構。
總的來說可以用下面一張圖來概括,非常經典的一張圖,很多問題都可以在這張圖上得到答案。windows azure 這些年不斷更新,對於這張圖來說基本沒有變化。
首先對這張圖上的名稱做解釋:
a.rdfe / ffe用來連線使用者到azure的fabric. rdfe (reddog front end) ,reddog紅狗是一種酒的名稱,當時負責這個專案的人喜歡這個酒,就以此命名。refe是一套向外公開的介面,管理**的api和service management的api(ie. visual studio, azure mmc等)。使用者所有的請求都會經過rdfe,然後通過ffe傳給fabric。
b.fabric controller就像pc及其的作業系統,它管理和監控資料中心(datacenter)中的所有資源。它與部署在host os上的host agent通訊,host agent 與guest agent (部署在vm,webrole,workerrole上)通訊,收集將guest os的版本、服務包、配置和狀態 。
c.host agent是host os上乙個應用,用來部署gust os和gust agent 通訊。通過心跳方式獲取gust agent狀態,如果10分鐘沒有得到心跳響應,就會重啟gust os。
d.windowsazuregustagent的職責是:
a. 配置guest os的防火牆、acls、本地儲存資源、服務包和服務配置,以及rdp證書。
b. 為role執行設定使用者賬戶
c. 與fabric 就角色(webrole,workerrole)的狀態進行溝通
a. 讀取角色配置和啟動角色所需的所有任務和程序。
b. 監控所有子程序。
c. 發起角色狀態檢查。
f.iisconfigurator的職責是:
a. 啟動iis服務。
b. 配置.net module
d. 配置iis的日誌路徑。
e. 配置站點訪問許可權。
h.diagnosticsagent用來監聽和記錄診斷資訊的**,這個任務是後台執行任務。remoteaccessagent是用於rdp遠端訪問,這個任務是簡單任務。
i.waworkerhost是worker role的標準宿主程序,宿主了所有關於role的dll,執行**如onstart和run方法嗎。
j.wawebhost是web role的標準宿主程序,使用hwc。這個在sdk1.2可以使用,現在的sdk已經不支援了。
k.waiishost是角色的宿主程序。載入角色訪問的第乙個dll,入口是實現roleentrypoint的類,執行onstart,run,onstop等方法。
l.w3wp是iis的工作程序。
一下是每個虛機vm和節點(node)以及fc的內部結構。
physical node: 物理節點(node),就是乙個微控制器伺服器,可以分成多個(一般8個,16個)guest partition。
guest partition: 包括guest os, 角色例項和guest agent
玩轉Windows Azure儲存服務 高階儲存
如果客戶的應用場景對磁碟效能要求較高,例如 高頻的資料庫讀寫,大檔案處理等,高階儲存的優勢就非常明顯了。說到這裡,我們不得不提一下d系列的虛擬機器。很多使用者誤以為d系列的虛擬機器已經是ssd儲存了,為什麼還需要高階儲存呢?沒錯,d系列的虛擬機器的確使用了ssd儲存,但d系列虛擬機器使用的ssd儲存...
微信語音遙控Windows Azure雲虛擬機器
為什麼會有這個想法?例如我說啟動虛機,它就真的替我們啟動,而且還不需要麻煩it部門?這想必會受到bu 業務部門 的喜愛,因為他們可以直接利用社交端對windows azure做一些最簡單的管理,而不再需要it部門干預。bu it 部門的價值在 後端的自動化架構都是他們利用雲計算的自動化架構搭建的,這...
微信語音遙控Windows Azure雲虛擬機器
為什麼會有這個想法?例如我說啟動虛機,它就真的替我們啟動,而且還不需要麻煩it部門?這想必會受到bu 業務部門 的喜愛,因為他們可以直接利用社交端對windows azure做一些最簡單的管理,而不再需要it部門干預。bu it 部門的價值在 後端的自動化架構都是他們利用雲計算的自動化架構搭建的,這...