前言

這篇blog延續上一篇的主題,我們要準備一個Enterprise PKS的環境,讓雲服務提供商可以拿來掛在vCloud Director之下,當他們的租戶(某企業或公司的雲端服務使用者)申請了Kubernetes as a Service的服務後,雲服務供應商的系統管理者便可以透過Container Service Extension 2.0,很快的把一個K8S叢集的環境給建立起來,並開通此服務給購買的租戶,租戶的管理者根據他們公司使用者的實際需求,授予他們的使用者相應的權限,租戶的使用者便可以透過他們的終端,用原生的Kubernetes的使用方式,開始在這個環境建立K8S的POD,開發和運行他們的雲原生應用和服務。整個租戶利用CSE透過PKS建立K8叢集的流程判斷圖如下,原文可參考這裡

flowchart

安裝BOSH Director注意事項:

當我們將NSX-T環境準備好後,接下來要做的就是安裝PKS Ops Manager,安裝Ops Manager就是把ova導入vSphere環境,設定IP和主機名,非常簡單,當安裝完Ops Manager後,接著我們要安裝BOSH Director,BOSH的安裝和設定大家可參考這裡,BOSH的安裝,筆者只提幾點設定時需注意的事情:

在”vCenter Config”裡面的”NSX CA Cert”欄,需要貼上NSX Manager的憑證資料,如何產生此憑證在上一篇文章有說明。

NSX CA

由於我們選擇把PKS Management Plane組件安裝在一般管理網段,所以在”Create Networks”內容中,要跟BOSH說明是哪一個VSS/VDS名稱,還有可用來裝那些管理組件的IP是哪些,要注意的是Reserved IP Ranges指的是不可用來指定給PKS管理組件的是哪些IP段。

Create NW 1.png

再者,因為我們要將K8S Node裝在NSX-T的邏輯交換器裡,所以在此需要設為我們已經事先建立完畢的T1路由器。

Create NW 2

Create NW 3

另外在”Security”內容裡,需要貼上BOSH Director本身的CA憑證資訊,這樣一來,它會把這些憑證自動放在未來它所自動產生的虛機上。

security

安裝完畢後,我們可到”Status”裡面檢查BOSH Director的IP和相關訊息,要注意的是這個IP是Ops Manager自動指派給BOSH Director的。

Create NW 4

在vSphere Client裡看到的是如下的畫面:

Create NW 5.png

安裝PKS注意事項:

當我們將BOSH安裝好後,接下來要做的就是安裝PKS,CSE 2.0目前只支援1.4版本的Enterprise PKS,所以當我們安裝並設定好BOSH Director後,我們要下載1.4版本的PKS,然後在PKS Ops Manager GUI裡面把它導入進來。

PCS 2

選擇下載的檔案:

PCS 1

過一段時間會看到Enterprise PKS的磚塊圖顯示出來:

PCS 3

點進去橘紅色的圖示,我們這裡需要注意幾件事:

首先設定AZ和相對應的網路,這裡可用點選和下拉式的方式完成。

Create NW 7

在”PKS API”內容裡,PKS API Service我們可選擇Change,點選Generate RSA Certificate,並輸入萬用網域:

PCS 5

在”Networking”內容裡,Container Networking Interface選擇NSX-T,輸入NSX Manager hostname和上一篇所述NSX Superuser Principal Identity的相關憑證內容,這裡的訊息需要正確無誤才能確保接下來的安裝都可順利進行!

certificate

在相同畫面輸入Pods IP Block ID、Nodes IP Block ID、T0 ID和Floating IP Pool ID,這些ID訊息都可在NSX-T的畫面中查找得到:

Create NW 6.png

當輸入完所有該填的訊息後,開始佈署PKS。

筆者佈署PKS時遇到以下報錯:PCS 10

PCS 11.png

原來從官方文件得知,PKS需要NSX-T的Edge的系統規格為Large VM,也就是它會檢查Edge大小是否大於 8 vCPU, 16 GB RAM和120 GB儲存空間,如果沒滿足此要求,則佈署會失敗。(文件亦要求要至少兩台Edge做HA)

調整Edge的大小後,重新安裝就成功了!

PCS 12

如果需要,我們可到Change Log看一下詳細的安裝過程日誌。

Create NW 10

PCS 15

安裝完畢可到”Status”查看系統狀況和IP訊息。

Create NW 8

在vSphere Client看到的虛機訊息:

Create NW 9.png

最後請記得到DNS服務主機將PKS的DNS record註冊進去。

安裝好PKS後,我們便可透過PKS Client,實際驗證建立一個Kubernetes Cluster來驗證我們的環境是否運作正常:

image001

image002.png

關於使用者如何透過Client連進我們的Enterprise PKS環境來建立或管理K8S Cluster,筆者將在下一篇文章分享,這篇文章希望對要建立測試環境的讀者有一點幫助,謝謝!

<20190713更新訊息>

  • Ops Manager 2.6版本的安裝

這裡這裡說明了自Ops Manager 2.6版以後,我們不能再用以密碼的方式登入Ops Manager,必須用私鑰的方式從Client端經由Ops Manager的公鑰驗證才可以登入Ops Manager。

作法:

全新安裝

  1. 如果是全新安裝,在安裝之前,先在以後想要登入的client端以root的身份用ssh-keygen產生keypair
  2. 依照這篇文件,在佈署Ops Manager的ova檔時把公鑰內容貼到Customize template過程中的Public SSH Key:欄位內容中就可以了

u1

從舊版升級

可參考這篇文件,我們發現安裝好的VM他的Public Key是被放在以下的地方,未來如果需要重置公鑰,可以到這裡來做更換。

U2

依此,我們以後就可以用以下方式登入到Ops Manager去執行一些bosh的指令了,範例:

$ ssh root@pks-client.pks.abc.com

# ssh -i ~/.ssh/id_rsa ubuntu@opsman.pks.abc.com

$ source bosh-var (bosh-var是一些bosh的環境變數宣告集合檔案)

$ bosh vms