奈学百万云原生架构师

爱分享 爱生活 加油 2021 

百度网盘api

提取码:qhhv 网络

简介

本文将介绍Kubernetes基于角色的访问控制(RBAC)API对象,以及两个常见的用例(建立具备受限访问权限的用户、POD内经过service account访问api)。在本文的最后,您应该具备足够的知识来在集群中使用RBAC策略。ide

从Kubernetes 1.6版本起,系统默认启用RBAC策略。 RBAC策略对于正确管理群集相当重要,由于它们使您能够根据用户及其在组织中的角色来指定容许的操做类型。包括:工具

  • 经过仅向管理员用户授予特权操做(例如访问机密)来保护集群。
    在集群中强制用户认证。
  • 将资源建立(例如pod,持久卷,部署)限制为特定的名称空间。您还可使用配额来确保资源使用受到限制并受到控制。
  • 让用户仅在其受权的名称空间中查看资源。这使您能够隔离组织内的资源(例如,部门之间)。
  • 因为默认启用了RBAC,所以在配置网络(例如flanneld)或使Helm时,您可能会看到相似这样的错误:
the server does not allow access to the requested resource

本文将向您展现如何使用RBAC,以便您能够正确处理此类问题。spa

准备工做

为了充分的了解本文,建议您有一套完整的Kubernetes环境,并能按咱们的步骤完成整个过程,环境要求以下:命令行

  • Kubernetes 1.6以上版本,1.6前的版本,须要手动启用RBAC,若是您是在本机用minikube安装kubernetes,命令行以下:
minikube start --extra-config=apiserver.Authorization.Mode=RBAC
  • 安装kubectl命令行工具。
  • 安装了OpenSSL。

RBAC API 对象

Kubernetes的一项基本功能是其全部资源都是模型化的API对象,该对象容许进行CRUD(建立,读取,更新,删除)操做。 资源包括:code

  • Pods.
  • PersistentVolumes.
  • ConfigMaps.
  • Deployments.
  • Nodes.
  • Secrets.
  • Namespaces.

这些资源上可能的操做示例以下:server

  • create
  • get
  • delete
  • list
  • update
  • edit
  • watch
  • exec
相关文章
相关标签/搜索