Créez un cluster ROSA classique à l'aide du ROSA CLI - Red Hat OpenShift Service on AWS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Créez un cluster ROSA classique à l'aide du ROSA CLI

Les sections suivantes décrivent comment démarrer avec l'utilisation ROSA classique AWS STS et le ROSA CLI. Pour savoir comment créer un cluster ROSA classique à l'aide de Terraform, consultez la documentation Red Hat. Pour en savoir plus sur le fournisseur Terraform pour la création ROSA clusters, consultez la documentation Terraform.

Le ROSA CLIutilise auto le mode ou manual le mode pour créer le IAM ressources nécessaires pour fournir un ROSA cluster. autole mode crée immédiatement le requis IAM rôles et politiques et un fournisseur OpenID Connect (OIDC). manualle mode affiche le AWS CLI commandes nécessaires pour créer le IAM ressources. En utilisant manual le mode, vous pouvez consulter les AWS CLI commandes avant de les exécuter manuellement. Avec manual le mode, vous pouvez également transmettre les commandes à un autre administrateur ou à un autre groupe de votre organisation afin qu'il puisse créer les ressources.

Pour plus d'options de démarrage, consultezCommencez avec ROSA.

Prérequis

Effectuez les actions préalables répertoriées dansConfigurer pour utiliser ROSA.

Créez un cluster ROSA classique à l'aide du ROSA CLIet AWS STS

Vous pouvez créer un ROSA classique cluster en utilisant le ROSA CLIet AWS STS.

  1. Créez le requis IAM rôles et politiques de compte utilisant --mode auto ou--mode manual.

    • rosa create account-roles --classic --mode auto
    • rosa create account-roles --classic --mode manual
      Note

      Si votre jeton d'accès hors ligne a expiré, le ROSA CLIaffiche un message d'erreur indiquant que votre jeton d'autorisation doit être mis à jour. Pour connaître les étapes de résolution des problèmes, voirRésoudre les problèmes liés aux ROSA CLI jetons d'accès hors ligne expirés.

  2. Créez un cluster en utilisant --mode auto ou--mode manual. autole mode permet de créer un cluster plus rapidement. manualle mode vous invite à définir des paramètres personnalisés pour votre cluster.

    • rosa create cluster --cluster-name <CLUSTER_NAME> --sts --mode auto
      Note

      Lorsque vous spécifiez--mode auto, la rosa create cluster commande crée l'opérateur spécifique au cluster IAM les rôles et le OIDC fournisseur automatiquement. Les opérateurs utilisent le OIDC fournisseur pour s'authentifier.

      Note

      Lorsque vous utilisez les --mode auto valeurs par défaut, la dernière OpenShift version stable est installée.

    • rosa create cluster --cluster-name <CLUSTER_NAME> --sts --mode manual
      Important

      Si vous activez le chiffrement etcd en manual mode, vous encourez une surcharge de performance d'environ 20 %. La surcharge est due à l'introduction de cette deuxième couche de chiffrement, en plus du EBS chiffrement Amazon par défaut qui chiffre les volumes etcd.

      Note

      Après avoir exécuté le manual mode pour créer le cluster, vous devez créer manuellement les IAM rôles d'opérateur spécifiques au cluster et le fournisseur OpenID Connect que les opérateurs du cluster utilisent pour s'authentifier.

  3. Vérifiez l'état de votre cluster.

    rosa describe cluster -c <CLUSTER_NAME>
    Note

    Si le processus de provisionnement échoue ou si le State champ ne passe pas à l'état « prêt » après 40 minutes, consultezRésolution des problèmes. Pour contacter AWS Support ou le support Red Hat pour obtenir de l'aide, consultezObtenir de ROSA l'aide.

  4. Suivez la progression du cluster création en regardant les journaux du OpenShift programme d'installation.

    rosa logs install -c <CLUSTER_NAME> --watch

Configuration d'un fournisseur d'identité et autorisation cluster accès

ROSA inclut un OAuth serveur intégré. Après votre cluster est créé, vous devez le configurer OAuth pour utiliser un fournisseur d'identité. Vous pouvez ensuite ajouter des utilisateurs à votre fournisseur d'identité configuré pour leur accorder l'accès à votre cluster. Vous pouvez accorder ces utilisateurs cluster-admin ou dedicated-admin autorisations selon les besoins.

Vous pouvez configurer différents types de fournisseurs d'identité pour votre ROSA cluster. Les types pris en charge incluent GitHub Enterprise GitHub GitLab, GoogleLDAP, OpenID Connect et les fournisseurs HTPasswd d'identité.

Important

Le fournisseur HTPasswd d'identité est inclus uniquement pour permettre la création d'un seul utilisateur administrateur statique. HTPasswdn'est pas pris en charge en tant que fournisseur d'identité à usage général pour ROSA.

La procédure suivante configure un fournisseur d' GitHub identité à titre d'exemple. Pour obtenir des instructions sur la configuration de chacun des types de fournisseurs d'identité pris en charge, voir Configuration des fournisseurs d'identité pour AWS STS.

  1. Accédez à github.com et connectez-vous à votre GitHub compte.

  2. Si vous n'avez aucune GitHub organisation à utiliser pour le provisionnement des identités pour votre cluster, créez-en un. Pour plus d'informations, consultez les étapes décrites dans la GitHub documentation.

  3. Utilisation de ROSA CLIen mode interactif, configurez un fournisseur d'identité pour votre cluster.

    rosa create idp --cluster=<CLUSTER_NAME> --interactive
  4. Suivez les instructions de configuration dans la sortie pour restreindre cluster accès aux membres de votre GitHub organisation.

    I: Interactive mode enabled. Any optional fields can be left empty and a default will be selected. ? Type of identity provider: github ? Identity provider name: github-1 ? Restrict to members of: organizations ? GitHub organizations: <GITHUB_ORG_NAME> ? To use GitHub as an identity provider, you must first register the application: - Open the following URL: https://github.com/organizations/<GITHUB_ORG_NAME>/settings/applications/new?oauth_application%5Bcallback_url%5D=https%3A%2F%2Foauth-openshift.apps.<CLUSTER_NAME>/<RANDOM_STRING>.p1.openshiftapps.com%2Foauth2callback%2Fgithub-1&oauth_application%5Bname%5D=<CLUSTER_NAME>&oauth_application%5Burl%5D=https%3A%2F%2Fconsole-openshift-console.apps.<CLUSTER_NAME>/<RANDOM_STRING>.p1.openshiftapps.com - Click on 'Register application' ...
  5. Ouvrez le URL dans la sortie, en le <GITHUB_ORG_NAME> remplaçant par le nom de votre GitHub organisation.

  6. Sur la page GitHub Web, choisissez Enregistrer une application pour enregistrer une nouvelle OAuth application dans votre GitHub organisation.

  7. Utilisez les informations de la GitHub OAuth page pour remplir les autres invites rosa create idp interactives en exécutant la commande suivante. Remplacez <GITHUB_CLIENT_ID> et <GITHUB_CLIENT_SECRET> par les informations d'identification de votre GitHub OAuth application.

    ... ? Client ID: <GITHUB_CLIENT_ID> ? Client Secret: [? for help] <GITHUB_CLIENT_SECRET> ? GitHub Enterprise Hostname (optional): ? Mapping method: claim I: Configuring IDP for cluster '<CLUSTER_NAME>' I: Identity Provider 'github-1' has been created. It will take up to 1 minute for this configuration to be enabled. To add cluster administrators, see 'rosa grant user --help'. To login into the console, open https://console-openshift-console.apps.<CLUSTER_NAME>.<RANDOM_STRING>.p1.openshiftapps.com and click on github-1.
    Note

    L'activation de la configuration du fournisseur d'identité peut prendre environ deux minutes. Si vous avez configuré un cluster-admin utilisateur, vous pouvez courir oc get pods -n openshift-authentication --watch pour regarder les OAuth pods se redéployer avec la configuration mise à jour.

  8. Vérifiez que le fournisseur d'identité est correctement configuré.

    rosa list idps --cluster=<CLUSTER_NAME>

Accorder à l'utilisateur l'accès à un cluster

Vous pouvez accorder à un utilisateur l'accès à votre cluster en les ajoutant au fournisseur d'identité configuré.

La procédure suivante ajoute un utilisateur à une GitHub organisation configurée pour l'attribution d'identités au cluster.

  1. Accédez à github.com et connectez-vous à votre GitHub compte.

  2. Inviter les utilisateurs qui ont besoin cluster accès à votre GitHub organisation. Pour plus d'informations, consultez la section Inviter des utilisateurs à rejoindre votre organisation dans la GitHub documentation.

Configuration cluster-admin des autorisations

  1. Accordez les cluster-admin autorisations en exécutant la commande suivante. Remplacez <IDP_USER_NAME> et <CLUSTER_NAME> par votre nom d'utilisateur et de cluster.

    rosa grant user cluster-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
  2. Vérifiez que l'utilisateur est répertorié comme membre du cluster-admins groupe.

    rosa list users --cluster=<CLUSTER_NAME>

Configuration dedicated-admin des autorisations

  1. Accordez les dedicated-admin autorisations à l'aide de la commande suivante. Remplacez <IDP_USER_NAME> et <CLUSTER_NAME> par votre utilisateur et cluster nom en exécutant la commande suivante.

    rosa grant user dedicated-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
  2. Vérifiez que l'utilisateur est répertorié comme membre du cluster-admins groupe.

    rosa list users --cluster=<CLUSTER_NAME>

Accédez à un cluster via la console Red Hat Hybrid Cloud

Après avoir créé un cluster utilisateur administrateur ou vous avez ajouté un utilisateur à votre fournisseur d'identité configuré, vous pouvez vous connecter à votre cluster via la console Red Hat Hybrid Cloud.

  1. Procurez-vous la console URL pour votre cluster à l'aide de la commande suivante. Remplacez <CLUSTER_NAME> par le nom de votre cluster.

    rosa describe cluster -c <CLUSTER_NAME> | grep Console
  2. Accédez à la console URL dans la sortie et connectez-vous.

    • Si vous avez créé un cluster-admin utilisateur, connectez-vous à l'aide des informations d'identification fournies.

    • Si vous avez configuré un fournisseur d'identité pour votre cluster, choisissez le nom du fournisseur d'identité dans la boîte de dialogue Se connecter avec... et répondez à toutes les demandes d'autorisation présentées par votre fournisseur.

Déployer une application depuis le catalogue des développeurs

À partir de la console Red Hat Hybrid Cloud, vous pouvez déployer une application de test Developer Catalog et l'exposer à l'aide d'un itinéraire.

  1. Accédez à Red Hat Hybrid Cloud Console et choisissez le cluster dans lequel vous souhaitez déployer l'application.

  2. Sur la page du cluster, choisissez Open console.

  3. Du point de vue de l'administrateur, choisissez Accueil > Projets > Créer un projet.

  4. Entrez un nom pour votre projet et ajoutez éventuellement un nom d'affichage et une description.

  5. Choisissez Create pour créer le projet.

  6. Passez au point de vue Développeur et choisissez +Ajouter. Assurez-vous que le projet sélectionné est bien celui qui vient d'être créé.

  7. Dans la boîte de dialogue Developer Catalog, sélectionnez Tous les services.

  8. Sur la page du catalogue pour développeurs, choisissez Langues > dans le JavaScriptmenu.

  9. Choisissez Node.js, puis choisissez Create Application pour ouvrir la page Create Source-to-Image Application.

    Note

    Vous devrez peut-être choisir Effacer tous les filtres pour afficher l'option Node.js.

  10. Dans la section Git, choisissez Try Sample.

  11. Dans le champ Nom, ajoutez un nom unique.

  12. Sélectionnez Create (Créer).

    Note

    Le déploiement de la nouvelle application prend plusieurs minutes.

  13. Lorsque le déploiement est terminé, choisissez l'itinéraire URL de l'application.

    Un nouvel onglet du navigateur s'ouvre avec un message similaire au suivant.

    Welcome to your Node.js application on OpenShift
  14. (Facultatif) Supprimez l'application et nettoyez les ressources :

    1. Du point de vue de l'administrateur, choisissez Accueil > Projets.

    2. Ouvrez le menu d'actions de votre projet et choisissez Supprimer le projet.

Révoquer cluster-admin les autorisations d'un utilisateur

  1. Révoquez les cluster-admin autorisations à l'aide de la commande suivante. Remplacez <IDP_USER_NAME> et <CLUSTER_NAME> par votre utilisateur et cluster nom.

    rosa revoke user cluster-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
  2. Vérifiez que l'utilisateur n'est pas répertorié comme membre du cluster-admins groupe.

    rosa list users --cluster=<CLUSTER_NAME>

Révoquer dedicated-admin les autorisations d'un utilisateur

  1. Révoquez les dedicated-admin autorisations à l'aide de la commande suivante. Remplacez <IDP_USER_NAME> et <CLUSTER_NAME> par votre utilisateur et cluster nom.

    rosa revoke user dedicated-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
  2. Vérifiez que l'utilisateur n'est pas répertorié comme membre du dedicated-admins groupe.

    rosa list users --cluster=<CLUSTER_NAME>

Révoquer l'accès d'un utilisateur à un cluster

Vous pouvez révoquer cluster accès pour un utilisateur du fournisseur d'identité en le supprimant du fournisseur d'identité configuré.

Vous pouvez configurer différents types de fournisseurs d'identité pour votre cluster. La procédure suivante révoque cluster accès pour un membre d'une GitHub organisation.

  1. Accédez à github.com et connectez-vous à votre GitHub compte.

  2. Supprimez l'utilisateur de votre GitHub organisation. Pour plus d'informations, consultez la section Suppression d'un membre de votre organisation dans la GitHub documentation.

Supprimer un cluster et AWS STS resources

Vous pouvez utiliser le plugin ROSA CLIpour supprimer un cluster qui utilise AWS Security Token Service (AWS STS). Vous pouvez également utiliser le ROSA CLIpour supprimer le IAM rôles et OIDC fournisseur créés par ROSA. Pour supprimer le IAM politiques créées par ROSA, vous pouvez utiliser IAM console.

Important

IAM rôles et politiques créés par ROSA pourrait être utilisé par d'autres ROSA clusters dans le même compte.

  1. Supprimez les photos ou les vidéos cluster et regardez les journaux. Remplacez <CLUSTER_NAME> par le nom ou l'identifiant de votre cluster.

    rosa delete cluster --cluster=<CLUSTER_NAME> --watch
    Important

    Vous devez attendre le cluster à supprimer complètement avant de supprimer le IAM rôles, politiques et OIDC fournisseur. Les IAM rôles de compte sont nécessaires pour supprimer les ressources créées par le programme d'installation. Les IAM rôles d'opérateur sont nécessaires pour nettoyer les ressources créées par les OpenShift opérateurs. Les opérateurs utilisent le OIDC fournisseur pour s'authentifier.

  2. Supprimez le OIDC fournisseur qui cluster les opérateurs utilisent pour s'authentifier en exécutant la commande suivante.

    rosa delete oidc-provider -c <CLUSTER_ID> --mode auto
  3. Supprimer l'opérateur spécifique au cluster IAM rôles.

    rosa delete operator-roles -c <CLUSTER_ID> --mode auto
  4. Supprimez les IAM rôles du compte à l'aide de la commande suivante. Remplacez <PREFIX> par le préfixe des IAM rôles de compte à supprimer. Si vous avez spécifié un préfixe personnalisé lors de la création des IAM rôles de compte, spécifiez le ManagedOpenShift préfixe par défaut.

    rosa delete account-roles --prefix <PREFIX> --mode auto
  5. Supprimez les photos ou les vidéos IAM politiques créées par ROSA.

    1. Connectez-vous au IAM console.

    2. Dans le menu de gauche, sous Gestion des accès, sélectionnez Politiques.

    3. Sélectionnez la politique que vous souhaitez supprimer, puis sélectionnez Actions > Supprimer.

    4. Entrez le nom de la politique et choisissez Supprimer.

    5. Répétez cette étape pour supprimer chacune des IAM politiques du cluster.