Microsoft Azure

基礎建設

Microsoft Azure是專為在微軟建設的資料中心管理所有伺服器，網路以及儲存資源所開發的一種特殊版本Windows Server作業系統，它具有針對資料中心架構的自我管理（autonomous）機能，可以自動監控劃分在資料中心數個不同的分割區（微軟將這些分割區稱為Fault Domain）的所有伺服器與儲存資源，自動更新修補程式，自動執行虛擬機器部署與鏡像備份（Snapshot Backup）等能力，Microsoft Azure被安裝在資料中心的所有伺服器中，並且定時和中控軟體Microsoft Azure Fabric Controller進行溝通，接收指令以及回傳執行狀態資料等等，系統管理人員只要透過Microsoft Azure Fabric Controller就能夠掌握所有伺服器的執行狀態，Fabric Controller本身是融合了很多微軟系統管理技術的總成，包含對虛擬機器的管理（System Center Virtual Machine Manager），對作業環境的管理（System Center Operation Manager），以及對軟體部署的管理（System Center Configuration Manager）等，在Fabric Controller中被發揮得淋漓盡致，如此才能夠達成透過Fabric Controller來管理在資料中心中所有伺服器的能力。
Microsoft Azure環境除了各式不同的虛擬機器外，它也為應用程式打造了分散式的巨量儲存環境（Distributed Mass Storage），也就是Azure Storage，應用程式可以根據不同的儲存需求來選擇要使用哪一種或哪幾種儲存的方式，以儲存應用程式的資料，而微軟也盡可能的提供應用程式的相容性工具或介面，以降低應用程式移轉到Microsoft Azure上的負擔。
Microsoft Azure不但是開發給外部的雲端應用程式使用的，它也作為微軟許多雲端服務的基礎平台。

Fabric Controller

Fabric Controller 是管理微軟資料中心的 Azure 運算資源的中控管理系統，扮演心臟的角色，它負責自動化的管理資料中心內所有的實體伺服器，包含由使用者要求的 Azure Guest OS 的部署工作，定時的Hotfix修補，機器狀態回報，以及管理不同版本的VM部署影像的複製等重要核心工作，Fabric Controller 本身也具有高可用性，並且有一個管理 Fabric Controller 的子系統（稱為"Utility" Fabric Controller）來管理與監控 Fabric Controller 的運作。
Fabric Controller也處理虛擬機器的健康管理（Health Management）工作，當Windows Azure Guest OS發生當機時，會由Fabric Controller自動選擇不同的實體機器重新部署與啟動。當應用程式提交即地更新（In-place upgrade）時，Fabric Controller也負責即地更新的協調工作，以保持應用程式在更新時仍可保持SLA所承諾的服務水準。

RDFE

RDFE (Red Dog's Front-End) 是 Azure 的前端介面，負責接取來自任何存取 Azure 的應用程式的命令，它是一組可控制與管理 Azure 服務的 REST APIs，對外接受應用程式的要求並回應，對內則是扮演大腦的角色，Azure 資源的組態策略與方式均是由 RDFE 所進行，包含虛擬機器的 Fault Domain (失效域) 與 Upgrade Domain (更新域) 的組態與計算都是由 RDFE 處理。

管理模式

Microsoft Azure 早期開發時，使用的是以服務為主體的管理方式，稱為服務管理模式 (Azure Service Management, ASM)，其管理觀點是依服務來區分，這個模式在目前的 Azure Portal (2012年發布的管理介面) 以及 Azure PowerShell、Azure CLI 等都支援，也是 RDFE 一開始就支援的 API，服務管理的好處是以服務為主體，其管理方式環繞著服務，在小型應用 (使用的資源種類很少時) 相當方便，但當服務愈來愈多種，應用也愈來愈大 (橫跨多種服務的應用) 時，這樣的方法反而會導致管理上的不便。
為了改良服務管理模式的缺點，微軟在 2014 年提出了資源管理 (Azure Resource Management, ARM) 的新模式，其管理觀點是依資源來區分，應用程式的資源可組織在同一個或不同的群組，管理人員可以利用資源群組 (Resource Group) 來組織資源以及使用資源的服務 (例如虛擬機器會使用到網路卡、網路安全群組、公開IP、負載平衡器與虛擬網路等資源)。資源管理模式適當中大型的應用，但小型應用也同樣適合。資源管理模式由 Azure Ibiza Portal (2015年公開服務的新管理介面)、Azure PowerShell v1.0 起、Azure CLI v1.0 起適用。資源管理模式同時也引入了資源範本 (Resource Template) 的概念，允許管理人員一次部署多種或大量服務與資源，微軟也提供了 Azure Quickstart Template 供入門的系統管理人員使用。

服務

Microsoft Azure 現已包含 30 餘種服務，以及數百項功能，針對雲端以及物聯網與巨量資料等所需要的各類型服務提供。

應用服務

Microsoft Azure 為了要有效降低將應用程式移植到雲端所需的負擔，微軟在 2012 年度的 Spring Release 中首次發布了 Azure Website 服務，支援 .NET 以及像 PHP、Java、Python、Ruby、node.js 等非微軟平台，成功吸引開發網站的 Web 開發人員以及企業將其網站移轉到 Azure，Azure Website 為 Virtual Machine 以外最受歡迎的 PaaS 服務。同年底，微軟也發布了為行動應用程式 (Mobile App) 提供後台支援的 Mobile Service，以簡單的管理機制與充份的 SDK 支援吸引行動應用開發人員使用，這兩個服務在 2015 年時合併為 Azure App Service，並加入了發展 RESTful API 應用的 API App 以及以視覺化設定執行流程控制的 Logic App。
為了要支援大型應用程式的發展，微軟在 Azure 發布初期就提供了 AppFabric 服務，包含 Access Control Service 以及 Service Bus 功能，Access Control Service 負責統一帳戶管理機制，後期也引入了 Social Identity 的功能，可與 Facebook, Google 等社群連結並共用其帳戶；Service Bus 則是提供了訊息轉送 (Message Relay)、佇列 (Queue) 與主題訂閱 (Topics) 的功能，隨後也加入了 Notification Hub 以支援對行動裝置平台的訊息傳送功能。

儲存服務

儲存資料是一個平台服務最基本的要求，Azure 在開發初期就提供了基本的儲存 (Azure Storage) 與關聯式資料庫 (SQL Azure)，儲存服務提供了 Blob、Table 和 Queue 分別管理非結構化資料、結構化資料與訊息通訊，2014年新增 File 服務，以支援在雲端虛擬機器間的快速資料共用。
資料庫服務 SQL Azure 為 SQL Server as a Service，提供大部份在地端的 SQL Server 資料庫的能力，2013 年微軟將 SQL Azure 正名為 Azure SQL Database，以提升品牌識別度，2014 年新增依交易量計費的 DTU 模式，以及新一代資料庫引擎 V12，強化資料庫的功能與效率，2015 年更提出了許多資料庫的企業級應用，如 Elastic Pooling、SQL Data Warehouse 與和 SQL Server 2016 配合的 SQL Database Strerch Database 功能，使 SQL Database 更適合企業的應用。2017 年將 Database as a Service 擴大支援 MySQL 與 PostgreSQL 等資料庫系統，2018 年新增依虛擬核心數計費的 vCore 模式，讓用戶更容易對應在原本伺服器環境的硬體規格。
Azure Search 是微軟為提升雲端資料檢索的功能而於 2014 年提供，搭配 Azure DocumentDB 實作出的資料檢索服務。
Azure Redis Cache 為微軟基於 Redis 開源專案所發展的分散式快取服務，用以取代 2011 年的 Azure Shared Cache 以及 2012 年提出的 Azure Role-based Cache 服務，由於 Redis Cache 適用於許多平台與框架，使得 Azure Redis Cache 更容易被大眾接受以作為分散式快取基礎建設。
Azure Cosmos DB 是微軟於 Build 2017 所宣布的新型 NoSQL 資料庫服務，可同時支援鍵值對 (Key-Value)、檔案 (Document)、Column Family 與圖形 (Graph) 等資料結構，並同時支援 Azure Table API, Mongo API, Cassandra API, DocumentDB SQL 與 Graph API 等不同的存取方式。

網路服務

網路服務是 Microsoft Azure 對外通訊與內部各類服務之間的資料通訊基礎建設，也是 Azure IaaS 的重要成員之一。
Azure 虛擬網路可允許組織或企業在雲端建置自己的網路基礎建設，包含子網路、IP組態、負載平衡器與網路安全原則等，同時可以建置 VPN 以串連企業網路與其他區域的虛擬網路，也可以利用 P2S VPN 串接個人用戶端與虛擬網路。
為了要加速網路速度、隔離用戶與 Internet 網路環境，Azure 提供 ExpressRoute 給用戶以支援專屬性 (Dedicated) 的 Azure 資料中心間通訊。
對於具全球性的大型服務，Azure Traffic Manager 可協助發展大規模的負載平衡解決方案，將用戶導向到全球各地離其最近的資料中心，並且也可支援跨區域性的備援重導向。

身分識別與存取管理服務

Azure AD (Active Directory) 是 Microsoft Azure 上主要的身分識別與存取服務，是基於 HTTP 之業界標準 OAUTH 2.0 與 OpendID 協定的雲端身分驗證服務，由於傳統使用 LDAP/Kerberos 驗證協定的 Windows Server Active Directory 不易用於網際網路與行動裝置環境上身分驗證，因此微軟提供 Azure AD Connect 服務以處理 Windows Server Active Directory <-> Azure Active Directory 的帳戶同步功能。Azure AD 也提供了多重要素驗證 (Multi-Factor Authentication) 能力以支援需要多重方法驗證的應用，Azure AD 的應用程式連結功能則提供了軟體服務 (SaaS) 整合所需的身分驗證能力。
Azure AD 提供 Azure AD B2C 服務讓應用程式可以利用多種網際網路上常用之身分驗證機制 (例如 Microsoft Account，Google ID ，Facebook ID 等) 來進行進行身分驗證，也提供 Azure AD 網域服務以減少企業在雲端 Azure 環境內部署 Windows Server AD 網域控制站成本。

開發人員服務

為支援 Web App 與行動 App 的記錄、使用者行為追蹤與網路監控等需求，Azure 提供 Application Insights 可供開發人員實作所需的記錄功能，Application Insights 也可作為協助監控網站存活的輔助服務。
Azure DevOps 提供雲端的版本控制、自動化建造、自動化測試與部署等軟體工程流程服務。
Azure App Center 可協助處理行動 App 內的使用者回報，包含當機回報與使用者意見回饋等。

法規與規範認證

Microsoft Azure 目前已經通過包含政府機構與產業標準數十項法規與規範的認證，以允許政府機關使用 Microsoft Azure，或是認可 Microsoft Azure 在資訊安全上的努力 。