如何从浏览器连接到 kubernetes-api?
How to connect to kubernetes-api from a browser?
本教程我搭建了一个cybernetes集群https://coreos.com/kubernetes/docs/latest/deploy-master.html
当您打开浏览器时https://my_ip
我得到 Unauthorized
.
您需要做什么才能访问 API?
~/kubectl 配置视图`
apiVersion: v1
clusters:
- cluster:
certificate-authority: /home/hhh/ca.pem
server: https://192.168.0.139
name: default-cluster
contexts:
- context:
cluster: hhh-cluster
user: hhh
name: default-system
current-context: default-system
kind: Config
preferences: {}
users:
- name: cluster-hhh
user:
password: admin
username: admin
- name: default-admin
user:
client-certificate: /home/hhh/admin.pem
client-key: /home/hhh/admin-key.pem
基本身份验证无效
使用 kubectl
时基本身份验证是否有效(从您的输出中不清楚连接到集群的 apiserver 时哪些客户端凭据有效)?
启动时是否将 --basic-auth-file
传递给 kube-apiserver 进程(参见 https://github.com/kubernetes/kubernetes/blob/master/cmd/kube-apiserver/app/server.go#L218)?如果不是,那么在连接到您的 apiserver 时基本身份验证将不起作用?如果是这样,您可以通过 运行 curl -k --user admin:admin https://192.168.0.139
验证它是否正常工作。
如果您想要(或需要)使用浏览器中的客户端证书,请查看我在 this github issue 中添加的关于如何简化配置的说明。
本教程我搭建了一个cybernetes集群https://coreos.com/kubernetes/docs/latest/deploy-master.html
当您打开浏览器时https://my_ip
我得到 Unauthorized
.
您需要做什么才能访问 API?
~/kubectl 配置视图`
apiVersion: v1
clusters:
- cluster:
certificate-authority: /home/hhh/ca.pem
server: https://192.168.0.139
name: default-cluster
contexts:
- context:
cluster: hhh-cluster
user: hhh
name: default-system
current-context: default-system
kind: Config
preferences: {}
users:
- name: cluster-hhh
user:
password: admin
username: admin
- name: default-admin
user:
client-certificate: /home/hhh/admin.pem
client-key: /home/hhh/admin-key.pem
基本身份验证无效
使用 kubectl
时基本身份验证是否有效(从您的输出中不清楚连接到集群的 apiserver 时哪些客户端凭据有效)?
启动时是否将 --basic-auth-file
传递给 kube-apiserver 进程(参见 https://github.com/kubernetes/kubernetes/blob/master/cmd/kube-apiserver/app/server.go#L218)?如果不是,那么在连接到您的 apiserver 时基本身份验证将不起作用?如果是这样,您可以通过 运行 curl -k --user admin:admin https://192.168.0.139
验证它是否正常工作。
如果您想要(或需要)使用浏览器中的客户端证书,请查看我在 this github issue 中添加的关于如何简化配置的说明。