Dela via


Skapa en Azure Red Hat OpenShift 4-klusterprogramsäkerhetskopia

I den här artikeln förbereder du din miljö för att skapa en azure Red Hat OpenShift 4-klusterprogramsäkerhetskopia. Du lär dig att:

  • Konfigurera förutsättningarna och installera nödvändiga verktyg
  • Skapa en Azure Red Hat OpenShift 4-programsäkerhetskopia

Om du väljer att installera och använda CLI lokalt kräver den här självstudien att du kör Azure CLI version 2.6.0 eller senare. Kör az --version för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI.

Innan du börjar

Installera Velero

Om du vill installera Velero i systemet följer du den rekommenderade processen för operativsystemet.

Konfigurera Azure Storage-konto och blobcontainer

Det här steget skapar en resursgrupp utanför ARO-klustrets resursgrupp. Den här resursgruppen tillåter att säkerhetskopiorna bevaras och kan återställa program till nya kluster.

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

Ange behörigheter för Velero

Skapa tjänstens huvudnamn

Velero behöver behörighet att göra säkerhetskopior och återställningar. När du skapar ett huvudnamn för tjänsten ger du Velero behörighet att komma åt den resursgrupp som du definierade i föregående steg. Det här steget hämtar klustrets resursgrupp:

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

Installera Velero på Azure Red Hat OpenShift 4-kluster

Det här steget installerar Velero i ett eget projekt och de anpassade resursdefinitioner som krävs för att göra säkerhetskopior och återställningar med Velero. Kontrollera att du har loggat in på ett Azure Red Hat OpenShift v4-kluster.

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"

Skapa en säkerhetskopia med Velero

Om du vill skapa en programsäkerhetskopia med Velero måste du inkludera det namnområde som programmet finns i. Om du har ett nginx-example namnområde och vill inkludera alla resurser i namnområdet i säkerhetskopian kör du följande kommando i terminalen:

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

Du kan kontrollera säkerhetskopieringens status genom att köra:

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

En lyckad säkerhetskopiering utdata phase:Completed och objekten kommer att finnas i containern i lagringskontot.

Skapa en säkerhetskopia med Velero för att inkludera ögonblicksbilder

Om du vill skapa en programsäkerhetskopia med Velero för att inkludera beständiga volymer i ditt program måste du inkludera det namnområde som programmet finns i och inkludera snapshot-volumes=true flaggan när du skapar säkerhetskopian.

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

Du kan kontrollera säkerhetskopieringens status genom att köra:

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

En lyckad säkerhetskopiering med utdata phase:Completed och objekten kommer att finnas i containern i lagringskontot.

Mer information finns i Backup OpenShift-resurser på det inbyggda sättet

Nästa steg

I den här artikeln säkerhetskopierades ett Azure Red Hat OpenShift 4-klusterprogram. Du har lärt dig att:

  • Skapa en OpenShift v4-klusterprogramsäkerhetskopia med Velero
  • Skapa en OpenShift v4-klusterprogramsäkerhetskopia med ögonblicksbilder med Velero

Gå vidare till nästa artikel för att lära dig hur du skapar en återställning av ett Azure Red Hat OpenShift 4-klusterprogram.