kubernetes - 部署 nginx 入口控制器时错误创建资源“configmaps”
问题描述
我完全按照this_tutorial来部署nginx 入口控制器。用于部署入口控制器和描述输出的 yaml 文件被复制到repo。
创建 ingress-controller 后,pod 正在运行,但在 ingress-controller 日志中看到以下错误。该错误表示服务帐户“nginx”无权在命名空间“ingress”中创建资源“configmaps”。
我有一个问题,
- ClusterRole 中需要哪些动词才能允许服务帐户“nginx”在我的命名空间中创建配置映射?
- 为什么服务帐户“nginx”必须在命名空间中创建配置映射?因为,入口控制器已经在命名空间中有 configmap 那么入口控制器为什么要再次尝试创建呢?
E1115 15:05:49.678247 7 leaderelection.go:228] 最初创建领导选举记录时出错:configmaps 被禁止:用户“system:serviceaccount:ingress:nginx”无法在命名空间“ingress”中的 API 组“”中创建资源“configmaps” "
(截断)
I1115 15:05:49.742498 7 controller.go:220] 入口后端成功重新加载... E1115 15:06:03.379102 7 leaderelection.go:228] 最初创建领导选举记录时出错:禁止配置映射:用户“system:serviceaccount: ingress:nginx" 无法在命名空间 "ingress" 中的 API 组 "" 中创建资源 "configmaps"
可以从this_file访问详细的 kubectl 日志。
[编辑]
root@desktop:~/github/# kubectl get -n ingress all
NAME READY STATUS RESTARTS AGE
pod/default-backend-7fcd7954d6-gdmvt 1/1 Running 0 3d14h
pod/default-backend-7fcd7954d6-hf65b 1/1 Running 0 3d14h
pod/nginx-ingress-controller-65bfcb57ff-9nz88 1/1 Running 0 2d22h
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/default-backend ClusterIP 10.100.x.y <none> 80/TCP 3d14h
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
deployment.apps/default-backend 2 2 2 2 3d14h
deployment.apps/nginx-ingress-controller 1 1 1 1 2d22h
NAME DESIRED CURRENT READY AGE
replicaset.apps/default-backend-7fcd7954d6 2 2 2 3d14h
replicaset.apps/nginx-ingress-controller-65bfcb57ff 1 1 1 2d22h
root@desktop:~/github# kubectl get -n ingress configmap
NAME DATA AGE
nginx-ingress-controller-conf 1 3d14h
解决方案
推荐阅读
- unity3d - Physics2D中的Unity RaycastHit2D.Raycast不工作
- avro - 如何将 fixed_len_byte_array 与 Java 绑定?
- debian - 如何在 Debian VM 上升级 HAProxy?
- python - 是否可以从熊猫数据框中的图像中读取表格数据?
- html - 获取“NullInjectorError:NgControl 没有提供程序!” 使用自定义控件时
- c# - 如何在 C# 中序列化时删除列表类型属性名称以及 {} 和 [] 括号
- c# - 如何在 Winform 应用程序控制台应用程序或 C# 中的任何类方法中使用动作过滤器
- powershell - Get-MailboxFolderStatistics 输出文件仅显示数字
- r - 在 R,factoectra 中,如何解释 CA 的结果(对应分析)
- spring - crud 编辑器中的 Vaadin 上传组件