brew install velero
or
arch -arm64 brew install velero
혹은 velero github 사이트에서 최신 버전을 다운 받은 후 아래 명령어로 압축을 해제한다.
tar -xvf <RELEASE-TARBALL-NAME>.tar.gz
# 이후
$PATH (/usr/local/bin for most users) 로 압축 해제한 velero binary 폴더를 옮긴다.
자동 완성
echo 'source <(velero completion zsh)' >>~/.zshrc
echo 'alias v=velero' >>~/.zshrc
echo 'complete -F __start_velero v' >>~/.zshrc
<aside> 💡 여러 Context를 switching 하면서 설치하다보면 꼬여서 백업이 제대로 안될 수도 있다. 그럴 경우, 해당 context에서 velero를 삭제한 후 재 설치해보자. 그래도 안되면 bucket을 새로 만들자.
</aside>
velero install 명령어로 AWS/Azure/GCP와 연동을 한번만 해주면 백업 파일들을 해당 cloud의 버킷에 백업할 수 있다.
--provider: aws, azure, gcp
--bucket: 버킷 이름
--secret-file: iam user의 인증 파일. gcp의 경우 콘솔에서 다운받은 key file을 사용하면 되며, aws는 파일을 하나 만들어서 아래와 같이 저장해주면 된다.
[default]
aws_access_key_id = minio
aws_secret_access_key = minio123
--plugins: velero에서 지원하는 plugin → 여기에서 특정 플러그인을 찾아 입력
--use-node-agent: FSB modules, i.e., restic, kopia 등을 설치해주는 데몬셋이다. --default-volumes-to-fs-backup flag를 사용하기 위해서 필요하다.
--default-volumes-to-fs-backup: pod volume 백업을 해준다. 이 flag가 없으면 pv, pvc는 백업이 되지만 안에 있는 데이터들은 백업이 안된다. 참고
--namespace: 특정 namespace에 설치하기
velero install \
--provider aws \
--bucket <bucket name> \
--secret-file ~/.aws-private-key.json \
--plugins velero/velero-plugin-for-aws:v1.9.0 \
--use-node-agent \
--default-volumes-to-fs-backup \
--backup-location-config region=<S3-버킷-리전> \
--namespace <namespace>
# 삭제
velero uninstall