Instana Custom Edition을 수동으로 제거하기
Kubernetes 또는 Red Hat OpenShift 환경에서 IBM Instana Custom Edition을 수동으로 제거하려면, 설치 순서와 반대로 사용자 지정 리소스, 연산자, 데이터 저장소 및 관련 네임스페이스를 제거하면 됩니다.
시작하기 전에
제거를 시작하기 전에 다음 전제 조건이 충족되었는지 확인하십시오:
- 클러스터 관리자 권한을 사용할 수 있습니다.
- 필요한 모든 모니터링 데이터는 백업되었습니다.
- Instana 에이전트가 중지되거나 백엔드와의 연결이 끊어집니다.
- 재사용될 예정인 사용자 지정 구성 파일, 인증서 및 라이선스 정보는 내보내집니다.
- 해당되는 경우, 유지보수 기간이 승인됩니다.
이 태스크에 대한 정보
이 절차는 Instana 의 Enterprise Operator, Core 및 Unit 사용자 정의 리소스를 사용하여 수동으로 설치된 배포에 적용됩니다. 제거 과정은 설치 순서의 역순으로 진행되며, 이를 통해 모든 종속 리소스가 완전히 제거되고, 고아 Kubernetes 객체가 생성되는 것을 방지합니다.
다음 순서대로 단계를 완료해야 합니다:
- 유닛 사용자 정의 리소스 제거
- Core 사용자 정의 리소스 제거
- Instana Enterprise Operator 제거
- 데이터 저장소 구성 요소 제거
- cert-manager 제거하기
- Instana 의 CRD 삭제
- SCC 삭제 ( Red Hat OpenShift 전용)
- 클러스터 역할, 클러스터 역할 바인딩 및 웹훅 구성을 삭제합니다
프로시저
- 터미널에서 해당
instana-units네임스페이스 내의 기존 Unit 리소스를 확인하십시오.Unit 리소스는 테넌트별 Instana 서비스를 나타내며, Core 리소스에 종속됩니다. 코어를 삭제하기 전에 유닛 자원을 모두 제거해야 합니다.
kubectl get units -n instana-units출력 예제:
NAME VERSION INSTANA VERSION DB MIGRATION STATUS COMPONENTS STATUS tenant0-unit0 1.2.0 3.289.589-0 Ready Ready - 유닛 리소스를 삭제하십시오.
- 이름을 지정하여 Unit 리소스를 삭제하려면 다음 명령을 실행하십시오:
kubectl delete unit <unit-name> -n instana-units - 구성 파일을 사용하여 Unit 리소스를 삭제하려면 다음 명령을 실행하십시오:
kubectl delete -f path/to/unit.yaml
unit.instana.io "tenant0-unit0" deleted from instana-units namespace - 이름을 지정하여 Unit 리소스를 삭제하려면 다음 명령을 실행하십시오:
- 모든 유닛 리소스가 제거되었는지 확인하십시오.
kubectl get units -n instana-units명령은 다음을 리턴합니다.No resources found. instana-units네임스페이스 내의 비밀을 나열하십시오.kubectl get secrets -n instana-units출력 예제:
instana-registry kubernetes.io/dockerconfigjson 1 5h23m tenant0-unit0 Opaque 1 3h31m- 및
tenant0-unit0비밀 정보를instana-registry삭제하십시오.kubectl delete secret instana-registry tenant0-unit0 -n instana-units - 네임스페이스를
instana-units삭제하십시오.kubectl delete namespace instana-unitsnamespace "instana-units" deleted - 네임스페이스
instana-core내의 기존 Core 리소스를 확인하십시오.Draft comment: Bob
Converted section 5 "Remove Core Resource" into task steps.'Core' 리소스는 모든 유닛에서 사용하는 공유 백엔드 서비스를 제공합니다.
kubectl get core -n instana-core출력 예제:
instana-core 1.2.0 3.289.589-0 Ready Ready - 다음 방법 중 하나를 사용하여 Core 리소스를 삭제하십시오.
- 이름을 지정하여 Core 리소스를 삭제합니다:
kubectl delete core <core-name> -n instana-core - 구성 파일을 사용하여 Core 리소스를 삭제합니다:
kubectl delete -f path/to/core.yaml
core.instana.io "instana-core" deleted from instana-core namespace - 이름을 지정하여 Core 리소스를 삭제합니다:
- Core 리소스가 제거되었는지 확인하십시오.
kubectl get core -n instana-core명령은 다음을 리턴합니다.No resources found. 진행하기 전에 모든 Core 관련 포드와 서비스가 종료될 때까지 기다리십시오. instana-core네임스페이스 내의 비밀을 나열하십시오.kubectl get secrets -n instana-core출력 예제:
instana-core Opaque 1 3h42m instana-registry kubernetes.io/dockerconfigjson 1 5h34m instana-tls kubernetes.io/tls 2 4h1minstana-registry,instana-core, 및instana-tls비밀 정보를 삭제하십시오.kubectl delete secret instana-registry instana-core instana-tls -n instana-core- 선택 사항: 배포가 Red Hat OpenShift 클러스터에 있는 경우, 해당
instana-core네임스페이스 내의 경로를 삭제하십시오.Draft comment: Bob
Converted the OCP-specific route deletion note into an optional step with proper DITA importance attribute.경로를 나열하려면 다음 명령을 실행하십시오:
oc get routes -n instana-core출력 예제:
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD acceptor acceptor acceptor 8443 passthrough None base-domain base-domain.instana.fyre.ibm.com gateway https passthrough None각 경로 이름을 지정하여 경로를 삭제하십시오:
oc delete route <route-name-1> <route-name-2> -n instana-core예:
oc delete route acceptor base-domain opamp-acceptor otlp-grpc-acceptor otlp-http-acceptor unit0-tenant0-ui -n instana-core - 네임스페이스를
instana-core삭제하십시오.kubectl delete namespace instana-core - 해당
instana-operator네임스페이스 내의 오퍼레이터 배포 상태를 확인하십시오.Draft comment: Bob
Converted section 6 "Remove Instana Enterprise Operator" into task steps.엔터프라이즈 운영자는 ‘ Instana ’의 코어 및 유닛 리소스의 수명 주기를 관리합니다. 해당 리소스가 삭제된 후에는 운영자를 안전하게 제거할 수 있습니다.
kubectl get deployments -n instana-operator출력 예제:
NAME READY UP-TO-DATE AVAILABLE AGE instana-operator 1/1 1 1 5h44m instana-operator-webhook 1/1 1 1 5h44m - 연산자 배치를 삭제하십시오.
kubectl delete deployment instana-operator -n instana-operator kubectl delete deployment instana-operator-webhook -n instana-operator - 해당
instana-operator네임스페이스에 포함된 서비스를 나열하십시오.kubectl get svc -n instana-operator출력 예제:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE instana-operator-webhook ClusterIP 172.30.115.218 <none> 443/TCP 5h46m - 해당
instana-operator-webhook서비스를 삭제하십시오.kubectl delete svc instana-operator-webhook -n instana-operator - 네임스페이스
instana-operator내의 모든 리소스가 제거되었는지 확인하십시오.kubectl get all -n instana-operator명령은 다음을 리턴합니다.No resources found. 진행하기 전에 모든 오퍼레이터 및 웹훅 파드가 종료될 때까지 기다리십시오. - 네임스페이스에서 해당
instana-operatorinstana-registry비밀을 삭제합니다.kubectl get secrets -n instana-operator출력 예제:
instana-registry kubernetes.io/dockerconfigjson 1 5h55mkubectl delete secret instana-registry -n instana-operator - 네임스페이스를
instana-operator삭제하십시오.kubectl delete namespace instana-operator - 배포 아키텍처에 따라 데이터 스토어 구성 요소를 제거하십시오.Draft comment: Bob
Converted section 7 "Remove Datastore Components" into a single step with substeps per datastore. Each datastore is a separate substep group.Instana Custom Edition은 여러 백엔드 데이터 저장소 서비스를 활용합니다. Core 및 Unit 리소스가 삭제된 후에야 이 구성 요소들을 제거하십시오.
- Beeinstana 와 Beeinstana 연산자를 제거하십시오.
/path/to/configuration/file.yaml 을 Beeinstana 배포에 사용한 구성 파일의 경로로 변경하십시오.
kubectl delete -f /path/to/configuration/file.yaml -n beeinstanaBeeinstana 포드가 삭제된 후, Beeinstana 운영자를 제거하십시오:
helm uninstall beeinstana -n beeinstana모든 Beeinstana 및 Beeinstana 운영자 포드가 종료될 때까지 기다리십시오. 그런 다음, 시크릿을 삭제하세요:
kubectl get secrets -n beeinstana출력 예제:
beeinstana-admin-creds Opaque 2 31h beeinstana-cas Opaque 0 31h beeinstana-kafka-creds Opaque 2 30h instana-registry kubernetes.io/dockerconfigjson 1 31hkubectl delete secret instana-registry beeinstana-admin-creds beeinstana-kafka-creds beeinstana-cas -n beeinstana영구 볼륨 클레임(PVC)과 네임스페이스를 삭제합니다:
kubectl get pvc -n beeinstana kubectl delete pvc --all -n beeinstana kubectl delete namespace beeinstana - ClickHouse,, ClickHouse Keeper 및 ClickHouse 운영자를 제거하십시오.
kubectl delete -f clickhouse_installation.yaml -n instana-clickhouseClickHouse 포드가 삭제된 후, ClickHouse Keeper를 제거하십시오:
kubectl delete -f clickhouse_keeper.yaml -n instana-clickhouseClickHouse 와 ClickHouse Keeper가 모두 삭제된 후, ClickHouse 운영자를 제거하십시오:
helm uninstall clickhouse-operator -n instana-clickhouse모든 포드가 종료될 때까지 기다리십시오. 그런 다음, 시크릿
instana-registry, PVC 및 네임스페이스를 삭제하십시오:kubectl delete secret instana-registry -n instana-clickhouse kubectl get pvc -n instana-clickhouse kubectl delete pvc --all -n instana-clickhouse kubectl delete namespace instana-clickhouse - Cassandra 와 cass-operator를 제거하십시오.
kubectl delete -f cassandra.yaml -n instana-cassandraCassandra 포드가 삭제된 후, cass-operator를 제거하십시오:
helm uninstall cass-operator -n instana-cassandra모든 포드가 종료될 때까지 기다리십시오. 그런 다음, 시크릿, PVC 및 네임스페이스를 삭제합니다:
kubectl delete secret instana-registry instana-superuser -n instana-cassandra kubectl get pvc -n instana-cassandra kubectl delete pvc --all -n instana-cassandra kubectl delete namespace instana-cassandra - PostgreSQL 와 CNPG 연산자를 제거하십시오.
kubectl delete -f postgres.yaml -n instana-postgresPostgreSQL 포드가 삭제된 후, CNPG 오퍼레이터를 제거하십시오:
helm uninstall cnpg -n instana-postgres모든 포드가 종료될 때까지 기다리십시오. 그런 다음, 시크릿, PVC 및 네임스페이스를 삭제합니다:
kubectl delete secret instana-registry instanaadmin -n instana-postgres kubectl get pvc -n instana-postgres kubectl delete pvc --all -n instana-postgres kubectl delete namespace instana-postgres - Kafka, Kafka 컨트롤러 및 Strimzi 연산자를 제거하십시오.
Kafka 데이터 저장소를 삭제합니다:
kubectl delete -f kafka.yaml -n instana-kafkaKafka 컨트롤러를 삭제합니다:
kubectl delete -f kafka-controller.yaml -n instana-kafkaKafka 사용자를 삭제합니다:
kubectl delete -f strimzi-kafka-user.yaml -n instana-kafkaKafka 및 컨트롤러 포드가 모두 삭제된 후, Strimzi 오퍼레이터를 제거하십시오:
helm uninstall strimzi-kafka-operator -n instana-kafka모든 포드가 종료될 때까지 기다리십시오. 그런 다음, 시크릿, PVC 및 네임스페이스를 삭제합니다:
kubectl delete secret instana-registry -n instana-kafka kubectl get pvc -n instana-kafka kubectl delete pvc --all -n instana-kafka kubectl delete namespace instana-kafka - Elasticsearch 와 Elastic 연산자를 제거하십시오.
kubectl delete -f elastic.yaml -n instana-elasticElasticsearch 포드가 삭제된 후, Elastic 오퍼레이터를 제거하십시오:
helm uninstall elastic-operator -n instana-elastic모든 포드가 종료될 때까지 기다리십시오. 그런 다음, 시크릿, PVC 및 네임스페이스를 삭제합니다:
kubectl delete secret instana-registry -n instana-elastic kubectl get pvc -n instana-elastic kubectl delete pvc --all -n instana-elastic kubectl delete namespace instana-elastic
- Beeinstana 와 Beeinstana 연산자를 제거하십시오.
- 모든 데이터 스토어 네임스페이스가 제거되었는지 확인하십시오.
kubectl get ns출력 결과에 데이터 스토어 파드와 네임스페이스가 하나도 포함되어 있지 않은지 확인하십시오. - cert-manager 의 구성 요소와 네임스페이스를 삭제하여 프로그램을 제거하십시오.Draft comment: Bob
Converted section 8 "Uninstalling cert manager" into a task step.kubectl delete -f https://github.com/cert-manager/cert-manager/releases/download/v1.20.2/cert-manager.yaml계속 진행하기 전에 모든 리소스와 네임스페이스가cert-manager삭제될 때까지 기다리십시오. - Instana 의 Core 및 Unit 사용자 정의 리소스 정의(CRD)를 삭제합니다.Draft comment: Bob
Converted section "Deleting the CRDs" into task steps. Separated Instana CRDs from datastore CRDs for clarity.Instana 의 CRD가 존재하는지 확인하십시오:
kubectl get crd | grep instana출력 예제:
cores.instana.io 2026-06-25T06:11:47Z units.instana.io 2026-06-25T06:11:47ZCRD를 삭제합니다:
kubectl delete crd cores.instana.io units.instana.io - 데이터 스토어와 관련된 CRD를 삭제하십시오.
데이터 스토어와 관련된 CRD를 나열하십시오:
kubectl get crd --show-labels | grep -E 'cassandra|cnpg|kafka|strimzi|clickhouse|elastic|postgres|beeinstana'나열된 CRD를 삭제하십시오. 다음 예제는 예상되는 모든 CRD를 보여줍니다:
kubectl delete crd \ agents.agent.k8s.elastic.co \ apmservers.apm.k8s.elastic.co \ autoopsagentpolicies.autoops.k8s.elastic.co \ backups.postgresql.cnpg.io \ beats.beat.k8s.elastic.co \ cassandradatacenters.cassandra.datastax.com \ cassandratasks.control.k8ssandra.io \ clickhouseinstallations.clickhouse.altinity.com \ clickhouseinstallationtemplates.clickhouse.altinity.com \ clickhousekeeperinstallations.clickhouse-keeper.altinity.com \ clickhouseoperatorconfigurations.clickhouse.altinity.com \ clusterimagecatalogs.postgresql.cnpg.io \ clusters.postgresql.cnpg.io \ databases.postgresql.cnpg.io \ elasticmapsservers.maps.k8s.elastic.co \ elasticsearchautoscalers.autoscaling.k8s.elastic.co \ elasticsearches.elasticsearch.k8s.elastic.co \ enterprisesearches.enterprisesearch.k8s.elastic.co \ failoverquorums.postgresql.cnpg.io \ imagecatalogs.postgresql.cnpg.io \ kafkabridges.kafka.strimzi.io \ kafkaconnectors.kafka.strimzi.io \ kafkaconnects.kafka.strimzi.io \ kafkamirrormaker2s.kafka.strimzi.io \ kafkanodepools.kafka.strimzi.io \ kafkarebalances.kafka.strimzi.io \ kafkas.kafka.strimzi.io \ kafkatopics.kafka.strimzi.io \ kafkausers.kafka.strimzi.io \ kibanas.kibana.k8s.elastic.co \ logstashes.logstash.k8s.elastic.co \ packageregistries.packageregistry.k8s.elastic.co \ poolers.postgresql.cnpg.io \ publications.postgresql.cnpg.io \ scheduledbackups.postgresql.cnpg.io \ stackconfigpolicies.stackconfigpolicy.k8s.elastic.co \ subscriptions.postgresql.cnpg.io - 선택 사항: 배포가 Red Hat OpenShift 클러스터에 있는 경우, 보안 컨텍스트 제약 조건(SCC)을 삭제하십시오.Draft comment: Bob
Converted section 9 "Deleting the SCCs" into an optional OCP step.Instana 와 관련된 SCC를 나열하십시오:
oc get scc | grep -E "cassandra|clickhouse|instana|postgres|cnpg"출력 예제:
cassandra-scc false <no value> RunAsAny MustRunAs RunAsAny RunAsAny <no value> false clickhouse-scc false <no value> RunAsAny MustRunAs RunAsAny RunAsAny <no value> falseSCC를 삭제합니다:
oc delete scc cassandra-scc clickhouse-scc - Instana 와 관련된 클러스터 역할, 클러스터 역할 바인딩 및 웹훅 구성을 삭제합니다.Draft comment: Bob
Converted section 10 into a task step. Condensed verbose explanation into a single actionable step with example output.자원을 나열하십시오:
kubectl get clusterroles,clusterrolebindings,validatingwebhookconfigurations,mutatingwebhookconfigurations \ | grep -E "instana|cassandra|kafka|cnpg|postgres|elastic|clickhouse|beeinstana"출력 예제:
clusterrole.rbac.authorization.k8s.io/instana-operator 2026-06-25T06:11:47Z clusterrole.rbac.authorization.k8s.io/instana-operator-webhook 2026-06-25T06:11:47Z clusterrolebinding.rbac.authorization.k8s.io/instana-operator ClusterRole/instana-operator 28h clusterrolebinding.rbac.authorization.k8s.io/instana-operator-webhook ClusterRole/instana-operator-webhook 28h validatingwebhookconfiguration.admissionregistration.k8s.io/instana-operator-webhook-validating 2 28h나열된 리소스를 삭제하십시오:
kubectl delete \ clusterrole/instana-operator \ clusterrole/instana-operator-webhook \ clusterrolebinding/instana-operator \ clusterrolebinding/instana-operator-webhook \ validatingwebhookconfiguration/instana-operator-webhook-validating
결과
커스텀 에디션이 제거되었습니다. 클러스터에서 모든 사용자 정의 리소스, 연산자, 데이터 스토어 구성 요소, 네임스페이스, CRD 및 RBAC 리소스가 제거됩니다.
Converted section 4 "Remove Unit Resources" into task steps. Verification substeps are added as info/stepresult elements for proper DITA structure.