As the value for `control-plane.alpha.kubernetes.io/leader` is the output
of json marshal. So, you can not just use the kubectl command line `kubectl
-s http://APISERVER --namespace=kube-system get endpoints
kube-controller-manager -o
jsonpaata.annotations.control-plane\.alpha\.kubernetes\.io/leader}'` to
extract. But be using `jq` you can do this `kubectl -s http://APISERVER
--namespace=kube-system get endpoints kube-controller-manager -o
jsonpath='{.metadata.annotations.control-plane\.alpha\.kubernetes\.io/leader}'|jq
'.holderIdentity'`
在 2017年7月1日星期六 UTC+8上午3:24:20,Junaid Subhani写道:
>
> Hello Jerzy ,
>
> Is there a much more direct way to get just the value of *holderIdentity *
> ?
>
> My request :
>
> http://
> 172.29.240.172:8080/api/v1/namespaces/kube-system/endpoints/kube-controller-manager
>
> This gives me :
>
> { "kind": "Endpoints", "apiVersion": "v1", "metadata": { "name":
> "kube-controller-manager", "namespace": "kube-system", "selfLink":
> "/api/v1/namespaces/kube-system/endpoints/kube-controller-manager", "uid":
> "89e09aae-5dc6-11e7-89c1-0050569b569d", "resourceVersion": "19152",
> "creationTimestamp": "2017-06-30T19:01:35Z", "annotations": {
> "control-plane.alpha.kubernetes.io/leader":
> "{\"holderIdentity\":\"master2\",\"leaseDurationSeconds\":15,\"acquireTime\":\"2017-06-30T19:01:35Z\",\"renewTime\":\"2017-06-30T19:18:01Z\",\"leaderTransitions\":0}"
> } }, "subsets": [] }
>
> I basically need to configure HAProxy based on the value of holderIdentity
>
>
>
> On Tuesday, 14 February 2017 09:18:54 UTC-5, Jerzy Szczepkowski wrote:
>>
>> You can get it from endpoints resource. The endpoint should have an
>> annotation pointing to the leader.
>>
>> $ kubectl get endpoints kube-controller-manager --namespace=kube-system
>> -o yaml
>>
>> apiVersion: v1
>> kind: Endpoints
>> metadata:
>> annotations:
>> *control-plane.alpha.kubernetes.io/leader
>> <http://control-plane.alpha.kubernetes.io/leader>*: '{"holderIdentity":"
>> *kubernetes-master*
>> ","leaseDurationSeconds":15,"acquireTime":"2017-02-14T14:05:57Z","renewTime":"2017-02-14T14:14:42Z","leaderTransitions":0}'
>> ...
>>
>>
>> Regards,
>> Jerzy
>>
>> On Tue, Feb 14, 2017 at 2:27 PM, Qian Zhang <[email protected]> wrote:
>>
>>> Hi,
>>>
>>> I have a Kubernetes HA cluster which consists of 3 master nodes, each of
>>> them has kube-apiserver, kube-scheduler and kube-controller-manager
>>> running, and kube-scheduler and kube-controller-manager are started with
>>> the option "--leader-elect", my question is, is there a way to tell the
>>> current leader of kube-scheduler/kube-controller-manager? E.g., a
>>> Kubernetes API to get such info? Or directly get it from etcd?
>>>
>>>
>>> Thanks,
>>> Qian Zhang
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Kubernetes user discussion and Q&A" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at https://groups.google.com/group/kubernetes-users.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
--
You received this message because you are subscribed to the Google Groups
"Kubernetes user discussion and Q&A" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/kubernetes-users.
For more options, visit https://groups.google.com/d/optout.