我在本地macOS上成功安装了opneshift集群,但是默认情况下放置了AllowAll identityProvider
,所以我先运行了oc cluster down
然后运行oc cluster up --http-proxy=gateway.docker.internal:3128 --https-proxy=gateway.docker.internal:3129 --base-dir="$HOME/.occluster" --write-config
并在master-config.yaml
中运行了kube -apiserver,openshift-apiserver和openshift-controller-manager我更改了这些值:
identityProviders:
- name: my_htpasswd_provider
challenge: true
login: true
mappingMethod: claim
provider:
apiVersion: v1
kind: HTPasswdPasswordIdentityProvider
file: /etc/origin/master/htpasswd
当我像以前一样运行oc cluster up
但没有--write-config
标志时,我得到以下信息:
I0513 12:45:46.901048 26313 run_self_hosted.go:181] Waiting for the kube-apiserver to be ready ...
E0513 12:50:47.962414 26313 run_self_hosted.go:571] API server error: Get https://127.0.0.1:8443/healthz?timeout=32s: EOF ()
Error: timed out waiting for the condition
我不明白哪里出了错误,应该怎么做才能消除错误
答案 0 :(得分:0)
问题是我没有将htpasswd
文件放入kube-apiserver
文件夹中。将其放置在此处可以成功安装具有指定identityProvider
的群集。另外,要以system:admin
身份登录,我必须运行export KUBECONFIG=/path/to/admin.kubeconfig"
。我期待的是如何向群集中添加更多用户,因为正如我记得的那样,更新htpasswd
文件不是解决方案。