некоторые места хранения резервных копий недействительны: хранилище резервных копий для расположения "по умолчанию" недействительно:

Установил велеро-клиент v1.1.0 от git.

Установил службу Velero с помощью следующей команды

velero install --provider aws --bucket velero --secret-file credentials-velero \ 
--use-volume-snapshots=false --use-restic --backup-location-config \ 
region=minio,s3ForcePathStyle="true",s3Url=http://minio.velero.svc:9000,publicUrl=http://<ip:node-port>

И я получаю следующую ошибку:

An error occurred: some backup storage locations are invalid: backup store for location "default" is invalid: rpc error: code = Unknown desc = AccessDenied: Access Denied

Хочу развернуть на k8s.

3 ответа

Эта проблема связана с тем, что мой ключ доступа к aws и секретный ключ недействительны. Позже я предоставил действительные полномочия. Итак, теперь он работает нормально.

Используемая вами команда должна быть заполнена фактической информацией из вашей среды, где:

  • --provider aws указывает Velero использовать хранилище S3, которое работает локально, в моем случае
  • --secret-file это наши полномочия Minio
  • --use-restic flag гарантирует, что Velero знает, как развернуть restic для persistentvolume резервные копии
  • --s3Url value - это адрес сервиса Minio, который разрешается только из кластера Kubernetes * --publicUrl значение - это IP-адрес для LoadBalancer сервис, позволяющий получить доступ к пользовательскому интерфейсу Minio извне кластера:

Пример:

velero install --provider aws \
    --bucket velero \
    --secret-file credentials-velero \ 
    --use-volume-snapshots=false \
    --use-restic \
    --backup-location-config region=minio,s3ForcePathStyle="true",s3Url=http://minio.velero.svc:9000,publicUrl=http://10.96.59.116:9000

Этот пример доступен с более подробной информацией в этом сообщении блога.

У меня тоже была похожая забота. Учетные данные были действительными, но политика IAM, назначенная пользователю velero , недействительна.

Вот как я это исправил:

IAM-политика:

      {
  "Version": "2012-10-17",
  "Statement": [
      {
          "Sid": "VisualEditor0",
          "Effect": "Allow",
          "Action": [
              "s3:PutObject",
              "s3:GetObject",
              "s3:ListBucketMultipartUploads",
              "s3:AbortMultipartUpload",
              "s3:ListBucket",
              "s3:DeleteObject",
              "s3:GetBucketPolicy"
          ],
          "Resource": "arn:aws:s3:::promise-gitlab-*"
      }
  ]
}

Файл учетных данных

      [default]
aws_access_key_id = AKIA2Q4N3HXBZ72AB752
aws_secret_access_key = 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

Вы можете проверить, чтобы убедиться, что учетные данные действительны, используя следующую команду:

      aws s3 ls s3://s3-bucket-name --recursive --human-readable --summarize --profile default

Наконец, установите velero:

      BUCKET=my-s3-bucket-name
REGION=eu-west-1

velero install \
  --provider aws \
  --plugins velero/velero-plugin-for-aws:latest \
  --bucket $BUCKET \
  --secret-file ./s3-credentials \
  --backup-location-config region=$REGION \
  --snapshot-location-config region=$REGION \
  --use-restic
Другие вопросы по тегам