預設為4.14及更早版本建立的叢集啟用安全
Virtual Private Cloud 4.14及更早版本
以下步驟將引導您完成在4.15之前建立的叢集上啟用預設情況下透過安全性引入的安全性群組配置。 預設安全網路為在4.15及更高版本中建立的新配置的 VPC 叢集引入了新的安全性群組配置和行為。 在版本4.14及更早版本中建立的叢集在更新到4.15時不會獲得預設安全性群組配置。
依預設,在叢集上啟用安全是永久且無法回復的。 啟用程序需要您更換群集中的所有工作者節點。 只有在有利的情況下,才啟用預設安全。 請注意,在取代所有工作者之前,負載平衡器可能無法存取。 有關詳細信息,請參閱 了解預設安全性。
準備啟用預設安全
請注意,當您在叢集上預設啟用安全性時,則僅允許叢集運行所需的流量,並阻止所有其他存取。
-
驗證您的叢集的版本預設支援安全性。 將您的叢集至少更新到4.15。
-
驗證您的叢集預設尚未安全。 您可以透過運行
ibmcloud ks cluster get並查看輸出來找到它。 -
驗證目前沒有任何工作站節點處於佈建狀態。
Retrieving cluster CLUSTER... OK Name: CLUSTER ID: CLUSTER State: normal Status: All Workers Normal ... Secure By Default Networking: enabled Outbound Traffic Protection: enabled -
確認您不會超出以下任何配額。 如果超出以下任何配額,啟用程序將失敗。 有關更多信息,請參閱 VPC 配額。
- 您的 VPC 中的集群數量不得超過 15 個。 最多有 15 條規則可以將其他安全群組作為其來源或目標。 預設情況下,Red Hat OpenShift on IBM Cloud對 VPC 中的每個叢集套用 1 個針對
kube-<clusterID>安全性群組的規則。 由於此配額,在給定 VPC 中只能建立 15 個群集。 - 您的 VPC 中的安全群組不得超過 95 個。 一個VPC中最多可以有100個安全群組。 預設啟用安全性會建立 4 個安全性群組。 如果您已有接近 100 個安全群組,請考慮在繼續之前減少或合併它們。
- 您的叢集工作執行緒必須有 4 個或更少的安全性群組。 叢集工作人員最多可以有 5 個安全群組。 預設啟用安全性會為您的工作人員新增一個安全性群組。
- 您的 VPC 中的集群數量不得超過 15 個。 最多有 15 條規則可以將其他安全群組作為其來源或目標。 預設情況下,Red Hat OpenShift on IBM Cloud對 VPC 中的每個叢集套用 1 個針對
-
如果您在現有叢集工作線程安全群組 (
kube-<clusterID>) 上有自訂安全群組規則,它們將在啟用期間被刪除。 如果您想保留這些規則,請提前記下它們,並在啟用後添加它們。
當我預設啟用安全性時會發生什麼?
當您啟用預設安全性時,將建立或更新以下一組預設安全性安全性群組。
| 安全群組 | 變更說明 |
|---|---|
kube-<clusterID> |
叢集工作線程安全群組 ( kube-<clusterID> ) 已重設。 此安全性群組附加到您的叢集工作執行緒。 通常,這個群組已經存在。 但是,如果您的工作執行緒目前僅使用您自己的自訂、使用者定義的安全性群組,則在初始建立叢集期間不會建立此安全性群組。 在這種情況下,該組已建立。 所有現有規則都將被刪除,新的預設安全性安全群組規則將會新增到該安全性群組中。 負載平衡器將規則應用於叢集工作執行緒和負載平衡器安全性群組。 |
kube-vpegw-<clusterID> |
已為主 VPE 閘道建立新安全群組。 任何現有規則都將被刪除。 因為這是一個新團體,很可能沒有規則。 |
kube-vpegw-<vpcID> |
適用於共用 VPE 閘道的新安全群組。 如果您的 VPC 中存在現有的預設安全集群,則此安全群組可能已經存在。 由於該組由所有集群共享,因此僅創建一次。 先前的 VPE 閘道安全性群組 ( kube-<vpcID> ) 將從所有IBM管理的共用 VPE 閘道中刪除,並替換為新的共用 VPE 閘道安全性群組 ( kube-vpegw-<vpcID> )。如果您的 VPC 中有其他4.15及更高版本的預設安全集群,則可能已經完成此操作。 |
kube-lbaas-<clusterID> |
適用於負載平衡器的新安全性群組。 附加到負載平衡器(NLB 和 ALB)的安全性群組已更新。 先前的負載平衡器安全性群組 ( kube-<vpcID> ) 將從負載平衡器中刪除,並替換為新的負載平衡器安全性群組 ( kube-lbaas-<clusterID> )。如果負載平衡器上不存在先前的安全性群組,則不執行任何操作。 只有IBM管理的負載平衡器和安全群組受到影響。 自訂安全群組不會被刪除或替換。 |
kube-<vpcID> |
先前的 VPE 閘道安全性群組 ( kube-<vpcID> ) 將從主 VPE 閘道中刪除,並替換為新的主 VPE 閘道安全性群組 ( kube-vpegw-<clusterID> )。 |
| 預設VPC安全群組 | 預設VPC安全群組不再使用。 |
| 自訂安全群組 | 附加到叢集工作節點的任何使用者定義的安全群組都會附加到新工作節點。 自訂安全群組不會被刪除或替換。 |
更改的應用順序是什麼?
當您將叢集更新為預設安全性時,將執行下列操作。
-
如果以下一組預設安全的安全性群組尚不存在,則會建立它們。
kube-<clusterID>kube-vpegw-<clusterIDkube-vpegw-<vpcID>kube-lbaas-<clusterID>
-
附加至 VPE 閘道的安全群組已更新。 僅IBM管理的網關和安全群組受到影響。 自訂安全群組不受影響。 如果網關上不存在先前的安全性群組,則不執行任何操作。
-
先前的 VPE 閘道安全性群組 (
kube-<vpcID>) 將從主 VPE 閘道中刪除,並替換為新的主 VPE 閘道安全性群組 (kube-vpegw-<clusterID>)。 -
先前的 VPE 閘道安全性群組 (
kube-<vpcID>) 將從所有IBM管理的共用 VPE 閘道中刪除,並替換為新的共用 VPE 閘道安全性群組 (kube-vpegw-<vpcID>)。如果您的 VPC 中有其他預設安全集群,則可能已經發生這種情況。 -
附加到負載平衡器(NLB 和 ALB)的安全性群組已更新。 僅更新IBM管理的負載平衡器和安全性群組。 自訂安全群組不受影響。 如果負載平衡器上不存在先前的安全性群組,則不執行任何操作。
-
先前的負載平衡器安全性群組 (
kube-<vpcID>) 已從負載平衡器中刪除,並替換為新的負載平衡器安全性群組 (kube-lbaas-<clusterID>) -
叢集工作線程安全群組 (
kube-<clusterID>) 已重設。- 所有現有規則均被刪除。
- 新增了新的預設安全性安全群組規則。
-
負載平衡器規則適用於叢集工作執行緒和負載平衡器安全性群組。
-
主VPE網關安全群組已重設。
- 所有現有規則均被刪除。 但是,由於這是新建立的(在步驟 1 中),因此通常沒有規則。
- 新增的預設安全安全群組規則。
前面的步驟是自動處理的。 但是,預設情況下,在安全性之前建立的叢集會將預設 VPC 安全性群組附加到工作執行緒。 必須刪除此安全性群組,但無法透過IBM提供的自動化來刪除。 因此,您必須手動替換您的工作人員才能完成更新程序。 在工作人員更換期間,會發生以下更新。
-
叢集工作線程安全群組 (
kube-<clusterID>) 和任何先前新增的使用者定義的安全性群組都會附加到新工作線程。 -
預設VPC安全群組不再使用。
預設啟用安全
完成以下步驟,將預設安全的安全性群組配置套用到您的叢集。
-
執行下列指令。
ibmcloud oc vpc secure-by-default enable --cluster <CLUSTER ID> [--disable-outbound-traffic-protection][-f] -
等待處理程序完成。 有多種因素會影響啟用群集預設安全所需的時間。 通常它會在 5 分鐘內完成。 您可以透過檢查新的安全群組來確認程序是否已完成。
- 您的主 VPE 閘道安全群組
kube-vpegw-CLUSTERID包含規則。 - 您的負載平衡安全群組
kube-lbaas-CLUSTERID包含規則。
- 您的主 VPE 閘道安全群組
-
替換叢集中的所有工作節點。
ibmcloud oc worker replace --cluster CLUSTER --worker WORKER -f