Plug-in für Block-Volume-Verwaltung aktivieren
Aktivieren Sie das Plug-in für Block-Volume-Verwaltung auf einer Compute-Instanz.
Das Plug-in für Block-Volume-Verwaltung ist für die folgenden Volume-Anhangsszenarios erforderlich:
Mit iSCSI angehängte Volumes, die für die Ebene Äußerst hohe Performance konfiguriert sind. Diese Volume-Anhänge müssen Multipath-fähig sein, um die optimierte Performance der Ebene Äußerst hohe Performance zu erreichen.
Mit iSCSI angehängte Volumes, die für andere Performanceebenen und für die automatische Verbindung konfiguriert wurden. Diese Datenträger wurden mit der ausgewählten Option Oracle Cloud Agent verwenden, um automatisch eine Verbindung zu über iSCSI angehängten Volumes herzustellen angehängt. Sie wird für Anhänge an Linux- und Windows-basierte Instanzen unterstützt. In der folgenden Tabelle wird die verfügbare Version der Oracle Cloud Agent-Software für die verschiedenen Betriebssysteme aufgeführt:
Betriebssysteme und entsprechende Oracle Cloud Agent-Versionen OS Oracle Cloud Agent-Version Oracle Linux oder ein benutzerdefiniertes Image basierend auf einem Oracle Linux-Image 1.23.0 oder höher Windows oder ein benutzerdefiniertes Image basierend auf einem Windows-Image 1.24.0 oder höher Ubuntu oder ein benutzerdefiniertes Image basierend auf einem Ubuntu-Image 1.35.0 oder höher
Das Plug-in für Block-Volume-Verwaltung wird von der Oracle Cloud Agent-Software verwaltet und führt die folgenden Aktionen aus:
Es prüft die Metadaten der Instanz auf Multipath-fähige Anhänge für Volumes mit Äußerst hoher Performance oder Anhänge, die für die automatische Verbindung mit Volumes mit anderen Performanceebenen konfiguriert sind, mit einem Polling-Intervall von einer Minute.
Es wird
device-mapper-multipath rpm
installiert, und"/etc/multipath.conf"
wird nur hinzugefügt, wenn Multipath-fähige Anhänge vorhanden sind.Wenn Multipath-fähige Anhänge oder für die automatische Verbindung konfigurierte Anhänge in den Metadaten der Instanz vorhanden sind, führt das Plug-in iSCSI-
login
-Batchbefehle für die Volume-Anhänge aus.
Voraussetzungen
Das Plug-in für Block-Volume-Verwaltung wird auf Oracle Autonomous Linux- und Oracle Linux-Images sowie auf benutzerdefinierten Images unterstützt, die auf diesen Images basieren.
Die folgenden Schritte sind für das Plug-in für Block-Volume-Verwaltung erforderlich.
-
Servicegateways oder öffentliche IP-Adressen: Die Compute-Instanz muss entweder über eine öffentliche IP-Adresse oder ein Servicegateway verfügen, um eine Verbindung zu Oracle-Services herstellen zu können.
Wenn die Instanz keine öffentliche IP-Adresse hat, richten Sie ein Servicegateway im virtuellen Cloud-Netzwerk (VCN) ein. Das Servicegateway ermöglicht Ihrer Instanz privaten Zugriff auf Oracle-Services, ohne dass Daten im öffentlichen Internet verfügbar gemacht werden. Im Folgenden finden Sie besondere Hinweise zum Einrichten des Servicegateways für das Plug-in für Block-Volume-Verwaltung:
- Aktivieren Sie beim Erstellen des Servicegateways das Servicelabel Alle <Region>-Services in Oracle Services Network.
- Richten Sie beim Einrichten des Routings für das Subnetz mit der Instanz eine Routingregel ein, bei welcher der Zieltyp auf Servicegateway und der Zielservice auf Alle <Region>-Services in Oracle Services Network gesetzt ist.
Nähere Anweisungen dazu finden Sie unter Zugriff auf Oracle-Services: Servicegateway.
- Oracle Cloud Agent: Die Oracle Cloud Agent-Software muss auf der Instanz installiert sein. Oracle Cloud Agent wird standardmäßig auf aktuellen Plattformimages installiert. Schritte zur manuellen Installation von Oracle Cloud Agent auf älteren Images finden Sie unter Oracle Cloud Agent-Software installieren. Informationen zum Aktualisieren finden Sie unter Oracle Cloud Agent-Software aktualisieren. Wichtig
Wenn Sie das Plug-in für Block-Volume-Verwaltung zur Unterstützung der automatischen Verbindung zu einem Volume aktivieren, muss die Instanz die Oracle Cloud Agent-Software der Version 1.23.0 oder höher ausführen. Berechtigungen konfigurieren: Diese Berechtigungen autorisieren die Instanz, API-Aufrufe an Oracle Cloud Infrastructure-Services zu senden, damit das Plug-in für Block-Volume-Verwaltung die iSCSI-Setupergebnisse für Multipath-fähige iSCSI-Anhänge melden kann.
So konfigurieren Sie Berechtigungen:
-
Dynamische Gruppe erstellen: Erstellen Sie eine dynamische Gruppe mit den Vergleichsregeln im folgenden Codebeispiel, um alle Instanzen in den angegebenen Compartments einzuschließen:
ANY {instance.compartment.id = 'ocid1.tenancy.oc1..<tenancy_ID>', instance.compartment.id = 'ocid1.compartment.oc1..<compartment_OCID>'}
-
Policy für dynamische Gruppe konfigurieren: Konfigurieren Sie eine Policy, die Berechtigungen für die im vorherigen Schritt erstellte dynamische Gruppe erteilt, damit der Instanz-Agent den Block Volume-Service aufrufen kann, um die Anhangskonfiguration abzurufen:
Allow dynamic-group InstantAgent to use instances in tenancy Allow dynamic-group InstantAgent to use volume-attachments in tenancy
-
Block-Volume-Verwaltung auf neuen Instanzen aktivieren
Führen Sie die folgenden Schritte aus, um die Block-Volume-Verwaltung auf einer neuen Compute-Instanz zu aktivieren.
- Folgen Sie bis zu den erweiterten Optionen den Schritten unter Instanzen erstellen. Stellen Sie sicher, dass die Instanz entweder eine öffentliche IP-Adresse oder ein Servicegateway aufweist, wie unter Voraussetzungen beschrieben.
- Klicken Sie auf Erweiterte Optionen anzeigen.
-
Aktivieren Sie auf der Registerkarte Oracle Cloud Agent das Kontrollkästchen Block-Volume-Verwaltung.
-
Klicken Sie auf Erstellen.
- Installieren Sie die Oracle Cloud Agent-Software, wenn sie noch nicht installiert ist.
-
Verwenden Sie den Vorgang UpdateInstance. Nehmen Sie folgende Parameter auf:
#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" } ] }
- Stellen Sie sicher, dass die Instanz entweder eine öffentliche IP-Adresse oder ein Servicegateway aufweist, wie unter Voraussetzungen beschrieben.
Block-Volume-Verwaltung auf vorhandenen Instanzen aktivieren
Führen Sie die folgenden Schritte aus, um die Block-Volume-Verwaltung auf einer vorhandenen Compute-Instanz zu aktivieren.
Installieren Sie die Oracle Cloud Agent-Software, wenn sie noch nicht installiert ist. Oracle Cloud Agent sollte bereits auf allen aktuellen und neuesten Plattformimages installiert sein. Führen Sie den folgenden Befehl aus, um zu prüfen, ob die Software bereits installiert ist:
systemctl status oracle-cloud-agent
Wenn das Ergebnis "Nicht gefunden" lautet, müssen Sie die Software installieren. Fahren Sie andernfalls mit dem nächsten Schritt fort.
- Aktivieren Sie das Plug-in für Block-Volume-Verwaltung.
- Bestätigen Sie, dass Plug-ins auf der Instanz ausgeführt werden.
- Stellen Sie sicher, dass die Instanz entweder eine öffentliche IP-Adresse oder ein Servicegateway aufweist, wie unter Voraussetzungen beschrieben.
- Installieren Sie die Oracle Cloud Agent-Software, wenn sie noch nicht installiert ist.
-
Verwenden Sie den Vorgang UpdateInstance. Nehmen Sie folgende Parameter auf:
#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" } ] }
- Stellen Sie sicher, dass die Instanz entweder eine öffentliche IP-Adresse oder ein Servicegateway aufweist, wie unter Voraussetzungen beschrieben.
Block-Volume-Verwaltung manuell auf einer Instanz aktivieren
Sie können die Block-Volume-Verwaltung mit der CLI manuell auf einer Compute-Instanz aktivieren.
Diese Prozedur ist nur für benutzerdefinierte Images erforderlich, die aktualisiert wurden, um die Ebene Äußerst hohe Performance zu unterstützen, bei denen das Plug-in für Block-Volume-Verwaltung aber nicht in der Datei /etc/oracle-cloud-agent/agent.yml
aktiviert wurde.
Bevor Sie diese Schritte ausführen, müssen Sie die unter Block-Volume-Verwaltung auf neuen Instanzen aktivieren oder Block-Volume-Verwaltung auf vorhandenen Instanzen aktivieren beschriebenen Schritte ausführen.
- Installieren Sie die Oracle Cloud Agent-Software auf der Instanz, wenn sie noch nicht installiert ist.
- Melden Sie sich bei der Instanz an. Informationen hierzu finden Sie unter Verbindungen mit Instanzen herstellen.
-
Führen Sie das folgende
sed
-Skript aus, um die Block-Volume-Verwaltung zu aktivieren:sed -i.saved -e '/^ oci-blockautoconfig:/,/^ [a-z]*:/{s/\(.*disabled:.*\)true/\1false/}' /etc/oracle-cloud-agent/agent.yml
Dieses Skript aktualisiert den Parameter
disabled
für dieoci-blockautoconfig
-Konfiguration in/etc/oracle-cloud-agent/agent.yml
vontrue
infalse
. - Führen Sie den folgenden Befehl aus, um den Oracle Cloud Agent-Service neu zu starten:
systemctl restart oracle-cloud-agent.service
Fehlerbehebung beim Plug-in für Block-Volume-Verwaltung
Wenn das Plug-in für Block-Volume-Verwaltung nicht richtig für eine Instanz konfiguriert ist, tritt möglicherweise ein Fehler auf, wenn Sie ein Volume mit einem iSCSI-Anhangstyp anhängen. Hinweise zur Fehlerbehebung bei diesen Problemen finden Sie in diesem Abschnitt.
Wenn Sie die Berechtigungen für das Plug-in für Block-Volume-Verwaltung nicht richtig konfiguriert haben, kann das Volume nicht an die Instanz angehängt werden.
Details
Das Volume wird nicht in der Konsole als angehängt angezeigt, und im Log für das Plug-in für Block-Volume-Verwaltung wird eine NotAuthorizedOrNotFound
-Fehlermeldung angezeigt.
Das Log für das Plug-in für Block-Volume-Verwaltung befindet sich unter:
"/var/log/oracle-cloud-agent/plugins/oci-blockautoconfig/oci-blockautoconfig.log
Beispiel für einen Fehlerlogeintrag bei diesem Problem:
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>
Ursache
Das Plug-in für Block-Volume-Verwaltung verfügt nicht über ausreichende Berechtigungen, um die Benachrichtigung über den iSCSI-Anmeldungsstatus an den Service zu senden.
Lösung
So konfigurieren Sie Berechtigungen für das Plug-in für Block-Volume-Verwaltung:
-
Dynamische Gruppe erstellen: Erstellen Sie eine dynamische Gruppe mit den Vergleichsregeln im folgenden Codebeispiel, um alle Instanzen in den angegebenen Compartments einzuschließen:
ANY {instance.compartment.id = 'ocid1.tenancy.oc1..<tenancy_ID>', instance.compartment.id = 'ocid1.compartment.oc1..<compartment_OCID>'
-
Policy für dynamische Gruppe konfigurieren: Konfigurieren Sie eine Policy, die Berechtigungen für die im vorherigen Schritt erstellte dynamische Gruppe erteilt, damit der Instanz-Agent den Block Volume-Service aufrufen kann, um die Anhangskonfiguration abzurufen:
Allow dynamic-group InstantAgent to use instances in tenancy Allow dynamic-group InstantAgent to use volume-attachments in tenancy
Die Compute-Instanz muss entweder eine öffentliche IP-Adresse oder ein Servicegateway aufweisen, um eine Verbindung zu Oracle-Services herstellen zu können. Andernfalls verläuft das Anhängen des Volumes nicht erfolgreich.
Details
Das Volume wird nicht in der Konsole als angehängt angezeigt, und im Log für das Plug-in für Block-Volume-Verwaltung wird die Fehlermeldung user agent can not be blank
angezeigt.
Das Log für das Plug-in für Block-Volume-Verwaltung befindet sich unter:
"/var/log/oracle-cloud-agent/plugins/oci-blockautoconfig/oci-blockautoconfig.log
Beispiel für einen Fehlerlogeintrag bei diesem Problem:
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
Ursache
Das Plug-in für Block-Volume-Verwaltung kann aufgrund der Netzwerkkonfiguration keine Benachrichtigung über den iSCSI-Anmeldungsstatus an den Service senden.
Lösung
Wenn die Instanz keine öffentliche IP-Adresse hat, richten Sie ein Servicegateway im virtuellen Cloud-Netzwerk (VCN) ein. Das Servicegateway ermöglicht Ihrer Instanz privaten Zugriff auf Oracle-Services, ohne dass Daten im öffentlichen Internet verfügbar gemacht werden. Im Folgenden finden Sie besondere Hinweise zum Einrichten des Servicegateways für das Plug-in für Block-Volume-Verwaltung:
- Aktivieren Sie beim Erstellen des Servicegateways das Servicelabel Alle <Region>-Services in Oracle Services Network.
- Richten Sie beim Einrichten des Routings für das Subnetz mit der Instanz eine Routingregel ein, bei welcher der Zieltyp auf Servicegateway und der Zielservice auf Alle <Region>-Services in Oracle Services Network gesetzt ist.
Nähere Anweisungen dazu finden Sie unter Zugriff auf Oracle-Services: Servicegateway.