Utilisation de Cloud Shell
Cette section décrit comment utiliser Cloud Shell.
Démarrage avec Cloud Shell
Vous pouvez accéder à Cloud Shell de deux façons :
- Au moyen de la console OCI
- À l'aide du bouton "Faire l'essai" qui apparaît dans de nombreux exemples de ligne de commande et de code tout au long de la documentation
Cloud Shell utilise votre OCID d'utilisateur pour créer votre répertoire de base. Si vous avez plusieurs comptes dans une location (par exemple, vous avez un compte d'utilisateur fédéré et non fédéré), vous obtiendrez un répertoire de base Cloud Shell distinct et unique pour chaque compte.
Pour accéder à Cloud Shell au moyen de la console :
- Connectez-vous à la console.
- Cliquez sur l'icône Cloud Shell/Éditeur de code dans l'en-tête de la console et sélectionnez Cloud Shell dans le menu déroulant. Notez que l'interface de ligne de commande OCI de Cloud Shell exécutera les commandes par rapport à la région sélectionnée dans le menu de sélection de région de la console au moment du démarrage de Cloud Shell.
Cloud Shell s'affichera dans un "tiroir" au bas de la console :
Vous pouvez utiliser les icônes dans le coin supérieur droit de la fenêtre Cloud Shell pour réduire, agrandir, redémarrer et fermer votre session Cloud Shell.
Pour déplacer le focus de Cloud Shell à l'aide du clavier, appuyez sur Ctrl-ESCAPE.
Pour les opérations du presse-papiers, les utilisateurs Windows peuvent utiliser les touches Ctrl-C ou Ctrl-Inser pour la copie et Maj-Inser ou Ctrl-V pour le collage. Les utilisateurs du système d'exploitation Mac peuvent utiliser Cmd-C pour la copie et Cmd-V pour le collage.
Pour accéder à Cloud Shell à l'aide du bouton Faire l'essai :
De nombreux exemples de code et de commande dans la documentation OCI comprennent un bouton Faire l'essai. Ce bouton copiera l'exemple dans le presse-papiers et ouvrira une session Cloud Shell afin que vous puissiez tester l'exemple.
Votre Cloud Shell est fourni avec l'interface de ligne de commande OCI préauthentifiée. Vous n'avez donc aucune configuration à faire avant de commencer à l'utiliser.
Essayez-le avec les commandes suivantes :
oci os ns get
oci iam compartment list
Interagir avec une grappe OKE à partir de Cloud Shell
Suivez les instructions sous Configuration de l'accès Cloud Shell aux grappes pour :
- Configurer un fichier kubeconfig OKE à utiliser avec Cloud Shell :
- Sélectionnez une grappe.
- Cliquez sur le bouton Accéder à la grappe.
- Cliquez sur Accès Cloud Shell.
- Cliquez sur Lancer Cloud Shell pour afficher la fenêtre Cloud Shell.
Dans la fenêtre Cloud Shell, exécutez la commande d'interface de ligne de commande Oracle Cloud Infrastructure pour configurer le fichier kubeconfig et l'enregistrer dans un emplacement accessible à kubectl. Par exemple :
$ oci ce cluster create-kubeconfig --cluster-id ocid1.cluster.oc1.phx.aaaaaaaaae... --file $HOME/.kube/config --region us-phoenix-1 --token-version 2.0.0
-
Pour vérifier que kubectl est disponible et que le serveur peut se connecter à la grappe à partir de la fenêtre Cloud Shell, entrez la commande suivante dans la fenêtre Cloud Shell :
$ kubectl get nodes
Transfert de fichiers
- Vous ne pouvez sélectionner qu'un fichier à transférer à la fois à l'aide de la boîte de dialogue Transferts de fichiers, mais vous pouvez sélectionner plusieurs fichiers à transférer par glisser-déposer.
- Vous ne pouvez pas transférer les répertoires.
- La taille de fichier maximale est de 4 Mo.
- Les autorisations de fichier ne sont pas conservées pour les fichiers transférés.
- Les noms de fichier sont journalisés. N'utilisez pas d'informations d'identification personnelle dans les noms de fichier.
- Faites glisser un ou plusieurs fichiers dans la fenêtre Cloud Shell.
Pour charger un fichier dans Cloud Shell à l'aide du menu :
- Cliquez sur le menu Cloud Shell en haut à gauche de la fenêtre Cloud Shell et sélectionnez Charger. La boîte de dialogue Chargement de fichier s'affiche.
- Glissez-déposez un fichier ou cliquez sur sélection depuis votre ordinateur.Note
La boîte de dialogue Transferts de fichiers permet de sélectionner un seul fichier à transférer à la fois. - Cliquez sur le bouton Charger.
- La boîte de dialogue Transferts de fichiers s'affiche.
- Les transferts de fichiers en cours d'exécution sont affichés avec une barre de progression.
- Vous pouvez annuler un transfert de fichier en cours en cliquant sur le X à côté de la barre de progression du transfert du fichier.
- Les transferts de fichiers terminés sont affichés avec une coche verte.
- Vous pouvez masquer la boîte de dialogue Transferts de fichier en cliquant sur Masquer
- Vous pouvez afficher la boîte de dialogue Transferts de fichiers à tout moment en sélectionnant Transferts de fichiers dans le menu Cloud Shell.
Pour télécharger un fichier depuis Cloud Shell :
- Cliquez sur le menu Cloud Shell en haut à gauche de la fenêtre Cloud Shell et sélectionnez Télécharger. La boîte de dialogue Téléchargement de fichier s'affiche.
- Entrez le nom du fichier du répertoire de base à télécharger.Note
Seuls les fichiers de votre répertoire de base peuvent être téléchargés. - Cliquez sur le bouton Télécharger.
- La boîte de dialogue Transferts de fichiers s'affiche.
- Les transferts de fichiers en cours d'exécution sont affichés avec une barre de progression.
- Vous pouvez annuler un transfert de fichier en cours en cliquant sur le X à côté de la barre de progression du transfert du fichier.
- Les transferts de fichiers terminés sont affichés avec une coche verte.
- Vous pouvez masquer la boîte de dialogue Transferts de fichier en cliquant sur Masquer
- Vous pouvez afficher la boîte de dialogue Transferts de fichiers à tout moment en sélectionnant Transferts de fichiers dans le menu Cloud Shell.
Personnalisation de la configuration de l'interface de ligne de commande OCI pour Cloud Shell
Cloud Shell est fourni avec une interface de ligne de commande OCI préauthentifiée, qui est actualisée et provisionnée pour l'utilisateur lorsque vous ouvrez une nouvelle session Cloud Shell. L'emplacement et le jeton de la configuration OCI sont en dehors du répertoire de base de l'utilisateur, dans /etc/oci
. Par exemple :
example_user@cloudshell:~ (us-ashburn-1)$ ll /etc/oci
total 20K
drwxrwx---. 1 root oci 44 Oct 12 00:07 ./
drwxr-xr-x. 1 root root 4.0K Oct 12 00:07 ../
-rw-------. 1 jonathan_s oci 1.9K Jan 1 1970 config
-rw-------. 1 jonathan_s oci 1.3K Jan 1 1970 delegation_token
example_user@cloudshell:~ (us-ashburn-1)$
L'emplacement du fichier de configuration, le type d'authentification de l'interface de ligne de commande OCI et les choix de profil sont indiqués par des variables d'environnement :
OCI_CLI_AUTH=instance_obo_user
OCI_CLI_CONFIG_FILE=/etc/oci/config
OCI_CLI_PROFILE=us-ashburn-1
Pour personnaliser l'interface de ligne de commande OCI, vous pouvez créer un fichier RC d'interface de ligne de commande OCI et le placer dans votre répertoire .oci local :
$ oci setup oci-cli-rc --file path/to/target/file
Pour plus d'informations sur la configuration de l'interface de ligne de commande OCI, voir Configuration de l'interface de ligne de commande.
Gestion des régions Cloud Shell
Cloud Shell utilise le fichier de configuration de l'interface de ligne de commande et les variables d'environnement pour déterminer la région avec laquelle l'interface de ligne de commande OCI interagit. Le fichier de configuration de l'interface de ligne de commande OCI (spécifié par la variable d'environnement OCI_CLI_CONFIG_FILE
) contient les profils de l'interface de ligne de commande pour Cloud Shell. Chaque région est son propre profil de l'interface de ligne de commande, et le profil courant est spécifié par la variable d'environnement OCI_CLI_PROFILE
.
Par exemple, si vous ouvrez Cloud Shell depuis la console avec la valeur "États-Unis - Est (Ashburn)" sélectionnée dans la liste déroulante des régions de la console, Cloud Shell s'ouvrira avec OCI_CLI_PROFILE
réglé à us-ashburn-1
.
Il n'y a pas de valeur de profil
[DEFAULT]
dans Cloud Shell, car la région sélectionnée change en fonction de la configuration de la console lorsque Cloud Shell est ouvert.Si vous souhaitez personnaliser les paramètres de l'interface de ligne de commande OCI dans Cloud Shell, vous pouvez utiliser un fichier de configuration de l'interface de ligne de commande OCI. Par exemple, pour définir un compartiment par défaut dans votre fichier de configuration sous le profil de région approprié dans votre fichier RC. Pour notre exemple "us-ashburn-1", vous pouvez ajouter un paramètre de compartiment par défaut comme ceci :
[COMPARTMENT DEFAULTS]
[us-ashburn-1]
compartment-id = ocid1.compartment.oc1..xxxxxxxx
Réinitialisation de votre environnement Cloud Shell
Vous pouvez utiliser l'outil csreset
pour réinitialiser votre environnement Cloud Shell à son état par défaut. Vous pouvez réinitialiser simplement vos paramètres de profil bash et emacs, ou vous pouvez supprimer toutes les données de votre répertoire de base et réinitialiser les paramètres bash et emacs.
Pour réinitialiser vos fichiers bash
Vous pouvez utiliser l'option --bashfiles
(ou -b
) pour réinitialiser les fichiers $HOME/.bashrc
, $HOME/.bash_profile
, $HOME/.bash_logout
et $HOME/.emacs
à leurs valeurs par défaut :
csreset --bashfiles
ou
csreset -b
Pour tout réinitialiser
Vous pouvez utiliser l'option --all
(ou -a
) pour effacer toutes les données de votre répertoire $HOME et réinitialiser les fichiers $HOME/.bashrc
, $HOME/.bash_profile
, $HOME/.bash_logout
et $HOME/.emacs
à leurs valeurs par défaut :
csreset --all
ou
csreset -a
Affichage de l'aide
Pour afficher les options d'utilisation, utilisez l'option --help
ou -h
:
csreset -h
ou
csreset --help
Sauvegarde et restauration du répertoire de base Cloud Shell à l'aide du service de stockage d'objets
Vous pouvez archiver et sauvegarder le contenu de votre répertoire de base Cloud Shell dans un seau du service de stockage d'objets.
Bien que Cloud Shell assure la persistance entre les sessions, le service ne permet pas de restaurer les fichiers qui ont pu être été supprimés par inadvertance par l'utilisateur. Le service ne permet pas non plus la récupération après sinistre des données de votre répertoire de base. Si vos données sont essentielles, envisagez de créer des sauvegardes inter-régions.
Pour sauvegarder votre répertoire de base Cloud Shell dans le stockage d'objets
- Créez un seau dans le stockage d'objets pour accueillir votre sauvegarde (vous pouvez également utiliser un seau existant). Pour plus d'informations sur l'utilisation des seaux dans le service de stockage d'objets, voir Seaux de stockage d'objets.Note
Pour rechercher l'espace de noms du stockage d'objets par défaut pour votre location, vous pouvez exécuter la commande :oci os ns get
. - Exécutez la commande suivante à partir d'une invite Cloud Shell. Assurez-vous que les variables
OCI_CS_USER_BACKUPS_BUCKET_NAME
etOCI_CS_USER_BACKUPS_NAMESPACE
sont réglées aux valeurs appropriées pour votre sauvegarde :OCI_CS_USER_BACKUPS_BUCKET_NAME="MyCloudShellBackupsBucket" OCI_CS_USER_BACKUPS_NAMESPACE="NamespaceForBackupsBucket" FILENAME=CloudShellHomeDirectoryBackup-$OCI_REGION-$OCI_CS_USER_OCID-$(date --iso-8601=seconds).tar.gz TEMP_TAR_LOCATION=/tmp tar -zcvf $TEMP_TAR_LOCATION/$FILENAME ~/ echo "Creating backup object: $FILENAME in bucket: $OCI_CS_USER_BACKUPS_BUCKET_NAME in namespace: $OCI_CS_USER_BACKUPS_NAMESPACE" oci os object put --namespace-name $OCI_CS_USER_BACKUPS_NAMESPACE --bucket-name $OCI_CS_USER_BACKUPS_BUCKET_NAME --file $TEMP_TAR_LOCATION/$FILENAME rm $TEMP_TAR_LOCATION/$FILENAME
- Vérifiez que toutes les commandes se sont terminées sans erreur. Vous pouvez exécuter la commande suivante pour vérifier que votre fichier de sauvegarde existe dans le stockage d'objets et qu'il a la taille attendue :
oci os object head --namespace-name $OCI_CS_USER_BACKUPS_NAMESPACE --bucket-name $OCI_CS_USER_BACKUPS_BUCKET_NAME --name $FILENAME
Pour restaurer votre répertoire de base Cloud Shell à partir du stockage d'objets
- Recherchez le nom de l'objet de votre sauvegarde et le nom du compartiment dans lequel il se trouve. Vous utiliserez ces valeurs comme paramètres pour les commandes ci-dessous. Pour plus d'informations sur le service de stockage d'objets.
- Exécutez les commandes suivantes à partir d'une invite Cloud Shell. Veillez à remplacer les variables
OCI_CS_USER_BACKUPS_BUCKET_NAME
,OCI_CS_USER_BACKUPS_OBJECT_NAME
etOCI_CS_USER_BACKUPS_NAMESPACE
par les valeurs appropriées.Note
Pour rechercher l'espace de noms du stockage d'objets par défaut pour votre location, vous pouvez exécuter la commande :oci os ns get
.Note
La commande tar ne remplace pas les fichiers existants. Si vous voulez remplacer des fichiers existants, supprimez le paramètre--skip-old-files
et ajoutez le paramètre--overwrite
OCI_CS_USER_BACKUPS_BUCKET_NAME="MyCloudShellBackupsBucket" OCI_CS_USER_BACKUPS_OBJECT_NAME="CloudShellHomeDirectoryBackup-us-ashburn-1-ocid1.user...tar.gz" OCI_CS_USER_BACKUPS_NAMESPACE="NamespaceForBackupsBucket" TEMP_TAR_LOCATION=/tmp oci os object get --namespace-name $OCI_CS_USER_BACKUPS_NAMESPACE --bucket-name $OCI_CS_USER_BACKUPS_BUCKET_NAME --name $OCI_CS_USER_BACKUPS_OBJECT_NAME --file $TEMP_TAR_LOCATION/$OCI_CS_USER_BACKUPS_OBJECT_NAME tar --skip-old-files -xzvf $TEMP_TAR_LOCATION/$OCI_CS_USER_BACKUPS_OBJECT_NAME -C / rm -rf $TEMP_TAR_LOCATION/$OCI_CS_USER_BACKUPS_OBJECT_NAME
- Vérifiez la sortie de la commande et les fichiers de votre répertoire de base pour vous assurer que toutes les commandes se sont terminées sans erreur.
Utilisation des versions Python
python
à l'invite de commande :python
Utilisation des versions de kubectl
Cloud Shell est préinstallé avec chaque version de Kubernetes actuellement prise en charge par OKE. Ces versions sont installées dans /usr/local/bin/kubectl-{version}
(par exemple : /usr/local/bin/kubectl-v1.17.13
), et le chemin d'accès au fichier binaire est inclus dans la variable d'environnement PATH.
Par défaut, l'exécution de kubectl
dans votre session Cloud Shell appelle la deuxième version installée la plus récente de kubectl. Ce comportement vise à optimiser la compatibilité conformément à la politique d'asymétrie de versions de Kubernetes.
Si vous souhaitez utiliser une version de kubectl différente de la version par défaut, vous pouvez appeler le fichier binaire propre à la version.
kubectl-v1.17.13 get services
Une autre option consiste à créer un alias pour faire pointer kubectl vers une version spécifique. alias kubectl=kubectl-v1.17.13
Pour que l'alias persiste entre les sessions Cloud Shell, ajoutez sa définition à votre fichier
~/.bashrc
.Gestion des environnements d'exécution de langage
csruntimectl
pour voir et gérer les environnements d'exécution de langage utilisés par Cloud Shell pour l'exécution des programmes.La commande
csruntimectl
ne prend actuellement en charge que Java.list
. Par exemple :csruntimectl java list
set
pour spécifier la version de l'environnement d'exécution utilisée par Cloud Shell. Par exemple, pour définir l'environnement d'exécution de Java :csruntimectl java set oraclejdk-11
Notez que ce paramètre persiste entre les sessions Cloud Shell.
help
pour générer une liste des options actuellement prises en charge :csruntimectl help
Obtention de l'adresse IP publique pour une session Cloud Shell
L'adresse IP publique Cloud Shell est dynamique. Elle n'est pas modifiée au cours d'une session Cloud Shell, mais elle peut être modifiée au démarrage d'une nouvelle session.
curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'
Cette commande retourne l'adresse IP publique de la passerelle NAT associée à Cloud Shell. Comme Cloud Shell n'est pas associé à une passerelle Internet, vous ne pouvez pas utiliser cette adresse IP pour accéder à un service Web exécuté sur Cloud Shell.