Chapitre 2. Projets
2.1. Travailler avec des projets
Le site project permet à une communauté d'utilisateurs d'organiser et de gérer son contenu indépendamment des autres communautés.
Les projets commençant par openshift-
et kube-
sont des projets par défaut. Ces projets hébergent des composants de cluster qui s'exécutent sous forme de pods et d'autres composants d'infrastructure. En tant que tel, OpenShift Container Platform ne vous permet pas de créer des projets commençant par openshift-
ou kube-
à l'aide de la commande oc new-project
. Les administrateurs de clusters peuvent créer ces projets à l'aide de la commande oc adm new-project
.
Vous ne pouvez pas attribuer de SCC aux pods créés dans l'un des espaces de noms par défaut : default
kube-system
, kube-public
, openshift-node
, openshift-infra
et openshift
. Vous ne pouvez pas utiliser ces espaces de noms pour exécuter des pods ou des services.
2.1.1. Création d'un projet à l'aide de la console web
Si l'administrateur de votre cluster l'autorise, vous pouvez créer un nouveau projet.
Les projets commençant par openshift-
et kube-
sont considérés comme critiques par OpenShift Container Platform. Ainsi, OpenShift Container Platform ne vous permet pas de créer des projets commençant par openshift-
à l'aide de la console Web.
Vous ne pouvez pas attribuer de SCC aux pods créés dans l'un des espaces de noms par défaut : default
kube-system
, kube-public
, openshift-node
, openshift-infra
et openshift
. Vous ne pouvez pas utiliser ces espaces de noms pour exécuter des pods ou des services.
Procédure
-
Naviguez jusqu'à Home
Projects. - Cliquez sur Create Project.
- Entrez les détails de votre projet.
- Cliquez sur Create.
2.1.2. Création d'un projet à l'aide de la perspective du développeur dans la console web
Vous pouvez utiliser la perspective Developer dans la console web d'OpenShift Container Platform pour créer un projet dans votre cluster.
Les projets commençant par openshift-
et kube-
sont considérés comme critiques par OpenShift Container Platform. Ainsi, OpenShift Container Platform ne vous permet pas de créer des projets commençant par openshift-
ou kube-
à l'aide de la perspective Developer. Les administrateurs de cluster peuvent créer ces projets à l'aide de la commande oc adm new-project
.
Vous ne pouvez pas attribuer de SCC aux pods créés dans l'un des espaces de noms par défaut : default
kube-system
, kube-public
, openshift-node
, openshift-infra
et openshift
. Vous ne pouvez pas utiliser ces espaces de noms pour exécuter des pods ou des services.
Conditions préalables
- Assurez-vous que vous disposez des rôles et autorisations appropriés pour créer des projets, des applications et d'autres charges de travail dans OpenShift Container Platform.
Procédure
Vous pouvez créer un projet en utilisant la perspective Developer, comme suit :
Cliquez sur le menu déroulant Project pour obtenir une liste de tous les projets disponibles. Sélectionnez Create Project.
Figure 2.1. Créer un projet
-
Dans la boîte de dialogue Create Project, saisissez un nom unique, tel que
myproject
, dans le champ Name. - Optionnel : Ajoutez les détails Display Name et Description pour le projet.
- Cliquez sur Create.
- Utilisez le panneau de navigation de gauche pour accéder à la vue Project et voir le tableau de bord de votre projet.
En option :
- Utilisez le menu déroulant Project en haut de l'écran et sélectionnez all projects pour lister tous les projets de votre cluster.
- Utilisez l'onglet Details pour voir les détails du projet.
- Si vous disposez des autorisations adéquates pour un projet, vous pouvez utiliser l'onglet Project Access pour accorder ou révoquer les privilèges administrator, edit et view pour le projet.
2.1.3. Création d'un projet à l'aide de l'interface de programmation
Si l'administrateur de votre cluster l'autorise, vous pouvez créer un nouveau projet.
Les projets commençant par openshift-
et kube-
sont considérés comme critiques par OpenShift Container Platform. Ainsi, OpenShift Container Platform ne vous permet pas de créer des projets commençant par openshift-
ou kube-
à l'aide de la commande oc new-project
. Les administrateurs de clusters peuvent créer ces projets à l'aide de la commande oc adm new-project
.
Vous ne pouvez pas attribuer de SCC aux pods créés dans l'un des espaces de noms par défaut : default
kube-system
, kube-public
, openshift-node
, openshift-infra
et openshift
. Vous ne pouvez pas utiliser ces espaces de noms pour exécuter des pods ou des services.
Procédure
Exécutez :
$ oc new-project <project_name> \ --description="<description>" --display-name="<display_name>"
Par exemple :
$ oc new-project hello-openshift \ --description="This is an example project" \ --display-name="Hello OpenShift"
Le nombre de projets que vous êtes autorisé à créer peut être limité par l'administrateur du système. Une fois la limite atteinte, il se peut que vous deviez supprimer un projet existant pour en créer un nouveau.
2.1.4. Visualiser un projet à l'aide de la console web
Procédure
-
Naviguez jusqu'à Home
Projects. Sélectionnez un projet à visualiser.
Sur cette page, cliquez sur Workloads pour voir les charges de travail du projet.
2.1.5. Visualisation d'un projet à l'aide de l'interface de programmation
Lorsque vous consultez des projets, vous ne pouvez voir que les projets auxquels vous avez accès en vertu de la politique d'autorisation.
Procédure
Pour afficher une liste de projets, exécutez :
$ oc get projects
Vous pouvez passer du projet actuel à un autre projet pour les opérations de l'interface de programmation. Le projet spécifié est alors utilisé dans toutes les opérations ultérieures qui manipulent le contenu d'un projet :
oc project <nom_du_projet>
2.1.6. Fournir des autorisations d'accès à votre projet à l'aide de la perspective du développeur
Vous pouvez utiliser la vue Project dans la perspective Developer pour accorder ou révoquer des autorisations d'accès à votre projet.
Procédure
Pour ajouter des utilisateurs à votre projet et leur donner accès à Admin, Edit ou View:
- Dans la perspective Developer, accédez à la vue Project.
- Dans la page Project, sélectionnez l'onglet Project Access.
Cliquez sur Add Access pour ajouter une nouvelle ligne d'autorisations à celles qui sont définies par défaut.
Figure 2.2. Autorisations de projet
- Saisissez le nom de l'utilisateur, cliquez sur la liste déroulante Select a role et sélectionnez un rôle approprié.
- Cliquez sur Save pour ajouter les nouvelles autorisations.
Vous pouvez également utiliser :
- La liste déroulante Select a role, pour modifier les autorisations d'accès d'un utilisateur existant.
- L'icône Remove Access, pour supprimer complètement les autorisations d'accès d'un utilisateur existant au projet.
Le contrôle d'accès avancé basé sur les rôles est géré dans les vues Roles et Roles Binding de la perspective Administrator.
2.1.7. Personnaliser les rôles de cluster disponibles à l'aide de la perspective du développeur
Les utilisateurs d'un projet sont affectés à un rôle de groupe en fonction de leur contrôle d'accès. Vous pouvez accéder à ces rôles en vous rendant sur le site Project
Pour ajouter ou modifier les rôles du cluster pour un projet, vous pouvez personnaliser le code YAML du cluster.
Procédure
Pour personnaliser les différents rôles de cluster d'un projet :
-
Dans la vue Search, utilisez la liste déroulante Resources pour rechercher
Console
. Parmi les options disponibles, sélectionnez l'option Console
operator.openshift.io/v1
.Figure 2.3. Recherche d'une ressource de la console
- Sélectionnez cluster dans la liste Name.
- Naviguez vers l'onglet YAML pour visualiser et modifier le code YAML.
Dans le code YAML sous
spec
, ajoutez ou modifiez la liste deavailableClusterRoles
et enregistrez vos modifications :spec: customization: projectAccess: availableClusterRoles: - admin - edit - view
2.1.8. Ajouter à un projet
Procédure
- Sélectionnez Developer dans le sélecteur de contexte en haut du menu de navigation de la console web.
- Cliquez sur Add
- En haut de la page, sélectionnez le nom du projet que vous souhaitez ajouter.
- Cliquez sur une méthode à ajouter à votre projet, puis suivez le flux de travail.
Vous pouvez également ajouter des composants à la topologie à l'aide de la recherche rapide.
2.1.9. Vérifier l'état d'un projet à l'aide de la console web
Procédure
-
Naviguez jusqu'à Home
Projects. - Sélectionnez un projet pour connaître son statut.
2.1.10. Vérifier l'état d'un projet à l'aide de l'interface de programmation
Procédure
Exécutez :
$ oc status
Cette commande fournit une vue d'ensemble du projet en cours, avec ses composants et leurs relations.
2.1.11. Suppression d'un projet à l'aide de la console web
Vous pouvez supprimer un projet en utilisant la console web d'OpenShift Container Platform.
Si vous n'avez pas le droit de supprimer le projet, l'option Delete Project n'est pas disponible.
Procédure
-
Naviguez jusqu'à Home
Projects. - Localisez le projet que vous souhaitez supprimer dans la liste des projets.
- À l'extrême droite de la liste des projets, sélectionnez Delete Project dans le menu Options .
- Lorsque le volet Delete Project s'ouvre, saisissez le nom du projet que vous souhaitez supprimer dans le champ.
- Cliquez sur Delete.
2.1.12. Suppression d'un projet à l'aide de l'interface de programmation
Lorsque vous supprimez un projet, le serveur met à jour l'état du projet en le faisant passer de Active à Terminating. Ensuite, le serveur efface tout le contenu d'un projet qui est dans l'état Terminating avant de supprimer définitivement le projet. Tant qu'un projet est dans l'état Terminating, vous ne pouvez pas ajouter de nouveau contenu au projet. Les projets peuvent être supprimés à partir du CLI ou de la console web.
Procédure
Exécutez :
oc delete project <project_name> $ oc delete project <project_name>