- Helm
- Velero
- kubectl
aws eks update-kubeconfig --region <REGION> --name <CLUSTER_NAME>
helm repo add \
crossplane-stable https://charts.crossplane.io/stable
helm repo update
helm install crossplane \
crossplane-stable/crossplane \
--namespace crossplane-system \
--create-namespace
kubectl get pods -n crossplane-system
cat <<EOF | kubectl apply -f -
apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
name: provider-aws-s3
spec:
package: xpkg.upbound.io/upbound/provider-aws-s3:v0.37.0
EOF
kubectl get providers
To work with the provider you need to install provider config with the AWS secret
mentioned
[default]
aws_access_key_id = <YOUR_KEY>
aws_secret_access_key = <YOUR_KEY>
kubectl create secret \
generic aws-secret \
-n crossplane-system \
--from-file=creds=./aws-credentials.txt
cat <<EOF | kubectl apply -f -
apiVersion: aws.upbound.io/v1beta1
kind: ProviderConfig
metadata:
name: default
spec:
credentials:
source: Secret
secretRef:
namespace: crossplane-system
name: aws-secret
key: creds
EOF
bucket=$(echo "crossplane-bucket-"$(head -n 4096 /dev/urandom | openssl sha1 | tail -c 10))
cat <<EOF | kubectl apply -f -
apiVersion: s3.aws.upbound.io/v1beta1
kind: Bucket
metadata:
name: $bucket
spec:
forProvider:
region: us-east-2
providerConfigRef:
name: default
EOF
kubectl get buckets
helm repo add litmuschaos https://litmuschaos.github.io/litmus-helm/
helm repo list
kubectl create ns litmus
helm install chaos litmuschaos/litmus --namespace=litmus --set portal.frontend.service.type=LoadBalancer
velero install \
--provider aws \
--plugins velero/velero-plugin-for-aws:v1.0.1 \
--bucket <BUCKET_NAME> \
--backup-location-config region=<REGION> \
--snapshot-location-config region=<REGION> \
--secret-file ./aws-credentials.txt
velero backup create <BACKUP_NAME> --include-namespaces <NAMESPACE>
az aks get-credentials --resource-group <RESOURCE_GROUP> --name <CLUSTER_NAME>
velero install \
--provider aws \
--plugins velero/velero-plugin-for-aws:v1.0.1 \
--bucket <BUCKET_NAME> \
--backup-location-config region=<REGION> \
--snapshot-location-config region=<REGION> \
--secret-file ./aws-credentials.txt
velero restore create --from-backup <BACKUP_NAME>