반응형
crossplane으로 MetaResource를 만들면 AWS에 자동으로 리소스가 생성된다.
생성된 MetaResource를 지우면 AWS에서 리소스가 삭제된다.
근데 MetaResource를 지우려면 내가 어떤 type의 MetaResource를 만들었는지 알아야 한다.
GOD GPT4o에게 물어보니 명령어로는 할 수 없고, shell script를 만들어서 해야 한다고 한다.
(아래에 있는 명령어랑 같다.)
kubectl --kubeconfig=[config파일 경로] get "providerconfigusages.aws.upbound.io" -A
api_groups에 원하는 crossplane의 apiVersion을 넣으면 해당 api로 생성된 것만 볼 수 있다.
만약 kubeconfig가 따로 있다면 파일 경로를 넣어주면 된다.
#!/bin/bash
# Define the API groups to search for
# api_groups=("upbound.io" "aws.upbound.io" "azure.upbound.io" "gcp.upbound.io")
api_groups=("aws.upbound.io")
for api_group in "${api_groups[@]}"; do
echo "Checking API group: $api_group"
resource_types=$(kubectl --kubeconfig=[config 파일 경로] api-resources --api-group=$api_group -o name)
for resource in $resource_types; do
echo "Resources of type $resource:"
kubectl --kubeconfig=[config 파일 경로] get "$resource" -A
echo
done
done
이 쉘 스크립트를 실행하면 이런 식으로 나온다.
메타 리소스를 삭제하려면
kubectl --kubeconfig=[config 경로] delete [RESOURCE-KIND] [RESOURCE-NAME]
이렇게 하면 삭제가 된다.
만약 종속된 리소스가 있으면 삭제가 되지 않고 꼬일 수 있으니 주의 할 것!
반응형
'배운 내용 > Kubernetes' 카테고리의 다른 글
[crossplane] 이미 생성된 리소스 observe하기 (0) | 2024.05.16 |
---|---|
[crossplane] vpc, subnet 만들기 (0) | 2024.05.16 |
쿠버네티스 포트 포워딩 (1) | 2024.04.24 |
파이썬에서 configmap json으로 읽기 (0) | 2024.04.19 |
Unable to connect to the server: dial tcp 192.168.49.2:8443: connect: no route to host (0) | 2023.04.12 |