Skip to main content
NetApp Solutions
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Configuração: Tarefas de cluster-admin

Colaboradores

As seguintes tarefas são executadas pelo administrador de cluster Red Hat OpenShift:

  1. Faça login no cluster do Red Hat OpenShift como administrador de cluster.

  2. Crie dois projetos correspondentes a diferentes projetos.

    oc create namespace project-1
    oc create namespace project-2
  3. Crie a função de desenvolvedor para o project-1.

    cat << EOF | oc create -f -
    apiVersion: rbac.authorization.k8s.io/v1
    kind: Role
    metadata:
      namespace: project-1
      name: developer-project-1
    rules:
      - verbs:
          - '*'
        apiGroups:
          - apps
          - batch
          - autoscaling
          - extensions
          - networking.k8s.io
          - policy
          - apps.openshift.io
          - build.openshift.io
          - image.openshift.io
          - ingress.operator.openshift.io
          - route.openshift.io
          - snapshot.storage.k8s.io
          - template.openshift.io
        resources:
          - '*'
      - verbs:
          - '*'
        apiGroups:
          - ''
        resources:
          - bindings
          - configmaps
          - endpoints
          - events
          - persistentvolumeclaims
          - pods
          - pods/log
          - pods/attach
          - podtemplates
          - replicationcontrollers
          - services
          - limitranges
          - namespaces
          - componentstatuses
          - nodes
      - verbs:
          - '*'
        apiGroups:
          - trident.netapp.io
        resources:
          - tridentsnapshots
    EOF
Observação A definição de função fornecida nesta seção é apenas um exemplo. As funções de desenvolvedor devem ser definidas com base nos requisitos do usuário final.
  1. Da mesma forma, crie funções de desenvolvedor para o project-2.

  2. Todos os recursos de storage do OpenShift e do NetApp geralmente são gerenciados por um administrador de storage. O acesso para administradores de storage é controlado pela função de operador Trident criada quando o Trident é instalado. Além disso, o administrador de armazenamento também requer acesso ao ResourceQuotes para controlar como o armazenamento é consumido.

  3. Crie uma função para gerenciar o ResourceQuotes em todos os projetos no cluster para anexá-lo ao administrador de armazenamento.

    cat << EOF | oc create -f -
    kind: ClusterRole
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      name: resource-quotas-role
    rules:
      - verbs:
          - '*'
        apiGroups:
          - ''
        resources:
          - resourcequotas
      - verbs:
          - '*'
        apiGroups:
          - quota.openshift.io
        resources:
          - '*'
    EOF
  4. Certifique-se de que o cluster esteja integrado ao provedor de identidade da organização e que os grupos de usuários sejam sincronizados com grupos de cluster. O exemplo a seguir mostra que o provedor de identidade foi integrado ao cluster e sincronizado com os grupos de usuários.

$ oc get groups
NAME                        USERS
ocp-netapp-storage-admins   ocp-netapp-storage-admin
ocp-project-1               ocp-project-1-user
ocp-project-2               ocp-project-2-user
  1. Configure ClusterRoleBindings para administradores de armazenamento.

    cat << EOF | oc create -f -
    kind: ClusterRoleBinding
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      name: netapp-storage-admin-trident-operator
    subjects:
      - kind: Group
        apiGroup: rbac.authorization.k8s.io
        name: ocp-netapp-storage-admins
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: trident-operator
    ---
    kind: ClusterRoleBinding
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      name: netapp-storage-admin-resource-quotas-cr
    subjects:
      - kind: Group
        apiGroup: rbac.authorization.k8s.io
        name: ocp-netapp-storage-admins
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: resource-quotas-role
    EOF
Observação Para administradores de storage, duas funções devem ser vinculadas: Operador Trident e cotas de recursos.
  1. Criar RoleBindings para desenvolvedores vinculando a função Developer-project-1 ao grupo correspondente (ocp-project-1) no project-1.

    cat << EOF | oc create -f -
    kind: RoleBinding
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      name: project-1-developer
      namespace: project-1
    subjects:
      - kind: Group
        apiGroup: rbac.authorization.k8s.io
        name: ocp-project-1
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: Role
      name: developer-project-1
    EOF
  2. Da mesma forma, crie RoleBindings para desenvolvedores vinculando as funções de desenvolvedor ao grupo de usuários correspondente no project-2.