將路由器與邊緣節點隔離
- 確保您擁有下列 IAM 角色:
- 群集的任何平台存取角色
- 所有命名空間的 Writer 或 Manager 服務存取角色
- 訪問您的Red Hat OpenShift簇。
若要將工作負載隔離到邊緣工作節點:
-
使用標籤建立工作池
dedicated=edge或將標籤新增至您現有的工作池之一。- 要建立經典工作池,您可以使用
worker-pool create classic命令。ibmcloud oc worker-pool create classic --name POOL_NAME --cluster CLUSTER --flavor FLAVOR --size-per-zone WORKERS_PER_ZONE --hardware ISOLATION --label dedicated=edge - 若要建立 VPC 工作池,您可以使用
worker-pool create vpc-gen2命令。ibmcloud oc worker-pool create vpc-gen2 --name POOL_NAME --cluster CLUSTER --flavor FLAVOR --size-per-zone WORKERS_PER_ZONE --hardware ISOLATION --label dedicated=edge - 若要標記現有工作池,您可以使用
worker-pool label set命令。ibmcloud oc worker-pool label set --cluster CLUSTER --worker-pool POOL --label dedicated=edge
- 要建立經典工作池,您可以使用
-
驗證工作者節點儲存區和工作者節點是否具有
dedicated=edge標籤。- 若要檢查工作池,請使用
get命令。ibmcloud oc worker-pool get --cluster <cluster_name_or_ID> --worker-pool <worker_pool_name_or_ID> - 若要檢查個別工作者節點,請檢閱下列指令輸出中的 Labels 欄位。
oc describe node <worker_node_private_IP>
- 若要檢查工作池,請使用
-
擷取群集中所有現有的入口控制器。
oc get ingresscontroller -n openshift-ingress-operator輸出範例
NAME AGE default 5h37m -
編輯入口控制器。
oc edit ingresscontroller -n openshift-ingress-operator default -
設定
spec.nodePlacement字段如下。 欲了解更多信息,請參閱 Red Hat文件。nodePlacement: nodeSelector: matchLabels: dedicated: edge tolerations: - effect: NoSchedule operator: Exists -
儲存並關閉檔案。
-
驗證路由器 Pod 是否排程到邊緣節點,而不是排程到運算節點。
oc describe nodes -l dedicated=edge | grep "router-*"輸出範例
openshift-ingress router-default-7784f69c7c-qq577 100m (2%) 0 (0%) 256Mi (1%) 0 (0%) 5m4s openshift-ingress router-default-7784f69c7c-7rwrj 100m (2%) 0 (0%) 256Mi (1%) 0 (0%) 5m5s -
確認沒有路由器 pod 部署到非邊緣節點。
oc describe nodes -l dedicated!=edge | grep "router-*"如果路由器 pod 已正確部署到邊緣節點,則不會傳回任何路由器 pod。 您的路由器已成功重新排程到僅邊緣工作節點上。
您使用 dedicated=edge 標示工作人員池中的工作人員節點,並將所有現有的 ALB 重新部署到邊緣節點。 所有後續加入群集的 ALB 也會部署到您的邊緣工作站池中的邊緣節點。 接下來,您可以防止其他 在邊緣工作節點上執行的工作負載。