Activation du module d'extension de gestion des volumes de blocs
Activez le module d'extension de gestion des volumes de blocs sur une instance de calcul.
Le module d'extension de gestion des volumes de blocs est requis pour les scénarios d'attachement de volume suivants :
Volumes attachés iSCSI configurés pour le niveau Performances très élevées. La fonctionnalité de chemins d'accès multiples doit être activée pour ces attachements de volume afin d'atteindre les performances optimisées offertes par le niveau Performances très élevées.
Volumes attachés iSCSI configurés pour d'autres niveaux de performances et la connexion automatique. Ces volumes ont été attachés avec l'option Utiliser l'agent Oracle Cloud pour se connecter automatiquement aux volumes attachés iSCSI sélectionnée. Cette option est prise en charge pour les attachements à des instances Linux et Windows. Le tableau suivant répertorie la version disponible du logiciel d'agent Oracle Cloud pour les différents systèmes d'exploitation :
Systèmes d'exploitation et versions d'agent Oracle Cloud correspondantes OS Version de l'agent Oracle Cloud Oracle Linux ou une image personnalisée basée sur une image Oracle Linux 1.23.0 ou plus récent Windows ou une image personnalisée basée sur une image Windows 1.24.0 ou plus récent Ubuntu ou image personnalisée basée sur une image Ubuntu. 1.35.0 ou plus récent
Le module d'extension de gestion des volumes de blocs est géré par le logiciel d'agent Oracle Cloud. Il effectue les actions suivantes :
Il interroge les métadonnées de l'instance toutes les minutes afin de trouver des attachements à chemins d'accès multiples à des volumes de niveau Performances très élevées ou des attachements configurés pour la connexion automatique à des volumes configurés avec d'autres niveaux de performances.
Il n'installe
device-mapper-multipath rpm
et ajoute"/etc/multipath.conf"
que s'il existe des attachements avec chemins d'accès multiples.S'il existe des associations à chemins d'accès multiples ou des associations configurées pour la connexion automatique dans les métadonnées de l'instance, le module d'extension exécute les commandes iSCSI
login
en batch pour les associations de volume.
Prérequis
Le module d'extension de gestion des volumes de blocs est pris en charge sur les images Oracle Autonomous Linux et Oracle Linux, ainsi que sur les images personnalisées basées sur ces images.
Les étapes suivantes sont requises pour le module d'extension de gestion des volumes de blocs.
-
Passerelles de service ou adresses IP publiques : l'instance de calcul doit disposer d'une adresse IP publique ou d'une passerelle de service pour pouvoir se connecter aux services Oracle.
Si l'instance ne dispose pas d'une adresse IP publique, configurez une passerelle de service sur le réseau cloud virtuel. Une passerelle de service permet à votre instance d'accéder de façon privée à des services Oracle sans exposer les données sur le réseau Internet public. Voici des remarques spéciales concernant la configuration de la passerelle de service pour le module d'extension de gestion des volumes de blocs :
- Lors de la création de la passerelle de service, activez le libellé de service Tous les services <region> dans Oracle Services Network.
- Lors de la configuration du routage pour le sous-réseau qui contient l'instance, configurez une règle de routage dont le type de cible est défini sur Passerelle de service, et le service de destination sur Tous les services <region> dans Oracle Services Network.
Pour obtenir des instructions détaillées, reportez-vous à Accès aux services Oracle : passerelle de service.
- Agent Oracle Cloud : le logiciel d'agent Oracle Cloud doit être installé sur l'instance. L'agent Oracle Cloud est installé par défaut sur des images de plate-forme en cours. Pour obtenir la procédure d'installation manuelle de l'agent Oracle Cloud sur des images plus anciennes, reportez-vous à Installation du logiciel d'agent Oracle Cloud. Pour effectuer la mise à jour, reportez-vous à Mise à jour du logiciel d'agent Oracle Cloud. Important
Si vous activez le module d'extension de gestion des volumes de blocs de sorte à prendre en charge le scénario de connexion automatique à un volume, l'instance doit exécuter la version 1.23.0 ou une version plus récente du logiciel d'agent Oracle Cloud. Configuration des droits d'accès : ces droits d'accès autorisent l'instance à effectuer des appels d'API vers les services Oracle Cloud Infrastructure, ce qui permet au module d'extension de gestion des volumes de blocs de signaler les résultats relatifs à la configuration iSCSI des attachements iSCSI à chemins d'accès multiples.
Pour configurer les droits d'accès, procédez comme suit :
-
Créez un groupe dynamique avec les règles de mise en correspondance illustrées dans l'exemple de code suivant afin d'inclure toutes les instances contenues dans les compartiments indiqués :
ANY {instance.compartment.id = 'ocid1.tenancy.oc1..<tenancy_ID>', instance.compartment.id = 'ocid1.compartment.oc1..<compartment_OCID>'}
-
Configurez une stratégie pour le groupe dynamique : configurez une stratégie octroyant les droits d'accès requis au groupe dynamique créé à l'étape précédente afin d'autoriser l'agent d'instance à appeler le service Block Volume pour extraire la configuration d'attachement.
Allow dynamic-group InstantAgent to use instances in tenancy Allow dynamic-group InstantAgent to use volume-attachments in tenancy
-
Activation de la gestion des volumes de blocs sur de nouvelles instances
Pour activer la gestion des volumes de blocs sur une nouvelle instance de calcul, suivez les étapes ci-dessous.
- Suivez les étapes de Création d'une instance, jusqu'aux options avancées. Assurez-vous que l'instance dispose d'une adresse IP publique ou d'une passerelle de service, comme décrit dans les prérequis.
- Cliquez sur Afficher les options avancées.
-
Dans l'onglet Agent Oracle Cloud, cochez la case Gestion des volumes de blocs.
-
Cliquez sur Créer.
- Installez le logiciel d'agent Oracle Cloud, s'il n'est pas déjà installé.
-
Utilisez l'opération UpdateInstance. Incluez les paramètres suivants :
#oci compute instance update --instance-id <New_Instance> --agent-config file:///agentUpdate.json agentUpdate.json { "is-agent-disabled": false, "plugins-config": [ {"name": "Block Volume Management", "desiredState": "ENABLED" } ] }
- Assurez-vous que l'instance dispose d'une adresse IP publique ou d'une passerelle de service, comme décrit dans les prérequis.
Activation de la gestion des volumes de blocs sur des instances existantes
Pour activer la gestion des volumes de blocs sur une instance de calcul existante, suivez les étapes ci-dessous.
Installez le logiciel d'agent Oracle Cloud, s'il n'est pas déjà installé. L'agent Oracle Cloud doit déjà être installé sur toutes les images de plate-forme actuelles ainsi que sur les plus récentes. Exécutez la commande suivante pour vérifier s'il est installé :
systemctl status oracle-cloud-agent
Si la commande ne donne aucun résultat, vous devez installer le logiciel, sinon passez à l'étape suivante.
- Activez le module d'extension de gestion des volumes de blocs.
- Vérifiez que les modules d'extension sont en cours d'exécution sur l'instance.
- Assurez-vous que l'instance dispose d'une adresse IP publique ou d'une passerelle de service, comme décrit dans les prérequis.
- Installez le logiciel d'agent Oracle Cloud, s'il n'est pas déjà installé.
-
Utilisez l'opération UpdateInstance. Incluez les paramètres suivants :
#oci compute instance update --instance-id <New_Instance> --agent-config file:///agentUpdate.json agentUpdate.json { "is-agent-disabled": false, "plugins-config": [ {"name": "Block Volume Management", "desiredState": "ENABLED" } ] }
- Assurez-vous que l'instance dispose d'une adresse IP publique ou d'une passerelle de service, comme décrit dans les prérequis.
Activation manuelle de la gestion des volumes de blocs sur une instance
Vous pouvez activer manuellement la gestion des volumes de blocs sur une instance de calcul à l'aide de l'interface de ligne de commande.
Cette procédure est requise uniquement pour les images personnalisées qui ont été mises à jour de façon à prendre en charge le niveau Performances très élevées, mais pour lesquelles le module d'extension de gestion des volumes de blocs n'a pas été activé dans le fichier /etc/oracle-cloud-agent/agent.yml
.
Avant d'effectuer cette procédure, vous devez suivre les étapes décrites dans Activation de la gestion des volumes de blocs sur de nouvelles instances ou Activation de la gestion des volumes de blocs sur des instances existantes.
- Installez le logiciel d'agent Oracle Cloud sur l'instance s'il n'est pas encore installé.
- Connectez-vous à l'instance : reportez-vous à Connexion à une instance.
-
Exécutez le script
sed
suivant pour activer la gestion des volumes de blocs :sed -i.saved -e '/^ oci-blockautoconfig:/,/^ [a-z]*:/{s/\(.*disabled:.*\)true/\1false/}' /etc/oracle-cloud-agent/agent.yml
Ce script met à jour le paramètre
disabled
de la configurationoci-blockautoconfig
dans/etc/oracle-cloud-agent/agent.yml
en remplaçant la valeurtrue
parfalse
. - Exécutez la commande suivante pour redémarrer le service de l'agent Oracle Cloud :
systemctl restart oracle-cloud-agent.service
Dépannage du module d'extension de gestion des volumes de blocs
Si le module d'extension de gestion des volumes de blocs n'est pas correctement configuré pour une instance, vous risquez de rencontrer une erreur lors de l'attachement d'un volume avec un attachement de type iSCSI. Reportez-vous aux suggestions de dépannage présentées dans cette section pour résoudre ces problèmes.
Si vous n'avez pas configuré correctement les droits d'accès du module d'extension de gestion des volumes de blocs, le volume ne peut pas être attaché à l'instance.
Détails
Le volume n'apparaît pas comme attaché dans la console et le message d'erreur NotAuthorizedOrNotFound
apparaît dans le journal du module d'extension de gestion des volumes de blocs.
Vous trouverez le journal du module d'extension de gestion des volumes de blocs à l'emplacement suivant :
"/var/log/oracle-cloud-agent/plugins/oci-blockautoconfig/oci-blockautoconfig.log
Voici un exemple d'entrée de journal d'erreurs pour ce problème :
2021/08/13 09:14:25.864932 compute_client_command.go:255: Updating volume attachment to the state LOGIN_SUCCEEDED ...
2021/08/13 09:14:26.155473 compute_client_command.go:260: Service error:NotAuthorizedOrNotFound.
volume attachment ocid1.volumeattachment.oc1.iad.<volume-attachment_ID> not found.
http status code: 404. Opc request id: <request_ID>
Cause
Le module d'extension de gestion des volumes de blocs ne dispose pas des droits d'accès permettant d'envoyer la notification de statut de connexion iSCSI au service.
Résolution
Pour configurer les droits d'accès du module d'extension de gestion des volumes de blocs, procédez comme suit :
-
Créez un groupe dynamique avec les règles de mise en correspondance illustrées dans l'exemple de code suivant afin d'inclure toutes les instances contenues dans les compartiments indiqués :
ANY {instance.compartment.id = 'ocid1.tenancy.oc1..<tenancy_ID>', instance.compartment.id = 'ocid1.compartment.oc1..<compartment_OCID>'
-
Configurez une stratégie pour le groupe dynamique : configurez une stratégie octroyant les droits d'accès requis au groupe dynamique créé à l'étape précédente afin d'autoriser l'agent d'instance à appeler le service Block Volume pour extraire la configuration d'attachement.
Allow dynamic-group InstantAgent to use instances in tenancy Allow dynamic-group InstantAgent to use volume-attachments in tenancy
L'instance de calcul doit disposer d'une adresse IP publique ou d'une passerelle de service pour pouvoir se connecter aux services Oracle. Dans le cas contraire, l'attachement du volume échoue.
Détails
Le volume n'apparaît pas comme attaché dans la console et le message d'erreur user agent can not be blank
apparaît dans le journal du module d'extension de gestion des volumes de blocs.
Vous trouverez le journal du module d'extension de gestion des volumes de blocs à l'emplacement suivant :
"/var/log/oracle-cloud-agent/plugins/oci-blockautoconfig/oci-blockautoconfig.log
Voici un exemple d'entrée de journal d'erreurs pour ce problème :
2021/10/15 22:16:07.881953 compute_client_command.go:255: Updating volume attachment to the state LOGIN_SUCCEEDED ...
2021/10/15 22:16:07.882185 compute_client_command.go:260: user agent can not be blank
2021/10/15 22:16:07.882204 iscsi_commands_helper.go:302: user agent can not be blank
2021/10/15 22:16:07.882212 iscsi_commands_helper.go:310: user agent can not be blank
Cause
Le module d'extension de gestion des volumes de blocs ne peut pas envoyer la notification de statut de connexion iSCSI au service en raison de la configuration réseau.
Résolution
Si l'instance ne dispose pas d'une adresse IP publique, configurez une passerelle de service sur le réseau cloud virtuel. Une passerelle de service permet à votre instance d'accéder de façon privée à des services Oracle sans exposer les données sur le réseau Internet public. Voici des remarques spéciales concernant la configuration de la passerelle de service pour le module d'extension de gestion des volumes de blocs :
- Lors de la création de la passerelle de service, activez le libellé de service Tous les services <region> dans Oracle Services Network.
- Lors de la configuration du routage pour le sous-réseau qui contient l'instance, configurez une règle de routage dont le type de cible est défini sur Passerelle de service, et le service de destination sur Tous les services <region> dans Oracle Services Network.
Pour obtenir des instructions détaillées, reportez-vous à Accès aux services Oracle : passerelle de service.