
rancher/mirrored-brancz-kube-rbac-proxy本镜像为 quay.io/brancz/kube-rbac-proxy 的镜像,是一个轻量级代理工具,用于在 Kubernetes 集群中为 HTTP 服务提供基于 RBAC(基于角色的访问控制)的认证与授权能力。其核心功能是作为中间层,拦截对上游 HTTP 服务的请求,通过 Kubernetes API Server 验证请求者的 RBAC 权限,仅允许授权用户/服务访问上游服务。
bashdocker run -d \ --name kube-rbac-proxy \ -p 8080:8080 \ -v /path/to/tls:/tls \ quay.io/brancz/kube-rbac-proxy:latest \ --upstream=[***] \ # 上游 HTTP 服务地址 --listen-address=0.0.0.0:8080 \ # 代理监听地址和端口 --tls-cert-file=/tls/tls.crt \ # TLS 证书文件路径 --tls-key-file=/tls/tls.key \ # TLS 私钥文件路径 --authorization-header=authorization \ # 携带认证信息的请求头 --allowed-group=system:masters # 允许访问的 RBAC 组(示例)
| 参数名 | 类型 | 描述 |
|---|---|---|
--upstream | 字符串 | 上游 HTTP 服务地址(必填),格式为 http://<host>:<port> 或 https://<host>:<port>。 |
--listen-address | 字符串 | 代理服务监听地址和端口(默认 0.0.0.0:8080)。 |
--tls-cert-file | 字符串 | TLS 证书文件路径(启用 TLS 时必填)。 |
--tls-key-file | 字符串 | TLS 私钥文件路径(启用 TLS 时必填)。 |
--tls-ca-file | 字符串 | 用于验证客户端证书的 CA 证书文件路径(可选,启用双向 TLS 时使用)。 |
--authorization-header | 字符串 | 携带认证令牌的 HTTP 请求头(默认 authorization),通常为 Bearer 令牌。 |
--allowed-group | 字符串 | 允许访问的 Kubernetes RBAC 组(可重复指定,支持多个组)。 |
--allowed-user | 字符串 | 允许访问的 Kubernetes RBAC 用户(可重复指定,支持多个用户)。 |
--logtostderr | 布尔值 | 是否将日志输出到标准错误流(默认 true)。 |
--v | 整数 | 日志 verbosity 级别(默认 0,值越高日志越详细)。 |
该镜像主要通过命令行参数配置,无强制依赖的环境变量。若需动态注入配置(如 TLS 证书路径),可通过环境变量传递参数值,例如:
bashdocker run -e UPSTREAM=[***] quay.io/brancz/kube-rbac-proxy:latest --upstream=$UPSTREAM
在 Kubernetes 中,通常以 Deployment 或 DaemonSet 形式部署,以下为 Deployment 配置示例:
yamlapiVersion: apps/v1 kind: Deployment metadata: name: kube-rbac-proxy spec: replicas: 1 selector: matchLabels: app: kube-rbac-proxy template: metadata: labels: app: kube-rbac-proxy spec: containers: - name: kube-rbac-proxy image: quay.io/brancz/kube-rbac-proxy:latest args: - --upstream=[***] # 上游服务(如 Prometheus Exporter) - --listen-address=0.0.0.0:8443 - --tls-cert-file=/etc/tls/tls.crt - --tls-key-file=/etc/tls/tls.key - --allowed-group=monitoring:viewers ports: - containerPort: 8443 volumeMounts: - name: tls-secret mountPath: /etc/tls readOnly: true volumes: - name: tls-secret secret: secretName: kube-rbac-proxy-tls # 包含 TLS 证书的 Secret
allowed-group/allowed-user 与 RBAC 策略匹配。


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务