Aktualisieren von Azure Storage-Kontozugriffsschlüsseln in HDInsight-Cluster

In diesem Artikel erfahren Sie, wie Sie Azure Storage-Kontozugriffsschlüssel für die primären oder sekundären Speicherkonten in Azure HDInsight rotieren.

Achtung

Durch die direkte Rotation des Zugriffsschlüssels auf der Speicherseite kann nicht mehr auf den HDInsight-Cluster zugegriffen werden.

Voraussetzungen

  • Wir werden einen Ansatz verwenden, um die primären und sekundären Zugriffsschlüssel des Speicherkontos gestaffelt und abwechselnd zu rotieren, um sicherzustellen, dass der HDInsight-Cluster während des gesamten Prozesses zugänglich ist.

    Hier finden Sie ein Beispiel für die Verwendung primärer und sekundärer Speicherzugriffsschlüssel und für die Einrichtung von Rotationsrichtlinien für diese:

    1. Verwenden Sie „access key1“ für das Speicherkonto, wenn Sie einen HDInsight-Cluster erstellen.
    2. Richten Sie eine Rotationsrichtlinie ein, um den Zugriffsschlüssel2 alle N Tage zu rotieren. Aktualisieren Sie im Rahmen dieser Rotation HDInsight so, dass der Zugriffsschlüssel1 verwendet wird, und rotieren Sie dann den Zugriffsschlüssel2 im Speicherkonto.
    3. Richten Sie eine Rotationsrichtlinie ein, um den Zugriffsschlüssel1 alle N/2 Tage zu rotieren. Aktualisieren Sie im Rahmen dieser Rotation HDInsight so, dass der Zugriffsschlüssel2 verwendet wird, und rotieren Sie dann den Zugriffsschlüssel1 im Speicherkonto.
    4. Mit diesem Ansatz wird der Zugriffsschlüssel1 alle N/2, 3N/2 usw. Tage rotiert, und der Zugriffsschlüssel2 wird alle N, 2N, 3N usw. Tage rotiert.
  • Informationen zum Einrichten der regelmäßigen Rotation von Speicherkontoschlüsseln finden Sie unter Automatisieren der Rotation für ein Geheimnis.

Aktualisieren von Zugriffsschlüsseln für ein Speicherkonto

Verwenden Sie eine Skriptaktion, um die Schlüssel mit den folgenden Aspekten zu aktualisieren:

Eigenschaft Wert
Bash-Skript-URI https://hdiconfigactions.blob.core.windows.net/linuxaddstorageaccountv01/update-storage-account-v01.sh
Knotentyp(en) Head
Parameter ACCOUNTNAMEACCOUNTKEY-p (optional)
  • ACCOUNTNAME ist der Name des Speicherkontos im HDInsight-Cluster.
  • ACCOUNTKEY ist der Zugriffsschlüssel für ACCOUNTNAME.
  • -p ist optional. Bei Angabe wird der Schlüssel nicht verschlüsselt und im Klartext in der Datei „core-site.xml“ gespeichert.

Bekannte Probleme

Das vorherige Skript aktualisiert den Zugriffsschlüssel direkt nur auf der Seite des Clusters und erneuert keine Kopie auf der Seite des HDInsight-Ressourcenanbieters. Daher schlägt die Skriptaktion, die im Speicherkonto gehostet wird, nach der Rotation des Zugriffsschlüssels fehl.

Problemumgehung: Verwenden Sie SAS-URIs für Skriptaktionen, oder machen Sie die Skripts öffentlich zugänglich.

Nächste Schritte