从pod访问主机节点上的kubelet API时,可以/必须/应该使用哪些协议?

时间:2017-01-07 08:39:58

标签: kubernetes

目标

我正在寻求澄清访问Kubelet API的细微差别。

上下文

我有一个pod所在的节点(物理主机的IP)的IP。我想调用Kubelet API(在节点上运行),例如${node_ip}:10255

问题(S)

  1. 协议可以是HTTP吗?
    • 如果它可以是HTTP,我是否需要提供任何形式的身份验证,例如不记名代币?
  2. 如果必须是HTTPS,我必须提供哪种形式的身份验证?
    • 不记名令牌?
    • 证书?

1 个答案:

答案 0 :(得分:0)

kubelet可以监听两个端口。

--read-only-port是用于Kubelet的http只读端口,无需身份验证/授权(默认为10255,可以设置为0以禁用)。如果启用,则仅提供只读数据,并且不公开允许pod exec / attach / proxy等的API。

--port是Kubelet的https端口,可以通过可选的身份验证/授权为其所有API提供服务。 (默认为10250)

有关安全端口的身份验证/授权选项,请参阅http://kubernetes.io/docs/admin/kubelet-authentication-authorization/

身份验证选项包括客户端证书,API承载令牌以及允许匿名请求。

授权选项包括允许所有请求并通过SubjectAccessReview API将授权委托给API服务器