您好,登錄后才能下訂單哦!
這篇文章主要介紹怎么在本地數據中心安裝Service Fabric for Windows集群,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
首先本文只是對官方文檔(中文,英文)的一個提煉,詳細的安裝說明還請仔細閱讀官方文檔。
雖然Service Fabric的官方名稱往往被加上Azure,但是實際上(估計很多人不知道)Service Fabric可以安裝到本地數據中心或者任意公有云上,這不官方文檔就有一章專門講如何安裝到AWS的內容。
所以現在為了區分,一般把在Azure上提供的開箱即用的PaaS稱之為Azure Service Fabric,而把本地安裝的稱之為Service Fabric Standalone。
同時,Service Fabric既可部署到Windows Server上,也可以部署到Linux上。但是本文書寫的時候,Linux版本只能使用Azure的,官方還沒有發布本地版本安裝包(但是未來一定會有)。所以本文也是僅限于Windows集群的內容。
在本地數據中心安裝Service Fabric for Windows集群的時候,可能會受到如下限制的影響:
數據中心的服務器的網絡是隔離的
數據中心的服務器是不能訪問互聯網的
機器的準備,需要至少滿足如下要求:
最少16G內存
最少40G硬盤空間
4核以上CPU
所有作為集群節點的機器在同一網段,互相可通
機器上安裝Windows Server 2012 R2或Windows Server 2016,如果打算使用容器,那么建議使用Windows Server 1805,可以支持更加小的1805基容器鏡像。
確保Windows安裝了.NET FX 4.5.1以上
確保Windows具有PowerShell 3.0
在所有機器上確保運行RemoteRegistry服務
域環境和域賬號:
在數據中心中應該有一個域控
創建一個普通域賬號,比如:sfadmin
把集群機器加入到域中(機器名可以命名為SFNode-01、SFNode-XX等等),并把sfadmin添加到集群機器的本地管理員組
在域中創建一個機器組(全局安全組),比如:sfnodes,把所有集群機器都加到這個組中
雖然可以在某臺集群機器上來運行Service Fabric的安裝包,但是我建議單獨使用一臺操作機。操作機的準備:
可以使用如下操作系統:
Windows 7
Windows 8/Windows 8.1
Windows Server 2012 R2
Windows Server 2016
Windows 10
把操作機也加到域中
和集群機器在一個網段,或者能夠訪問到集群機器
啟用PowerShell腳本執行權限:Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force -Scope CurrentUser
安裝Service Fabric SDK。由于操作機可能也無法正常互聯網,那么可以通過下載離線包的方式來獲取SDK。
Service Fabric for Windows的安裝包分為兩個部分:
Service Fabric Standalone Package - Windows Server,這個是安裝程序。以下稱之為安裝包。
Service Fabric Runtime - Windows Server,這個是安裝到集群機器上的運行時。以下稱之為運行包。
先通過其他渠道下載這兩個安裝包,然后復制到內網環境。
在操作機上解壓安裝包的zip壓縮包,比如解壓到SFSetup文件夾。把運行包的cab壓縮包也復制到SFSetup文件夾備用(不用解壓)。
首先,準備集群配置文件。
根據不同的安全配置和集群配置,安裝包提供了多個配置文件模板,分別是:
ClusterConfig.gMSA.Windows.MultiMachine.json 依賴gMSA(Group Managed Service Account)安全機制的多機器集群
ClusterConfig.Unsecure.DevCluster.json 非安全開發集群
ClusterConfig.Unsecure.MultiMachine 非安全多機器集群
ClusterConfig.Unsecure.OneNode 非安全單節點集群
ClusterConfig.Windows.DevCluster 依賴Windows賬號安全機制的開發集群
ClusterConfig.Windows.MultiMachine 依賴Windows賬號安全機制的多機器集群
ClusterConfig.Windows.OneNode 依賴Windows賬號安全機制的單節點集群
ClusterConfig.Windows.X509.DevCluster 客戶端訪問依賴Windows賬號服務器訪問依賴X509證書的開發集群
ClusterConfig.Windows.X509.MultiMachine 客戶端訪問依賴Windows賬號服務器訪問依賴X509證書的多機器集群
ClusterConfig.Windows.X509.OneNode 客戶端訪問依賴Windows賬號服務器訪問依賴X509證書的單節點集群
ClusterConfig.X509.DevCluster 依賴X509證書安全機制的開發集群
ClusterConfig.X509.MultiMachine 依賴X509證書安全機制的多機器集群
ClusterConfig.X509.OneNode 依賴X509證書安全機制的單節點集群
總結起來,Service Fabric for Windows支持非安全、Windows賬號、組托管服務賬號、X509證書和Windows賬號+X509混合等5種安全模式。
個人建議選擇Windows賬號模型,因為準備工作要簡單一些,成功的機率也大一些。如果一直報莫名其妙的錯誤,那么使用非安全模式大概率可以成功。在網絡安全比較嚴格且機器加入域的情況下,非安全模式也是可以接受的。
以依賴Windows賬號安全機制的多機器集群為例,復制一份ClusterConfig.Windows.MultiMachine.json文件,重命名為方便處理的名稱,比如ThisClusterConfig.1.0.json。用諸如VSCode這樣的編輯器打開這個json文件。編輯其中的nodes部分。主要是修改iPAddress為每臺機器的機器名。ClusterIdentity填入機器組的名稱sfnodes,Identity改為專用域賬號的名稱sfadmin。nodeTypes根據情況就暫時用一個或者自定義多個。
示例如下:
對于非安全模式的集群,無非是去掉了security配置節而已。
接著,對配置文件進行測試。
在SFSetup文件夾上打開PowerShell,執行如下命令:
.\TestConfiguration.ps1 -ClusterConfigFilePath .\ThisClusterConfig.1.0.json
如果配置文件沒有什么問題的話,會顯示如下提示:
在內網環境下,IsCabValid應該會顯示為False的,這個不用擔心。
最后,基于配置文件創建集群。
繼續在PS中執行如下命令:
.\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ThisClusterConfig.1.0.json –FabricRuntimePackagePath .\MicrosoftAzureServiceFabric.6.3.162.9494.cab
現在祈禱它能一次運行成功,如果5臺機器的話,應該能在5分鐘內成功。
提示成功后,通過輸入如下命令來嘗試連接集群的管理端口來進行驗證:
Connect-ServiceFabricCluster -ConnectionEndpoint SFNode-01.contoso.com:19000
或者用瀏覽器打開管理后臺:http://SFNode-01.contoso.com:19080/Explorer/index.html
如果你需要用Service Fabric來編排Windows Container的話,需要預先在集群機器上安裝Docker。
由于內網環境的限制,安裝Docker也會稍顯麻煩。根據Docker.com的官方文檔:https://docs.docker.com/install/windows/docker-ee/#use-a-script-to-install-docker-ee
可以通過命令啟用Windows的容器支持:
(Install-WindowsFeature Containers).RestartNeeded
再下載docker的離線包到內網環境后按照步驟進行安裝。
同時為了支持集群機器能夠正常的獲取Docker鏡像,可以在內網環境運行一個Docker Registry作為私有鏡像倉庫供內部應用鏡像的存放處,在外網運行一個Docker Registry作為公共鏡像的Mirror,供私有倉庫和集群機器使用。
以上是“怎么在本地數據中心安裝Service Fabric for Windows集群”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。