Cloud Shell

Oracle Cloud Infrastructure (OCI) Cloud Shell est un terminal sur navigateur Web accessible à partir de la console Oracle Cloud.

Oracle Cloud Infrastructure (OCI) Cloud Shell est un terminal sur navigateur Web accessible à partir de la console Oracle Cloud. Cloud Shell est gratuit (dans les limites mensuelles des locations) et donne accès à un shell Linux, avec une interface de ligne de commande Oracle Cloud Infrastructure pré-authentifiée, une installation Ansible pré-authentifiée et d'autres outils utiles permettant de suivre les laboratoires et tutoriels de service Oracle Cloud Infrastructure.
Remarque

Cloud Shell fournit l'accès au réseau Internet public uniquement si des stratégies de sécurité appropriées sont en place. Pour plus d'informations, reportez-vous à Réseau Cloud Shell.
Cloud Shell est une fonctionnalité disponible pour tous les utilisateurs OCI et accessible à partir de la console. Cloud Shell apparaît dans la console Oracle Cloud sous la forme d'un cadre persistant qui reste actif lorsque vous naviguez dans les différentes pages de la console.

Cloud Shell fournit les éléments suivants :

  • machine éphémère à utiliser en tant qu'hôte d'un shell Linux, préconfiguré avec la dernière version de l'interface de ligne de commande OCI et un certain nombre d'outils utiles,

  • 5 Go de stockage persistant chiffré pour votre répertoire de base

  • cadre persistant de la console qui reste actif lorsque vous naviguez dans les différentes pages de la console.

Fonctionnement de Cloud Shell

La machine Cloud Shell est une petite machine virtuelle exécutant un shell Bash auquel vous accédez via la console OCI. Cloud Shell est fourni avec une interface de ligne de commande OCI pré-authentifiée, définie sur la région de la page d'accueil de la location de la console, ainsi que des outils et utilitaires à jour.
Remarque

Cloud Shell fournit l'accès au réseau Internet public uniquement si des stratégies de sécurité appropriées sont en place. Pour plus d'informations, reportez-vous à Réseau Cloud Shell.

Cloud Shell est fourni avec 5 Go de stockage persistant crypté pour le répertoire d'origine afin que vous puissiez apporter des modifications locales à votre répertoire d'origine, puis continuer de travailler sur votre projet lorsque vous revenez à Cloud Shell.

Cloud Shell est gratuit (dans les limites mensuelles de votre location) et ne nécessite aucune configuration ou prérequis autre qu'une stratégie IAM accordant l'accès à Cloud Shell. Cloud Shell inclut une machine virtuelle provisionnée pour vous qui s'exécute dans sa propre location (et n'utilise donc aucune des ressources de votre location) et héberge votre shell dans un O/S Oracle Linux pendant que vous utilisez activement Cloud Shell.

Pour savoir comment accéder à Cloud Shell et l'utiliser, reportez-vous à Utilisation de Cloud Shell.

Eléments inclus avec Cloud Shell

Exécution de Cloud Shell sur Oracle Linux 8.

Outre l'interface de commande OCI, la machine virtuelle Cloud Shell exécutant Oracle Linux 8 inclut les versions en cours de nombreux outils et utilitaires très pratiques, notamment :

  • Git
  • Java
    Remarque

    Cloud Shell permet désormais d'installer une version d'Oracle Java à l'aide de la boîte à outils pour le téléchargement Java. Pour plus d'informations, reportez-vous à Toolkit pour le téléchargement Java.

  • Python
    Remarque

    Plusieurs versions de Python sont incluses dans Cloud Shell. Utilisez csruntimectl pour changer de version Python. Par exemple, exécutez "csruntimectl python list" pour obtenir la liste des versions Python disponibles et "csruntimectl python set <python-alias>" pour changer de version Python.
  • Oracle GraalVM JDK 17 et Native Image
  • La plupart des kits SDK OCI, y compris :
    • Java
    • Python
    • Go
    • TypeScript et JavaScript
  • SQLcl
  • kubectl
  • helm
  • maven
  • terraform
  • ansible
  • nodes
  • podman
    Remarque

    Le moteur Docker n'est plus installé sur Cloud Shell basé sur Oracle Linux 8. Podman offre une expérience de gestion de conteneurs similaire avec une architecture sans démon. Pour des raisons de compatibilité descendante, Cloud Shell fournit un alias "docker" qui est un wrapper de la commande "podman". Vous pouvez utiliser la commande "podman" ou "docker" pour exécuter des conteneurs avec des commandes largement compatibles avec Docker. Pour plus d'informations sur le podman, reportez-vous au Guide de l'utilisateur Oracle Linux Podman.

    Lorsque vous exécutez la commande podman login ou docker login pour vous connecter à un registre de conteneur, le fichier auth.json est écrit à l'emplacement suivant, /run/user/<uid>/containers/auth.json par exemple, /run/user/1101/containers/auth.json.

  • buildah
  • skopeo
  • runc
  • iputils
  • jqmake
  • tmux
  • vim
  • NPM
  • wget
  • zip/unzip
  • nano
  • emacs
  • pip
  • bash
  • sh
  • tar
  • nvm
  • mysql-community-client
  • mysqlsh
  • ipython
  • OCI-powershell-modules (x86_64 only)
  • GoldenGate Admin client (x86_64 only)
  • Interface de ligne de commande de projet Fn

    Requis pour utiliser OCI Functions.

    Remarque

    Lors de l'utilisation de l'interface de ligne de commande Fn dans Cloud Shell, OCI Functions ne prend pas en charge la création et le déploiement de fonctions basées sur des images multiarchitecture et ne prend pas en charge les applications avec des formes multiarchitecture. L'architecture de la session Cloud Shell doit correspondre à celle de l'application.

Stratégie IAM requise

La mise en route de Cloud Shell suppose d'accorder à l'utilisateur un accès à Cloud Shell via une stratégie IAM. Chaque service d'Oracle Cloud Infrastructure s'intègre à IAM à des fins d'authentification et d'autorisation pour toutes les interfaces (console, kit SDK ou interface de ligne de commande et API REST).
Remarque

Pour permettre aux utilisateurs d'accéder au réseau public géré par Cloud Shell, vous devez accorder l'accès utilisateur via une stratégie d'identité. Pour plus d'informations, reportez-vous à Réseau public Cloud Shell.

Pour utiliser Oracle Cloud Infrastructure, vous devez disposer du type d'accès requis dans une stratégie écrite par un administrateur dans le compartiment racine de la location, que vous utilisiez la console ou l'API REST avec un kit SDK, l'interface de ligne de commande ou un autre outil. Si vous essayez d'effectuer une action et qu'un message vous indique que vous n'y êtes pas autorisé, vérifiez auprès de l'administrateur que l'accès vous a été accordé.

Remarque

Cloud Shell ne prend pas en charge les stratégies au niveau du compartiment, uniquement au niveau de la location.
Le nom de ressource de Cloud Shell est "cloud-shell". Voici un exemple de stratégie permettant d'accorder l'accès à Cloud Shell :
allow group <GROUP-NAME> to use cloud-shell in tenancy
Cet exemple de stratégie indique comment autoriser un groupe au sein d'un domaine à utiliser Cloud Shell :
allow group <DOMAIN-NAME>/<GROUP-NAME> to use cloud-shell in tenancy

Si vous ne savez pas les stratégies, reportez-vous à Gestion des domaines d'identité, à Stratégies courantes et àCréation d'une stratégie et d'un groupe dynamique.

Limites relatives à Cloud Shell

Gardez à l'esprit les limites suivantes lors de l'utilisation de Cloud Shell :

  • Docker Engine n'est plus installé sur Cloud Shell basé sur Oracle Linux 8. Podman offre une expérience de gestion de conteneurs similaire avec une architecture sans démon. Pour des raisons de compatibilité descendante, Cloud Shell fournit un alias "docker" qui est un wrapper de la commande "podman". Vous pouvez utiliser la commande "podman" ou "docker" pour exécuter des conteneurs avec des commandes largement compatibles avec Docker. Pour plus d'informations sur le podman, reportez-vous au Guide de l'utilisateur Oracle Linux Podman.
  • Par défaut, Cloud Shell limite l'accès réseau aux ressources internes OCI dans la région d'origine de la location uniquement, sauf si vous avez activé le réseau public Cloud Shell. L'administrateur doit configurer une stratégie d'identité pour activer le réseau public Cloud Shell. Pour plus d'informations, reportez-vous à la section Réseau Cloud Shell.
  • Cloud Shell est fourni avec 5 Go de stockage pour le répertoire de base de la machine virtuelle. Ce stockage est persistant d'une session à l'autre. Toutefois, après plusieurs mois d'inutilisation, l'administrateur de la location recevra une notification indiquant que le stockage sera enlevé dans 60 jours. Le démarrage d'une session Cloud Shell réinitialise l'horloge de suppression du stockage.
  • Cloud Shell ne prend pas en charge le montage de stockage supplémentaire.
  • Cloud Shell n'analyse pas les fichiers utilisateur pour détecter les malwares ou les virus.
  • Les sessions Cloud Shell n'autorisent aucune connexion entrante, et aucune adresse IP publique n'est disponible.
  • L'interface de ligne de commande OCI exécute les commandes au niveau de la région sélectionnée dans le menu de sélection Région de la console au démarrage de Cloud Shell. La modification de la sélection d'une région dans la Console ne modifie pas la région des instances Cloud Shell existantes. Vous devrez ouvrir une nouvelle instance Cloud Shell pour changer de région.
  • Les sessions Cloud Shell ont une durée maximale de 24 heures et expirent après 60 minutes d'inactivité.
  • Cloud Shell utilise des sockets Web pour la communication entre le navigateur et le service. Si les sockets Web sont désactivés sur votre navigateur ou que ce derniers utilise un proxy d'entreprise pour lesquels les sockets Web sont désactivés, vous obtiendrez un message d'erreur ("Une erreur inattendue est survenue") lors de l'essai de démarrage deCloud Shell à partir de la console
  • Cloud Shell est conçu pour une utilisation interactive avec les ressources Oracle Cloud Infrastructure. Les utilisateurs ayant besoin d'un stockage supplémentaire pour Cloud Shell ou souhaitant exécuter des tâches non interactives à longue durée d'exécution sont encouragés à utiliser des ressources de calcul et de stockage dans leur location.
  • A des fins de compatibilité maximale, Cloud Shell inclut Python version 2 et version 3. Python 2 est exécuté par défaut lorsque vous entrez 'python' dans la ligne de commande. Pour exécuter Python 3, entrez 'python3' dans la ligne de commande.
  • Les mots réservés suivants ne peuvent pas être utilisés en tant que nom d'un utilisateur Cloud Shell : oci, root, bin, daemon, adm, lp, sync, shutdown, halt, mai, operator, games, ftp, nobody, oci, systemd-network, dbus, polkitd, tss et apache. Si vous tentez de créer une session Cloud Shell alors qu'il a été connecté avec un nom utilisateur (ou la partie du nom situé avant le signe @ si le nom utilisateur est une adresse électronique) faisant parti de ces mots réservés, un message d'erreur inattendue sera renvoyé.
  • Les noms utilisateur numériques (par exemple, "1234") ne sont plus pris en charge par Cloud Shell.
  • Le fuseau horaire de la session Cloud Shell est UTC et ne peut pas être modifié.
  • Dans un terminal Cloud Shell, l'accès root et sudo ne sont pas autorisés. Par conséquent, les packages nécessitant des privilèges root ne peuvent pas être installés. Cependant, de nombreux packages proposent des versions qui n'ont pas besoin d'autorisations root. Ils peuvent être décompressés et installés directement dans le répertoire personnel.
  • Dans un terminal Cloud Shell, la commande ping n'est pas autorisée.
  • Cloud Shell s'initialise en mode FIPS, ce qui peut avoir une incidence sur le comportement de certaines commandes.
  • Cloud Shell ne peut pas générer de clés PKCS#1 lorsque vous utilisez la commande openssl, car Cloud Shell s'initialise en mode FIPS. Le mode FIPS exige que Cloud Shell génère des clés PKCS#8.
  • Les sources réseau ne sont pas prises en charge pour le service Cloud Shell.
  • Pour plus d'informations sur les limites de Cloud Shell, reportez-vous à Cloud Shell dans Limites de service.

Accès à Cloud Shell et autres restrictions

Vous pouvez accéder aux ressources OCI à partir de Cloud Shell selon les stratégies accordées par l'administrateur de location. Aucun accès supplémentaire n'est disponible car vous utilisez Cloud Shell et Cloud Shell ne fournit aucun accès supplémentaire à la location ni aux ressources privées des réseaux Cloud virtuels de celle-ci.
Remarque

Cloud Shell utilise des sockets Web pour la communication entre le navigateur et le service. Si les sockets Web sont désactivés sur votre navigateur ou que ce derniers utilise un proxy d'entreprise pour lesquels les sockets Web sont désactivés, vous obtiendrez un message d'erreur ("Une erreur inattendue est survenue") lors de l'essai de démarrage deCloud Shell à partir de la console

Bien que Cloud Shell donne accès à Internet, il n'y a pas d'entrée de l'extérieur à Cloud Shell (par exemple, vous ne pouvez pas utiliser SSH pour atteindre Cloud Shell) et aucune adresse IP publique n'est disponible. Si l'administrateur de location n'accepte pas d'activer l'accès à Internet depuis OCI, il ne doit pas accorder l'accès à Cloud Shell avec une stratégie IAM.

Emplacement et propriété des ressources Cloud Shell

Lorsque vous démarrez Cloud Shell pour la première fois, le service crée un volume de stockage de blocs persistant (5 Go) pour votre répertoire de base. Le volume du répertoire de base se trouve dans la région d'origine de votre location. L'ordinateur exécutant la session Cloud Shell se trouve également dans la région d'origine de la location.

Remarque

Cloud Shell utilise votre OCID utilisateur pour créer votre répertoire de base. Si vous disposez de plusieurs comptes dans une location (par exemple, vous disposez d'un compte utilisateur fédéré et d'un compte utilisateur non fédéré), vous obtenez un répertoire de base Cloud Shell distinct et unique pour chaque compte.

La modification de la sélection de région de la console et la connexion à la console via une autre URL régionale n'ont aucune incidence sur l'emplacement de l'ordinateur Cloud Shell et du volume du répertoire de base. Pour vérifier la région d'origine de la location, consultez la page Détails de location dans la console.

Remarque

Les ressources Cloud Shell (y compris la machine virtuelle utilisée pour la session Cloud Shell) appartiennent au service Cloud Shell et n'existent pas dans votre location. Par conséquent, vous ne pouvez pas ajouter la machine virtuelle Cloud Shell que vous utilisez à un groupe dynamique dans votre location, ni utiliser le principal de l'instance employée pour votre session Cloud Shell.

Cloud Shell et les régions

Lorsque vous démarrez Cloud Shell, le service configure votre session Cloud Shell avec la région actuellement sélectionnée dans la console afin que l'interface de ligne de commande OCI interagisse avec la région de console sélectionnée.

Dans l'invite bash par défaut de Cloud Shell, la région avec laquelle l'interface de ligne de commande OCI interagit est affichée dans l'invite de ligne de commande Cloud Shell comme suit :

Invite Cloud Shell avec des informations sur la région

Toute modification apportée à la région sélectionnée dans la console après le démarrage de votre session Cloud Shell n'a aucune incidence sur la session Cloud Shell active. Pour modifier la région avec laquelle l'interface de ligne de commande OCI interagit dans Cloud Shell, optez pour l'une des méthodes suivantes :

  • Quittez la session Cloud Shell en cours, puis modifiez la région sélectionnée dans la console. Démarrez ensuite une nouvelle session Cloud Shell.
  • Modifiez le profil d'interface de ligne de commande OCI actuellement sélectionné via la variable d'environnement OCI_CLI_PROFILE.

Pour plus d'informations, reportez-vous à la section Gestion des régions dans Utilisation de Cloud Shell.

Architecture de Cloud Shell

Si vous êtes un utilisateur de niveau payant, vous pouvez choisir une architecture par défaut (ARM (aarch64), x86_64 ou Aucune préférence) pour vos sessions Cloud Shell.

Par défaut, la préférence d'architecture est définie sur Aucune préférence. Lorsque cette option est sélectionnée, les sessions Cloud Shell sont basées sur l'architecture x86_64 ou ARM (aarch64), en fonction du matériel disponible dans la région.

Sélectionner une architecture

Pour sélectionner une architecture :

Ouvrez le menu Actions, accessible à partir de Cloud Shell ou de l'éditeur de code, puis choisissez Architecture.

Menu d'actions de l'architecture Cloud Shell

La boîte de dialogue Architecure s'affiche :

Boîte de dialogue Architecture de Cloud Shell

La boîte de dialogue Architecture affiche l'architecture actuellement sélectionnée.

Pour sélectionner votre architecture préférée, sélectionnez le bouton radio approprié, puis cliquez sur le bouton Confirmer et redémarrer.
Remarque

Si une région ne prend pas en charge une architecture particulière, vous ne pourrez pas choisir cette architecture.
Boîte de dialogue d'architecture de commutateur Cloud Shell
Remarque

Avant de changer d'architecture Cloud Shell, assurez-vous que vos outils et charges globales sont compatibles avec l'architecture que vous êtes sur le point de choisir.

Une fois la migration de l'architecture réussie, la notification suivante s'affiche :

Message de succès de la sélection de l'architecture Cloud Shell