Erstellen einer Sicherung einer Azure Red Hat OpenShift 4-Clusteranwendung
In diesem Artikel erfahren Sie, wie Sie Ihre Umgebung für das Erstellen einer Sicherung einer Azure Red Hat OpenShift 4-Clusteranwendung vorbereiten. Sie lernen 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 ermitteln. Informationen zum Durchführen einer Installation oder eines Upgrades finden Sie bei Bedarf unter Installieren der Azure CLI.
Voraussetzungen
Installieren von 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 ARO-Clusters erstellt. Diese Ressourcengruppe ermöglicht die Beibehaltung der Sicherungen und kann Anwendungen in neuen Clustern wiederherstellen.
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. Mit diesem Schritt wird die Ressourcengruppe des Clusters abgerufen:
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
In diesem Schritt wird Velero in einem eigenen Projekt installiert. Darüber hinaus werden die für Sicherungen und Wiederherstellungen mit Velero erforderlichen benutzerdefinierten Ressourcendefinitionen installiert. Vergewissern Sie sich, dass Sie 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
Zum Erstellen einer Anwendungssicherung mit Velero müssen Sie den Namespace einschließen, in dem sich diese Anwendung befindet. 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
Bei einer erfolgreichen Sicherung wird phase:Completed
ausgegeben, und die Objekte werden im Container im Speicherkonto gespeichert.
Erstellen einer Sicherung mit Velero zum Einschließen von Momentaufnahmen
Wenn Sie eine Anwendungssicherung mit Velero erstellen möchten, in der die persistenten Inhalte Ihrer Anwendung enthalten sein sollen, müssen Sie den Namespace, in dem sich die Anwendung befindet, und das snapshot-volumes=true
-Kennzeichnen beim Erstellen der Sicherungskopie einschließen.
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
Bei einer erfolgreichen Sicherung wird phase:Completed
ausgegeben, und die Objekte werden im Container im Speicherkonto gespeichert.
Weiter Informationen finden Sie unter Sichern der OpenShift-Ressourcen auf native Art
Nächste Schritte
In diesem Artikel wurde eine Azure Red Hat OpenShift 4-Clusteranwendung gesichert. Sie haben Folgendes gelernt:
- Erstellen einer Sicherung einer OpenShift v4-Clusteranwendung mithilfe von Velero
- Erstellen einer Wiederherstellung einer OpenShift v4-Clusteranwendung mit Momentaufnahmen mithilfe von Velero
Im nächsten Artikel erfahren Sie, wie Sie eine Wiederherstellung einer Azure Red Hat OpenShift 4-Clusteranwendung erstellen.