여러 Kube 클러스터 관리(쉬운 방법)

3198 단어 devopskubernetes
여러 Kubernetes 클러스터에서 사용자를 관리하려고 시도한 적이 있다면 내가 말하려는 고통을 알 것입니다.

클러스터를 불러온 후 가장 먼저 해야 할 일은 몇 가지 권한을 정의하는 것입니다. 역할 및 클러스터 역할을 설정하여 이를 수행합니다.

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  annotations:
    rbac.authorization.kubernetes.io/autoupdate: "true"
  creationTimestamp: "2022-07-20T23:53:17Z"
  labels:
    kubernetes.io/bootstrapping: rbac-defaults
  name: cluster-admin
  resourceVersion: "76"
  uid: 15d14062-0879-4232-9f42-51b79c0835f9
rules:
- apiGroups:
  - '*'
  resources:
  - '*'
  verbs:
  - '*'
- nonResourceURLs:
  - '*'
  verbs:
  - '*'


역할에 규칙을 정의한 후에는(이 문서 범위 밖) 특정 사용자를 역할 또는 클러스터 역할과 연결하는 클러스터 역할 바인딩 또는 역할 바인딩을 만들어야 합니다. 이것이 지나치게 복잡하게 들린다면 아마도 그럴 것이기 때문입니다.

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  annotations:
    rbac.authorization.kubernetes.io/autoupdate: "true"
  creationTimestamp: "2022-07-20T23:53:17Z"
  labels:
    kubernetes.io/bootstrapping: rbac-defaults
  name: cluster-admin
  resourceVersion: "138"
  uid: 5ef726c1-01df-4ecd-8951-909698ef5472
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- apiGroup: rbac.authorization.k8s.io
  kind: Group
  name: system:masters


예, 그리고 잊은 경우... 불러오는 모든 클러스터에 대해 이 작업을 수행해야 합니다.

더 쉬운 방법이 있음을 알려드리려고 왔습니다!

쉬운 버튼



Portainer BE를 사용하면 GUI에서 사용자를 설정할 수 있습니다.



그런 다음 팀이라는 그룹에 사용자를 할당할 수 있습니다.



그런 다음 역할을 환경별로 그룹에 연결할 수 있습니다.





이제 이러한 동일한 팀과 역할을 각 환경에 할당할 수 있습니다. Kubernetes는 백그라운드에서 사용자 연결을 가져오고 클러스터 역할은 각 클러스터로 푸시됩니다. 이제 할 일은 해당 사용자와 연결된 kubeconfig 파일을 가져오는 것뿐입니다.





사용자와 연결된 모든 클러스터는 kubeconfig의 일부가 되며 kubeconfig는 모든 호출을 관리하는 프록시를 가리킵니다. 사용자가 portainer의 팀에서 제외되면 이러한 변경 사항은 클러스터 전체에 즉시 적용됩니다.

이 방법으로 여러 클러스터 액세스를 관리하는 것이 얼마나 쉬운지 알 수 있습니다. 더 많은 데모를 보려면 이 게시물에 첨부된 비디오를 확인하십시오.

좋은 웹페이지 즐겨찾기