kubernetes - 为 Kubernetes 命名空间设置部署锁?
问题描述
我想使用多个服务执行系统测试。在测试期间,我想防止为给定的命名空间发生部署,以获得稳定的环境。有可能有这样的锁吗?
我的用例是 CI/CD 流:
我将有 bitbucket / gitlab 管道,部署一个服务。然后我想在命名空间内的多个服务之间执行系统测试。在此系统测试期间,我想阻止部署以使测试更加稳定。
解决方案
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: user
namespace: mynamespace
---
kind: Role
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: user-full-access
namespace: mynamespace
rules:
- apiGroups: ["", "extensions", "apps"]
resources: ["*"]
verbs: ["*"]
- apiGroups: ["batch"]
resources:
- jobs
- cronjobs
verbs: ["*"]
---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: mynamespace-user-view
namespace: mynamespace
subjects:
- kind: ServiceAccount
name: user
namespace: mynamespace
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: user-full-access
推荐阅读
- python - 如何将字典列表转换为具有相同键和值总和的字典?
- wpf - Wpf 屏幕边缘滑动检测
- sql - 将 PIVOT 与 SQL 中的总和结合使用
- python-3.x - 在 Python PyGobject 中导入 gi.repository 时出现分段错误?
- python - Tkinter overrideredirect 在 Mac OS X 中不起作用
- python - 如何使用 Cloud Firestore 在 django 中获取/获取表单数据?
- python - 在excel python中存储来自for循环的数据
- matlab - 在 MATLAB 中的另一个图像上覆盖具有透明区域的 png 图像
- node.js - 连接 react native 和 node js
- python - 比较另一个数据框中一列数据框的值