我正在尝试为我创建的 openshift 测试单节点开发集群。我无法在集群上运行任何基本命令,因为我没有正确设置特权帐户。
特别是我需要:
- 运行 pod,这些 pod 会生成查询服务端点的容器
- 通过不安全的端点查询 apiserver
- 运行命令,如
kubectl get pods
我可以在某个地方使用可以执行所有这些操作的默认帐户吗?我不希望为诸如此类的低级开发任务手动设置一堆复杂的用户帐户。
以下是我为此所做的一些有点愚蠢的尝试,仅作为示例
首先,我创建了一个这样的“管理员”帐户:
sudo -u vagrant $oc login https://localhost:8443 -u=admin -p=admin --config=/data/src/github.com/openshift/origin/openshift.local.config/master/openshift-registry.kubeconfig
然后,我继续尝试以管理员身份登录几次:
[vagrant@localhost ~]$ sudo chmod 777 /openshift.local.config/master/admin.kubeconfig
[vagrant@localhost ~]$ oc login
Server [https://localhost:8443]:
The server uses a certificate signed by an unknown authority.
You can bypass the certificate check, but any data you send to the server could be intercepted by others.
Use insecure connections? (y/n): y
Authentication required for https://localhost:8443 (openshift)
Username: admin
Password: admin
Login successful.
Using project "project1".
[vagrant@localhost ~]$ oc get nodes --config=/openshift.local.config/master/admin.kubeconfig
这会导致以下错误:
服务器错误:用户“admin”无法列出集群中的所有节点
我也收到此错误,将配置排除在外:
[vagrant@localhost ~]$ oc get nodes
Error from server: User "admin" cannot list all nodes in the cluster
是否有任何简单的方法可以在独立的开发集群中列出节点并执行基本的 kube 操作以进行 openshift?