Cloud Shell

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

Oracle Cloud Infrastructure (OCI) est un terminal basé sur un 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. 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 pour le 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.

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

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

Cloud Shell est libre d'utilisation (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 système d'exploitation Oracle Linux pendant que vous utilisez activement Cloud Shell.

Eléments inclus avec Cloud Shell

Outre l'interface de ligne de commande OCI, la machine virtuelle Cloud Shell inclut les versions en cours de nombreux outils et utilitaires très pratiques préinstallés, notamment :

  • Git
  • Java
  • Python
  • Oracle GraalVM JDK 17 et image native
  • La plupart des kits SDK OCI, y compris :
    • Java
    • Python
    • Go
    • TypeScript et JavaScript
  • SQLcl
  • kubectl
  • helm
  • maven
  • terraform
  • ansible
  • node.js
  • iputils
  • jqmake
  • tmux
  • vim
  • NPM
  • wget
  • zip/unzip
  • nano
  • emacs
  • pip
  • bash
  • sh
  • tar
  • nvm
  • mysql-community-client
  • mysqlsh
  • Moteur Docker
  • ipython
  • oci-powershell-modules (x86_64 only)
  • GoldenGate Admin client (x86_64 only)

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).

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 indique que vous n'y êtes pas autorisé, vérifiez avec l'administrateur l'accès qui 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 connaissez pas les stratégies, reportez-vous à Introduction aux stratégies, à 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 :

  • Par défaut, Cloud Shell limite l'accès réseau aux ressources internes OCI uniquement. Pour activer l'accès Internet public, l'administrateur doit configurer une stratégie d'identité. Pour plus d'informations, reportez-vous à Cloud Shell Networking.
  • 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 sélection d'une autre 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 le navigateur ou que ce dernier utilise un proxy d'entreprise pour lequel les sockets Web sont désactivés, vous obtenez un message d'erreur (Une erreur inattendue est survenue) lors de la tentative de démarrage de Cloud 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 un utilisateur tente de créer une session Cloud Shell alors qu'il est connecté avec un nom utilisateur (ou la partie du nom située avant le signe @ si le nom utilisateur est une adresse électronique) faisant partie de ces mots réservés, un message d'erreur inattendue sera généré.
  • Les noms utilisateur numériques (par exemple, "1234") ne sont pas pris en charge par Cloud Shell.
  • Le fuseau horaire de la session Cloud Shell est UTC et ne peut pas être modifié.
  • Cloud Shell n'autorise pas l'accès root ni l'utilisation de sudo. Les packages dont l'installation nécessite un accès root ne peuvent donc pas être installés. De nombreux packages sont disponibles dans des versions qui n'exigent pas d'accès root pour l'installation. Vous pouvez les décompresser et les installer dans votre répertoire de base.
  • Cloud Shell n'autorise pas l'utilisation de la commande ping, car celle-ci requiert un accès root.
  • 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 lors de l'utilisation de la commande openssl car il s'initialise en mode FIPS. Le mode FIPS exige que Cloud Shell génère des clés PKCS#8.
  • 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 ne découle de l'utilisation de Cloud Shell et Cloud Shell ne fournit aucun accès supplémentaire à la location ou 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 le navigateur ou que ce dernier utilise un proxy d'entreprise pour lequel les sockets Web sont désactivés, vous obtenez un message d'erreur (Une erreur inattendue est survenue) lors de la tentative de démarrage de Cloud Shell à partir de la console.

Bien que Cloud Shell donne accès à Internet, tout accès de l'extérieur à Cloud Shell est impossible (par exemple, vous ne pouvez pas utiliser SSH pour accéder à Cloud Shell) et aucune adresse IP publique n'est disponible. Si l'administrateur de location ne veut pas activer l'accès à Internet à partir d'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'action de l'architecture Cloud Shell

La boîte de dialogue Architecure s'affiche :

Boîte de dialogue Architecture 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 d'architecture réussie, vous verrez la notification suivante :

Message de réussite de la sélection de l'architecture Cloud Shell