Skip to main content
NetApp container solutions
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Configuration : tâches d'administration du cluster

Contributeurs kevin-hoke

Les tâches suivantes sont effectuées par l'administrateur du cluster Red Hat OpenShift :

  1. Connectez-vous au cluster Red Hat OpenShift en tant qu'administrateur du cluster.

  2. Créez deux projets correspondant à des projets différents.

    oc create namespace project-1
    oc create namespace project-2
  3. Créez le rôle de développeur pour le projet-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
Remarque La définition de rôle fournie dans cette section n’est qu’un exemple. Les rôles des développeurs doivent être définis en fonction des besoins des utilisateurs finaux.
  1. De même, créez des rôles de développeur pour le projet 2.

  2. Toutes les ressources de stockage OpenShift et NetApp sont généralement gérées par un administrateur de stockage. L'accès des administrateurs de stockage est contrôlé par le rôle d'opérateur Trident créé lors de l'installation de Trident . En plus de cela, l'administrateur du stockage a également besoin d'accéder à ResourceQuotas pour contrôler la manière dont le stockage est consommé.

  3. Créez un rôle pour gérer les ResourceQuotas dans tous les projets du cluster afin de l'attacher à l'administrateur de stockage.

    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. Assurez-vous que le cluster est intégré au fournisseur d’identité de l’organisation et que les groupes d’utilisateurs sont synchronisés avec les groupes de cluster. L'exemple suivant montre que le fournisseur d'identité a été intégré au cluster et synchronisé avec les groupes d'utilisateurs.

$ 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. Configurez ClusterRoleBindings pour les administrateurs de stockage.

    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
Remarque Pour les administrateurs de stockage, deux rôles doivent être liés : trident-operator et resource-quotas.
  1. Créez des RoleBindings pour les développeurs liant le rôle developer-project-1 au groupe correspondant (ocp-project-1) dans 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. De même, créez des RoleBindings pour les développeurs liant les rôles de développeur au groupe d’utilisateurs correspondant dans le projet-2.