{"id":28740955,"url":"https://github.com/aliyuncontainerservice/velero-plugin","last_synced_at":"2025-10-19T12:37:50.476Z","repository":{"id":41280997,"uuid":"190313996","full_name":"AliyunContainerService/velero-plugin","owner":"AliyunContainerService","description":null,"archived":false,"fork":false,"pushed_at":"2023-12-14T03:50:15.000Z","size":9931,"stargazers_count":82,"open_issues_count":23,"forks_count":24,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-07-26T19:20:40.661Z","etag":null,"topics":["velero","velero-plugin"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AliyunContainerService.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-06-05T02:42:33.000Z","updated_at":"2025-07-23T15:50:31.000Z","dependencies_parsed_at":"2024-06-18T22:35:22.475Z","dependency_job_id":"07caafc6-105d-43bc-ab1d-33d19fb567e2","html_url":"https://github.com/AliyunContainerService/velero-plugin","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/AliyunContainerService/velero-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliyunContainerService%2Fvelero-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliyunContainerService%2Fvelero-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliyunContainerService%2Fvelero-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliyunContainerService%2Fvelero-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AliyunContainerService","download_url":"https://codeload.github.com/AliyunContainerService/velero-plugin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AliyunContainerService%2Fvelero-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273272560,"owners_count":25075985,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-02T02:00:09.530Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["velero","velero-plugin"],"created_at":"2025-06-16T07:09:41.726Z","updated_at":"2025-10-19T12:37:45.423Z","avatar_url":"https://github.com/AliyunContainerService.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Overview\n\n[![GoReportCard Widget]][GoReportCardResult]\n\nVelero is a utility to back up and restore your Kubernetes resource and persistent volumes.\n\nTo do backup/restore on Alibaba Cloud through Velero utility, you need to install and configure velero and velero-plugin for alibabacloud.\n\n## Run velero on AlibabaCloud\n\nTo set up Velero on AlibabaCloud, you:\n\n* Download an official release of Velero\n* Create your OSS bucket\n* Create an RAM user for Velero\n* Install the velero and velero-plugin for alibabacloud\n\n## Download Velero\n\n1. Download the [latest official release's](https://github.com/heptio/velero/releases) tarball for your client platform.\n\n    _We strongly recommend that you use an [official release](https://github.com/heptio/velero/releases) of\nVelero. The tarballs for each release contain the `velero` command-line client. The code in the master branch\nof the Velero repository is under active development and is not guaranteed to be stable!_\n\n1. Extract the tarball:\n\n    ```bash\n    tar -xvf \u003cRELEASE-TARBALL-NAME\u003e.tar.gz -C /dir/to/extract/to \n    ```\n    \n    We'll refer to the directory you extracted to as the \"Velero directory\" in subsequent steps.\n\n2. Move the `velero` binary from the Velero directory to somewhere in your PATH.\n\n## Create OSS bucket\n\nVelero requires an object storage bucket to store backups in, preferrably unique to a single Kubernetes cluster. Create an OSS bucket, replacing placeholders appropriately:\n\n```bash\nBUCKET=\u003cYOUR_BUCKET\u003e\nREGION=\u003cYOUR_REGION\u003e\nossutil mb oss://$BUCKET \\\n        --storage-class Standard \\\n        --acl=private\n```\n\n## Create RAM user\n\nFor more information, see [the AlibabaCloud documentation on RAM users guides][14].\n\n1. Create the RAM user:\n\n    Follow [the AlibabaCloud documentation on RAM users][22].\n    \n    \u003e If you'll be using Velero to backup multiple clusters with multiple OSS buckets, it may be desirable to create a unique username per cluster rather than the default `velero`.\n\n2. Attach policies to give `velero` the necessary permissions:\n\n    \u003e Note that you'd better release the velero's delete permissions once you have completed your backup or restore task for safety reasons.\n\n    ```bash\n    {\n        \"Version\": \"1\",\n        \"Statement\": [\n            {\n                \"Action\": [\n                    \"ecs:DescribeSnapshots\",\n                    \"ecs:CreateSnapshot\",\n                    \"ecs:DeleteSnapshot\",\n                    \"ecs:DescribeDisks\",\n                    \"ecs:CreateDisk\",\n                    \"ecs:Addtags\",\n                    \"oss:PutObject\",\n                    \"oss:GetObject\",\n                    \"oss:DeleteObject\",\n                    \"oss:GetBucket\",\n                    \"oss:ListObjects\",\n                    \"oss:ListBuckets\"\n                ],\n                \"Resource\": [\n                    \"*\"\n                ],\n                \"Effect\": \"Allow\"\n            }\n        ]\n    }\n    ```\n3. Create an access key for the user:\n\n    Follow [the AlibabaCloud documentation on create AK][24].\n\n4. Create a Velero-specific credentials file (`credentials-velero`) in your `install` directory:\n\n    ```\n    ALIBABA_CLOUD_ACCESS_KEY_ID=\u003cALIBABA_CLOUD_ACCESS_KEY_ID\u003e\n    ALIBABA_CLOUD_ACCESS_KEY_SECRET=\u003cALIBABA_CLOUD_ACCESS_KEY_SECRET\u003e\n    ```\n\n    where the access key id and secret are the values get from the step 3.\n     \n## Install velero and velero-plugin for alibabacloud\n\n1. Set some environment variables\n\n\t```bash\n\tBUCKET=\u003cYOUR_BUCKET\u003e\n\tREGION=\u003cYOUR_REGION\u003e\n\t```\n\t\n2. Create and run velero and velero-plugin for alibabacloud\n\n\tRun the following command to create and run velero and velero-plugin for alibabacloud\n\t\n\t```\n\tvelero install \\\n      --provider alibabacloud \\\n      --image registry.$REGION.aliyuncs.com/acs/velero:1.4.2-2b9dce65-aliyun \\\n      --bucket $BUCKET \\\n      --secret-file ./credentials-velero \\\n      --use-volume-snapshots=false \\\n      --backup-location-config region=$REGION \\\n      --use-restic \\\n      --plugins registry.$REGION.aliyuncs.com/acs/velero-plugin-alibabacloud:v1.0.0-2d33b89 \\\n      --wait\n\t```\n\n    If you want use an internal oss endpoint, you can add params:\n    \n    `--backup-location-config region=$REGION,network=internal`\n    \n    If you want use a oss prefix to store backup files, you can add params:\n    \n    `--prefix \u003cyour oss bucket prefix\u003e`\n\t\n3. Create ConfigMap for velero restic helper image in your restore cluster\n\n  Run the following command to create a velero restic helper configmap in your restore cluster(optional for backup cluster).\n  \n  `kubectl -n velero apply -f install/02-configmap.yaml`\n\n4. Cleanup velero installation\n\n\tRun the following command to cleanup the velero installation\n\t\n\t```\n\tkubectl delete namespace/velero clusterrolebinding/velero\n\tkubectl delete crds -l component=velero\n\t```\n\t\n## Installing the nginx example (optional)\n\n1. nginx example without persistent volumes\n\n\tRun the following command to create a nginx example without persistent volumes:\n\t\n\t`kubectl apply -f examples/base.yaml`\n\t\n\tCreate a backup:\n\t\n\t`velero backup create nginx-backup --include-namespaces nginx-example --wait`\n\t\n\tDestroy the nginx example:\n\t\n\t`kubectl delete namespaces nginx-example`\n\t\n\tCreate a restore from nginx-backup:\n\t\n\t`velero  restore create --from-backup nginx-backup --wait`\n\n2. nginx example with persistent volumes\n\n\tRun the following command to create a nginx example with persistent volumes:\n\n\t```\n\tkubectl apply -f examples/with-pv.yaml\n\t```\n\t\n\tAdd annotations to pod volume, restic will backup the volume data during backup process.\n\t\n\t```\n    kubectl -n nginx-example annotate pod/nginx-deployment-7477779c4f-dxspm backup.velero.io/backup-volumes=nginx-logs\n    ```\n \n\tCreate a backup:\n\t\n\t`velero backup create nginx-backup-volume --include-namespaces nginx-example --wait`\n\t\n\tDestroy the nginx example:\n\t\n\t```\n\tkubectl delete namespaces nginx-example\n\t```\n\t\n\tCreate a restore from nginx-backup-volume:\n\t\n\t`velero  restore create --from-backup nginx-backup-volume --wait`\n\t\n\n[14]: https://www.alibabacloud.com/help/doc-detail/28645.htm\n[22]: https://www.alibabacloud.com/help/doc-detail/93720.htm\n[23]: https://www.alibabacloud.com/help/doc-detail/50452.htm\n[24]: https://www.alibabacloud.com/help/doc-detail/53045.htm\n\n[GoReportCard Widget]: https://goreportcard.com/badge/github.com/AliyunContainerService/velero-plugin\n[GoReportCardResult]: https://goreportcard.com/report/github.com/AliyunContainerService/velero-plugin\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faliyuncontainerservice%2Fvelero-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faliyuncontainerservice%2Fvelero-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faliyuncontainerservice%2Fvelero-plugin/lists"}