无法使用htpasswd安装Openshift集群

时间:2020-05-13 10:01:22

标签: macos kubernetes openshift

我在本地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

我不明白哪里出了错误,应该怎么做才能消除错误

1 个答案:

答案 0 :(得分:0)

问题是我没有将htpasswd文件放入kube-apiserver文件夹中。将其放置在此处可以成功安装具有指定identityProvider的群集。另外,要以system:admin身份登录,我必须运行export KUBECONFIG=/path/to/admin.kubeconfig"。我期待的是如何向群集中添加更多用户,因为正如我记得的那样,更新htpasswd文件不是解决方案。