티스토리 뷰
검색어 필터링 후 컴포넌트 삭제 Deleting components which are filtered by search text
Jordy-torvalds 2019. 11. 15. 17:08검색어 필터링 후 컴포넌트 삭제 Deleting components which are filtered by search text
Outline
쿠버네티스를 공부하며 이런저런 시도를 하다보니 Pod의 수가 엄청나게 많아졌다. 그래서 삭제를 할려고 하니 일일히 이름을 복사 붙여넣기 해서 삭제해야 한다.
O 삭제 명령어
kubectl delete po <pod name>
O 전체 Pod 목록
NAME READY STATUS REST ARTS AGE
batch-job-wczks 1/1 Running 0 11s
jordi-9r74l 1/1 Running 0 5d23h
jordi-hwp4r 1/1 Running 0 5d23h
jordi-liveness 1/1 Running 0 16d
jordi-skxq7 1/1 Running 0 5d23h
jordi2-j7vxh 1/1 Running 0 11d
jordi2-tkkfv 1/1 Running 0 11d
jordi2-twtw9 1/1 Running 0 11d
jordi44444444444444444444444444444444444444444444-9xlz7 1/1 Running 0 18h
jordi44444444444444444444444444444444444444444444-flssc 1/1 Running 0 18h
jordi44444444444444444444444444444444444444444444-kjcg8 1/1 Running 0 18h
kubia-manual-test 1/1 Running 0 16d
kubia1 1/1 Running 0 18h
ssd-monitor-n562r 1/1 Running 0
한, 두개 쯤 지우다가 방법을 찾았다. 난 개발자다, 돈 안 받고 미친 반복을 하지 않는다.
Solution
O Pod 텍스트 필터링 삭제 명령어
kubectl get pods --no-headers=true | grep <search text> | awk '{print $1}' | xargs kubectl delete pods
무진장 긴 명령어가 나왔다. 뒤로가기 혹은 ctrl+W
를 누르고 싶은 마음을 조금만 다독이고 함께 쪼깨어 분석해보자.
위 명령어의 처리 순서는 아래와 같다
- 헤더 항목을 제외하고 전체 Pods 조회
- grep 을 통해 일부 Pods만 선택
- 이름 컬럼만 선택
- Pods 삭제
1번 부터 보자.
O 헤더 항목을 출력하지 않는 전체 Pod 조회
kubectl get pods --no-headers=true
batch-job-wczks 1/1 Running 0 11s
jordi-9r74l 1/1 Running 0 5d23h
jordi-hwp4r 1/1 Running 0 5d23h
jordi-liveness 1/1 Running 0 16d
jordi-skxq7 1/1 Running 0 5d23h
jordi2-j7vxh 1/1 Running 0 11d
jordi2-tkkfv 1/1 Running 0 11d
jordi2-twtw9 1/1 Running 0 11d
jordi44444444444444444444444444444444444444444444-9xlz7 1/1 Running 0 18h
jordi44444444444444444444444444444444444444444444-flssc 1/1 Running 0 18h
jordi44444444444444444444444444444444444444444444-kjcg8 1/1 Running 0 18h
kubia-manual-test 1/1 Running 0 16d
kubia1 1/1 Running 0 18h
ssd-monitor-n562r 1/1 Running 0
O jordi란 이름이 포함된 row만 필터링
grep jordi
jordi 부분에 원하는 단어를 입력한 된다.
jordi-9r74l 1/1 Running 0 5d23h
jordi-hwp4r 1/1 Running 0 5d23h
jordi-liveness 1/1 Running 0 16d
jordi-skxq7 1/1 Running 0 5d23h
jordi2-j7vxh 1/1 Running 0 11d
jordi2-tkkfv 1/1 Running 0 11d
jordi2-twtw9 1/1 Running 0 11d
jordi44444444444444444444444444444444444444444444-9xlz7 1/1 Running 0 18h
jordi44444444444444444444444444444444444444444444-flssc 1/1 Running 0 18h
jordi44444444444444444444444444444444444444444444-kjcg8 1/1 Running 0
O 이름 컬럼만 선택
awk '{print $1}'
$ 뒤에 숫자가 몇 번째 컬럼인지 명시하는 역할을 한다.
jordi-9r74l
jordi-hwp4r
jordi-liveness
jordi-skxq7
jordi2-j7vxh
jordi2-tkkfv
jordi2-twtw9
jordi44444444444444444444444444444444444444444444-9xlz7
jordi44444444444444444444444444444444444444444444-flssc
jordi44444444444444444444444444444444444444444444-kjcg8
O 앞선 명령어의 결과를 Parameter로 받아 Pods 삭제
xargs kubectl delete po
xargs 를 통해서 앞선 명령어의 결과를 입력으로 받아 인자를 연속으로 나열하여 커맨드를 실행할 수 있다.
그래서 개별로우 마다 delete 처리를 할 수 있다.
pod "jordi-9r74l" deleted
pod "jordi-hwp4r" deleted
pod "jordi-liveness" deleted
pod "jordi-skxq7" deleted
pod "jordi2-j7vxh" deleted
pod "jordi2-tkkfv" deleted
pod "jordi2-twtw9" deleted
pod "jordi44444444444444444444444444444444444444444444-9xlz7" deleted
pod "jordi44444444444444444444444444444444444444444444-flssc" deleted
pod "jordi44444444444444444444444444444444444444444444-kjcg8" deleted
-
END
정말 쉽고 간단하게 pod 검색 삭제를 해보았다. Pods 자리에 다른 Component 명을 입력하면 다른 것도 검색 삭제가 가능하다. (ex.replica set, deployment).
불필요한 단순 반복 작업 하지말고 영리하게 명령어로 일괄 처리 하자!
'Infra > Kubernetes' 카테고리의 다른 글
About Service(2), Basic Concept 2 (0) | 2019.11.23 |
---|---|
About Service(1), Basic Concept (0) | 2019.11.19 |
About Daemon Set (2) | 2019.11.12 |
About Replication Controller (0) | 2019.11.08 |
Differences Between Replica Set and Replica Controller (0) | 2019.11.01 |
- Total
- Today
- Yesterday
- k8s
- Java Memory Structure
- Effective Java
- JMM
- JVM
- POD
- 자바 메모리 구조
- Replication Controller
- Delete
- kubernetes
- Java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |