30.4 重新啟動 Azure Kubernetes 叢集

執行以下步驟以確定所有 IDM 元件正常關閉:

  1. 登入 Azure 入口網站。

  2. 移至您的 Kubernetes 叢集。

  3. 在「Kubernetes 資源」下,按一下工作負載。

  4. 移至部署索引標籤,按一下依名稱空間過濾下拉式清單,然後選取您的名稱空間。

  5. 選取部署並按一下刪除。

  6. 移至 Pod 索引標籤,按一下依名稱空間過濾下拉式清單,然後選取您的名稱空間。

  7. 按一下重新整理,檢查是否已完全移除元件 Pod。

  8. 移至具狀態集索引標籤,按一下依名稱空間過濾下拉式清單,然後選取您的名稱空間。

  9. 選取具狀態集並按一下刪除。

  10. 同樣,移至 Pod 索引標籤,按一下依名稱空間過濾下拉式清單,然後選取您的名稱空間。

  11. 按一下重新整理,檢查是否已完全移除元件。

  12. 移至「Kubernetes 資源」下的「綜覽」,按一下停止並等待一段時間。

  13. 叢集完全停止後,按一下啟動。

  14. 在 Azure CLI 中,執行以下指令重新啟動 Nginx-ingress 控制器:

    helm upgrade nginx-ingress ingress-nginx/ingress-nginx --namespace <your namespace> --set controller.replicaCount=1 --set controller.service.loadBalancerIP=<Public IP address assigned to load balancer> --set controller.service.annotations."service\.beta\.kubernetes\.io/azure-dns-label-name"=<LoadBalancerName>

    例如

    helm upgrade nginx-ingress ingress-nginx/ingress-nginx --namespace idm --set controller.replicaCount=1 --set controller.service.loadBalancerIP=192.168.0.1 --set controller.service.annotations."service\.beta\.kubernetes\.io/azure-dns-label-name"=identitymanager

  15. 執行以下指令重新啟動剩餘元件:

    helm upgrade identity-manager helm_charts/identity-manager-1.5.0.tgz --namespace <namespace> -f values.yaml

    例如

    helm upgrade identity-manager helm_charts/identity-manager-1.5.0.tgz --namespace idm -f values.yaml

  16. 等待所有 Pod 進入就緒狀態。

    若要檢查 Pod 的目前狀態,請執行以下指令:

    kubectl get pods --watch -n <namespace>
  17. 執行以下指令重新啟動引擎服務:

    kubectl rollout restart -n <namespace> statefulset/identityengine

    例如

    kubectl rollout restart -n idm statefulset/identityengine

  18. 重複 步驟 16.