【问题标题】:How to detect the active Controller Manager and Scheduler in a Kubernetes HA Master setup?如何在 Kubernetes HA Master 设置中检测活动的 Controller Manager 和 Scheduler?
【发布时间】:2018-07-26 17:33:29
【问题描述】:

我设置了一个 kubernetes 集群,其中 master 具有 高可用性:3 个 etcd 节点、3 个 apiservers、3 个控制器管理器和 3 个调度程序。 api 服务器前面有一个负载均衡器。我看到 apiservers 作为 Active-Active 运行,而 Controller Manager 和 Scheduler 作为 Active/Standby 运行。有谁知道如何在 HA Master 设置中检测活动的 Controller Manager 和 Scheduler?

所有 K8s 基础设施组件都由 systemd 而非 dockerd 管理。

谢谢。

【问题讨论】:

    标签: kubernetes high-availability


    【解决方案1】:

    在我的例子中,检索端点 yaml 并查看“...kubernetes.io/leader”注释的“holderIdentity”字段。

    【讨论】:

    • 谢谢!在我的情况下:kubectl -n kube-system get ep kube-scheduler -o yaml apiVersion: v1 kind: Endpoints metadata: annotations: control-plane.alpha.kubernetes.io/leader: '{"holderIdentity":"kubem02","leaseDurationSeconds":15,"acquireTime":"2017-08-25T08:11:24Z","renewTime":"2017-08-25T08:11:48Z","leaderTransitions":6}' creationTimestamp: 2017-08-22T10:52:02Z name: kube-scheduler namespace: kube-system resourceVersion: "284677" selfLink: /api/v1/namespaces/kube-system/endpoints/kube-scheduler uid: ee232b16-8727-11e7-81f6-000c29f8a512
    【解决方案2】:

    我使用以下命令找出领导者

    kubectl proxy --port=8000
    
    curl 127.0.0.1:8000/api/v1/namespaces/kube-system/endpoints/kube-controller-manager | grep leader
    
    curl 127.0.0.1:8000/api/v1/namespaces/kube-system/endpoints/kube-scheduler | grep leader
    

    【讨论】:

      猜你喜欢
      • 2019-09-30
      • 1970-01-01
      • 2021-04-05
      • 1970-01-01
      • 1970-01-01
      • 2020-07-01
      • 1970-01-01
      • 2019-08-11
      • 2020-05-09
      相关资源
      最近更新 更多