minikube不是以 basic-auth 开头的。所以默认没有 apiserver 的用户名和密码。要访问 apiserver,您需要使用 apiserver 证书。这就是你将被授权的方式。
curl https://192.168.99.100:8443 --cert ~/.minikube/apiserver.crt --key ~/.minikube/apiserver.key --cacert ~/.minikube/ca.crt
阅读详情:
获取您的 minikube IP 地址
$ minikube ip
192.168.99.100
API 服务器8443
默认运行
现在尝试使用此连接 apiserver
$ curl https://192.168.99.100:8443
curl: (60) SSL certificate problem: unable to get local issuer certificate
需要提供CA证书
$ curl https://192.168.99.100:8443 --cacert ~/.minikube/ca.crt
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {
},
"status": "Failure",
"message": "Unauthorized",
"reason": "Unauthorized",
"code": 401
}⏎
现在您需要提供 apiserver SSL 证书和密钥
curl https://192.168.99.100:8443 --cert ~/.minikube/apiserver.crt --key ~/.minikube/apiserver.key --cacert ~/.minikube/ca.crt
{
"paths": [
"/api",
"/api/v1",
....
"/ui",
"/ui/",
"/version"
]
}⏎
注意:您也可以代理 apiserver
$ kubectl proxy --port=8433
$ curl 127.0.0.1:8433
现在您不需要提供任何证书。你被授权了