Een Azure Red Hat OpenShift 4-clustertoepassingsback-up maken

In dit artikel bereidt u uw omgeving voor om een back-up van een Azure Red Hat OpenShift 4-clustertoepassing te maken. U leert het volgende:

  • De vereisten instellen en de benodigde hulpprogramma's installeren
  • Een back-up van een Azure Red Hat OpenShift 4-toepassing maken

Als u ervoor kiest om CLI lokaal te installeren en gebruiken, moet u Azure CLI versie 2.6.0 of hoger gebruiken voor deze zelfstudie. Voer az --version uit om de versie te bekijken. Als u Azure CLI 2.0 wilt installeren of upgraden, raadpleegt u Azure CLI 2.0 installeren.

Voordat u begint

Velero installeren

Als u Velero op uw systeem wilt installeren , volgt u het aanbevolen proces voor uw besturingssysteem.

Azure Storage-account en Blob-container instellen

Met deze stap maakt u een resourcegroep buiten de resourcegroep van het ARO-cluster. Met deze resourcegroep kunnen de back-ups blijven bestaan en kunnen toepassingen worden hersteld naar nieuwe clusters.

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

Machtigingen instellen voor Velero

Een service-principal maken

Velero heeft machtigingen nodig om back-ups en herstelbewerkingen uit te voeren. Wanneer u een service-principal maakt, geeft u Velero toestemming om toegang te krijgen tot de resourcegroep die u in de vorige stap definieert. Met deze stap wordt de resourcegroep van het cluster opgehaald:

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

Velero installeren in een Azure Red Hat OpenShift 4-cluster

Deze stap installeert Velero in een eigen project en de aangepaste resourcedefinities die nodig zijn om back-ups en herstelbewerkingen uit te voeren met Velero. Zorg ervoor dat u bent aangemeld bij een Azure Red Hat OpenShift v4-cluster.

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"

Een back-up maken met Velero

Als u een toepassingsback-up wilt maken met Velero, moet u de naamruimte opnemen waarin deze toepassing zich bevindt. Als u een nginx-example naamruimte hebt en alle resources in die naamruimte in de back-up wilt opnemen, voert u de volgende opdracht uit in de terminal:

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

U kunt de status van de back-up controleren door het volgende uit te voeren:

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

Een geslaagde back-up wordt uitgevoerd phase:Completed en de objecten bevinden zich in de container in het opslagaccount.

Een back-up maken met Velero om momentopnamen op te nemen

Als u een toepassingsback-up wilt maken met Velero om de permanente volumes van uw toepassing op te nemen, moet u de naamruimte opnemen waarin de toepassing zich bevindt en de snapshot-volumes=true vlag opnemen bij het maken van de back-up.

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

U kunt de status van de back-up controleren door het volgende uit te voeren:

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

Een geslaagde back-up met uitvoer phase:Completed en de objecten bevinden zich in de container in het opslagaccount.

Zie Backup OpenShift-resources op de systeemeigen manier voor meer informatie

Volgende stappen

In dit artikel is een back-up gemaakt van een Azure Red Hat OpenShift 4-clustertoepassing. U hebt geleerd hoe u:

  • Een back-up van een OpenShift v4-clustertoepassing maken met Velero
  • Een back-up van een OpenShift v4-clustertoepassing maken met momentopnamen met behulp van Velero

Ga naar het volgende artikel voor meer informatie over het maken van een Herstel van een Azure Red Hat OpenShift 4-clustertoepassing.