Kubernetes 命名空间到底是什么,它与 linux 命名空间(mnt、pid、net、ipc、uts、user、cgroup)有何不同?
最佳答案
与 linux 命名空间没有关系。Kubernetes 命名空间是一个逻辑构造,用于在多个用户之间隔离集群资源(如 pod、secrets)。您可以使用角色和角色绑定(bind)来应用 RBAC,它定义了谁可以在哪个命名空间中执行什么操作。这就是使用命名空间实现隔离的方式。在内部,集群资源存储在 ETCD(键值存储)中,kubernetes API 服务器允许或拒绝用户根据 RBAC 策略中定义的内容对集群资源执行 CRUD 操作的请求。有趣的是,如果你能以某种方式访问 ETCD,那么你就可以在所有命名空间中做任何事情。所以控制在 Kubernetes API Server 层。
关于kubernetes - Kubernetes 命名空间和 Linux 命名空间之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61628540/