我正在使用全新安装的openshift:
oc v3.11.0+62803d0-1
kubernetes v1.11.0+d4cacc0
features: Basic-Auth GSSAPI Kerberos SPNEGO
Server https://master.mydomain.fr:8443
openshift v3.11.0+2bcedfc-77
kubernetes v1.11.0+d4cacc0
我有3个节点:
[root@master centos]# oc get node
NAME STATUS ROLES AGE VERSION
master.mydomain.fr Ready master 1d v1.11.0+d4cacc0
node1.mydomain.fr Ready infra 1d v1.11.0+d4cacc0
node2.mydomain.fr Ready compute 1d v1.11.0+d4cacc0
node3.mydomain.fr Ready compute 1d v1.11.0+d4cacc0
node4.mydomain.fr Ready compute 1d v1.11.0+d4cacc0
我已成功配置了所有内容,但现在尝试访问grafana仪表板。我创建了一条路线:
grafana.mydomain.fr
我被重定向到OauthProxy的登录按钮。当我单击Login时,我将使用Json重定向到空白页:
{"error":"invalid_request","error_description":"The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed.","state":"7f3a18c95ae8237d39d35bf8ff317ae4:/"}
这是我得到的URI:
https://master.mydomain.fr:8443/oauth/authorize?approval_prompt=force&client_id=system%3Aserviceaccount%3Aopenshift-monitoring%3Agrafana&redirect_uri=https%3A%2F%2Fgrafana.mydomain.fr%2Foauth%2Fcallback&response_type=code&scope=user%3Ainfo+user%3Acheck-access&state=7f3a18c95ae8237d39d35bf8ff317ae4%3A%2F
查看日志后,我得到:
no RBAC policy matched
我很确定它已链接到我的配置(也许重定向URI不正确),但老实说我不知道如何配置它。你有个主意吗?
预先感谢
答案 0 :(得分:0)
在尝试公开Prometheus(OpenShift 3.11)时,我遇到了完全相同的问题,这就是我解决问题的方法。
由于该问题无法明确说明路由名称,并且如果您创建了grafana
以外的路由,这是openshift随附的默认帐户。那么原因之一可能是路由名称,这是因为根据以下部分,在身份验证过程中使用的serviceAccount
预期将与名为grafana
的路由一起使用:
# Taken from grafana's serviceAccount
metadata:
annotations:
serviceaccounts.openshift.io/oauth-redirectreference.grafana: '{"kind":"OAuthRedirectReference","apiVersion":"v1","reference":{"kind":"Route","name":"grafana"}}'
这使得身份验证特别适用于名为grafana
的路由,因此可以使用所需的域来修改原始路由,或者使用您创建的新路由器来修改此注释。