Freigeben über


Erstellen einer Azure Red Hat OpenShift 4-Clusteranwendungssicherung

In diesem Artikel bereiten Sie Ihre Umgebung auf die Erstellung einer Azure Red Hat OpenShift 4-Clusteranwendungssicherung mit Velero vor. Dabei lernen Sie Folgendes:

  • Einrichten der erforderlichen Komponenten und Installieren der erforderlichen Tools
  • Erstellen einer Azure Red Hat OpenShift 4-Anwendungssicherung

Wenn Sie die CLI lokal installieren und verwenden möchten, müssen Sie für dieses Tutorial mindestens die Azure CLI-Version 2.6.0 ausführen. Führen Sie az --version aus, um die Version zu finden. Wenn Sie eine Installation oder ein Upgrade durchführen müssen, finden Sie weitere Informationen unter Azure CLI installieren.

Prerequisites

Install Velero

Führen Sie zum Installieren von Velero auf Ihrem System die für Ihr Betriebssystem empfohlenen Schritte aus.

Einrichten eines Azure-Speicherkontos und eines Blobcontainers

In diesem Schritt wird eine Ressourcengruppe außerhalb der Ressourcengruppe des Clusters erstellt. Mit dieser Ressourcengruppe können die Sicherungen erhalten bleiben und Anwendungen in neuen Clustern wiederhergestellt werden.

AZURE_BACKUP_RESOURCE_GROUP=Velero_Backups
az group create -n $AZURE_BACKUP_RESOURCE_GROUP --location eastus

AZURE_STORAGE_ACCOUNT_ID="velero$(uuidgen | cut -d '-' -f5 | tr '[A-Z]' '[a-z]')"
az storage account create \
  --name $AZURE_STORAGE_ACCOUNT_ID \
  --resource-group $AZURE_BACKUP_RESOURCE_GROUP \
  --sku Standard_GRS \
  --encryption-services blob \
  --https-only true \
  --kind BlobStorage \
  --access-tier Hot

BLOB_CONTAINER=velero
az storage container create -n $BLOB_CONTAINER --public-access off --account-name $AZURE_STORAGE_ACCOUNT_ID

Festlegen von Berechtigungen für Velero

Erstellen eines Dienstprinzipals

Velero benötigt Berechtigungen zum Ausführen von Sicherungen und Wiederherstellungen. Wenn Sie einen Dienstprinzipal erstellen, erteilen Sie Velero die Berechtigung für den Zugriff auf die Ressourcengruppe, die Sie im vorherigen Schritt definiert haben. Dieser Schritt ruft die Ressourcengruppe des Clusters ab:

export AZURE_RESOURCE_GROUP=$(az aro show --name <name of cluster> --resource-group <name of resource group> | jq -r .clusterProfile.resourceGroupId | cut -d '/' -f 5,5)
AZURE_SUBSCRIPTION_ID=$(az account list --query '[?isDefault].id' -o tsv)

AZURE_TENANT_ID=$(az account list --query '[?isDefault].tenantId' -o tsv)
AZURE_CLIENT_SECRET=$(az ad sp create-for-rbac --name "velero" --role "Contributor" --query 'password' -o tsv \
--scopes  /subscriptions/$AZURE_SUBSCRIPTION_ID)
AZURE_CLIENT_ID=$(az ad sp list --display-name "velero" --query '[0].appId' -o tsv)

cat << EOF  > ./credentials-velero.yaml
AZURE_SUBSCRIPTION_ID=${AZURE_SUBSCRIPTION_ID}
AZURE_TENANT_ID=${AZURE_TENANT_ID}
AZURE_CLIENT_ID=${AZURE_CLIENT_ID}
AZURE_CLIENT_SECRET=${AZURE_CLIENT_SECRET}
AZURE_RESOURCE_GROUP=${AZURE_RESOURCE_GROUP}
AZURE_CLOUD_NAME=AzurePublicCloud
EOF

Installieren von Velero in einem Azure Red Hat OpenShift 4-Cluster

Sie müssen Velero in ein eigenes Projekt und die benutzerdefinierten Ressourcendefinitionen installieren, die für Sicherungen und Wiederherstellungen mit Velero erforderlich sind. Stellen Sie sicher, dass Sie erfolgreich bei einem Azure Red Hat OpenShift v4-Cluster angemeldet sind.

velero install \
--provider azure \
--plugins velero/velero-plugin-for-microsoft-azure:v1.1.0 \
--bucket $BLOB_CONTAINER \
--secret-file ~/path/to/credentials-velero.yaml \
--backup-location-config resourceGroup=$AZURE_BACKUP_RESOURCE_GROUP,storageAccount=$AZURE_STORAGE_ACCOUNT_ID \
--snapshot-location-config apiTimeout=15m \
--velero-pod-cpu-limit="0" --velero-pod-mem-limit="0" \
--velero-pod-mem-request="0" --velero-pod-cpu-request="0"

Erstellen einer Sicherung mit Velero

Um eine Anwendungssicherung mit Velero zu erstellen, müssen Sie den Namespace der Anwendung einschließen. Wenn Sie einen Namespace vom Typ nginx-example haben und alle Ressourcen in diesem Namespace in die Sicherung einschließen möchten, führen Sie den folgenden Befehl im Terminal aus:

velero create backup <name of backup> --include-namespaces=nginx-example

Sie können den Status der Sicherung überprüfen, indem Sie Folgendes ausführen:

oc get backups -n velero <name of backup> -o yaml

Eine erfolgreiche Sicherung gibt phase:Completed aus und die Objekte werden im Container im Speicherkonto gespeichert.

Erstellen einer Sicherung mit Velero zum Einschließen von Momentaufnahmen

Um eine Anwendungssicherung mit Velero zu erstellen, um die persistenten Volumes Ihrer Anwendung einzuschließen, müssen Sie den Namespace der Anwendung einschließen und das snapshot-volumes=true Flag einschließen, wenn Sie die Sicherung erstellen.

velero backup create <name of backup> --include-namespaces=nginx-example --snapshot-volumes=true --include-cluster-resources=true

Sie können den Status der Sicherung überprüfen, indem Sie Folgendes ausführen:

oc get backups -n velero <name of backup> -o yaml

Eine erfolgreiche Sicherungsausgabe phase:Completed und die Objekte werden im Container im Speicherkonto gespeichert.

Weiter Informationen finden Sie unter Sichern der OpenShift-Ressourcen auf native Art

Next steps

In diesem Artikel wurde eine Azure Red Hat OpenShift 4-Clusteranwendung gesichert. Sie haben gelernt, wie Sie:

  • Erstellen einer Sicherung einer OpenShift v4-Clusteranwendung mithilfe von Velero
  • Erstellen einer Wiederherstellung einer OpenShift v4-Clusteranwendung mit Momentaufnahmen mithilfe von Velero

Wechseln Sie zum nächsten Artikel, um zu erfahren, wie Sie eine Azure Red Hat OpenShift 4-Clusteranwendungswiederherstellung erstellen.