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.