inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

데브옵스(DevOps)를 위한 쿠버네티스 마스터

namespace 삭제가 안되요.

1371

learn

작성한 질문수 2

0

안녕하세요. 좋은 강의 잘 보고 있습니다.

$ kubectl version
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.10", GitCommit:"62876fc6d93e891aa7fbe19771e6a6c03773b0f7", GitTreeState:"clean", BuildDate:"2020-10-15T01:52:24Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.14", GitCommit:"5de7fd1f9555368a86eb0f8f664dc58055c17269", GitTreeState:"clean", BuildDate:"2021-01-18T09:31:01Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}


Namespace를 삭제하면, Terminating 상태로 삭제가 되지 않습니다.

sansae@dev$ kubectl get ns
NAME              STATUS        AGE
default           Active        21d
dev               Active        47h
ingress-basic     Terminating   7d3h
ingress-nginx     Active        72m
kube-node-lease   Active        21d
kube-public       Active        21d
kube-system       Active        21d

아래 방법으로 시도하였으나, 마찬가지 삭제가 되지 않아요 ㅠㅠ;

$ kubectl get namespace ingress-basic -o json > tmp.json
$ kubectl proxy --prot=8888 &
$ curl -k -H "Content-Type: application/json" -X PUT --data-binary @tmp.json http://127.0.0.1:8888/api/v1/namespaces/ingress-basic/finalize

CURL실행 응답값.

spaces/ingress-basic/finalize
{
  "kind": "Namespace",
  "apiVersion": "v1",
  "metadata": {
    "name": "ingress-basic",
    "selfLink": "/api/v1/namespaces/ingress-basic/finalize",
    "uid": "217b3527-e540-463e-915d-c9eff4c9f07b",
    "resourceVersion": "5775075",
    "creationTimestamp": "2021-02-10T00:16:16Z",
    "deletionTimestamp": "2021-02-17T02:09:50Z",
    "managedFields": [
      {
        "manager": "kubectl",
        "operation": "Update",
        "apiVersion": "v1",
        "time": "2021-02-10T00:16:16Z",
        "fieldsType": "FieldsV1",
        "fieldsV1": {"f:status":{"f:phase":{}}}
      },
      {
        "manager": "kube-controller-manager",
        "operation": "Update",
        "apiVersion": "v1",
        "time": "2021-02-17T02:09:55Z",
        "fieldsType": "FieldsV1",
        "fieldsV1": {"f:status":{"f:conditions":{".":{},"k:{\"type\":\"NamespaceContentRemaining\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}},"k:{\"type\":\"NamespaceDeletionContentFailure\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}},"k:{\"type\":\"NamespaceDeletionDiscoveryFailure\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}},"k:{\"type\":\"NamespaceDeletionGroupVersionParsingFailure\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}},"k:{\"type\":\"NamespaceFinalizersRemaining\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}}}}}
      }
    ]
  },
  "spec": {
    "finalizers": [
      "kubernetes"
    ]
  },
  "status": {
    "phase": "Terminating",
    "conditions": [
      {
        "type": "NamespaceDeletionDiscoveryFailure",
        "status": "True",
        "lastTransitionTime": "2021-02-17T02:09:55Z",
        "reason": "DiscoveryFailed",
        "message": "Discovery failed for some groups, 1 failing: unable to retrieve the complete list of server APIs: webhook.cert-manager.io/v1beta1: the server is currently unable to handle the request"
      },
      {
        "type": "NamespaceDeletionGroupVersionParsingFailure",
        "status": "False",
        "lastTransitionTime": "2021-02-17T02:09:55Z",
        "reason": "ParsedGroupVersions",
        "message": "All legacy kube types successfully parsed"
      },
      {
        "type": "NamespaceDeletionContentFailure",
        "status": "False",
        "lastTransitionTime": "2021-02-17T02:09:55Z",
        "reason": "ContentDeleted",
        "message": "All content successfully deleted, may be waiting on finalization"
      },
      {
        "type": "NamespaceContentRemaining",
        "status": "False",
        "lastTransitionTime": "2021-02-17T02:09:55Z",
        "reason": "ContentRemoved",
        "message": "All content successfully removed"
      },
      {
        "type": "NamespaceFinalizersRemaining",
        "status": "False",
        "lastTransitionTime": "2021-02-17T02:09:55Z",
        "reason": "ContentHasNoFinalizers",
        "message": "All content-preserving finalizers finished"
      }
    ]
  }
}

namespace kubernetes docker

답변 1

2

CLOUD SECURITY LAB

안녕하세요 강사 최일선입니다.

포드가 정상 종료되지 않는 경우에 네임스페이스가 삭제가 되지 않고 스턱될 수 있습니다.

-f 옵션을 명령에 추가로 사용하시면 포드를 강제로 삭제할 수 있습니다.

kubectl delete pod --all -f -n <네임스페이스>

그럼 네임스페이스가 종료될 것으로 생각됩니다.

다음 내용도 참고해보시면 좋을 듯합니다.

kubernetes - Namespace "stuck" as Terminating, How do I remove it? - Stack Overflow

감사합니다!

cilium install 오류

0

83

2

external-ip로 지정된 ip주소로 접속되지 않습니다.

0

72

1

Google cloud에서 클러스터를 만드는 중에 다음과 같은 오류가 발생합니다.

0

107

2

강의가 중간에 끊긴 느낌이 듭니다.

0

70

1

이론 강의 pdf 자료 다운로드 문의

0

141

2

vmware 로 가상서버 여러 대 띄울때 고정ip 로 각각 할당하는 법 알려주세요

0

1382

2

강의해주시는 별도의 강의 자료는 없나요 ??

0

206

1

스토리지 클래스

0

221

1

버전관리

0

179

1

강의 흐름 이상

0

258

1

4 쿠버네티스 워크로드에서부터 갑자기

0

252

1

영상이 나오지 않습니다.

1

219

1

kubeadm init 실패(+join할 때도 참고)

2

1488

0

2024년 3월 4일 기준 설치

3

1580

2

loadbalancer 문의 드립니다.

0

230

1

NodePord local 환경에서 안됨

0

407

2

kubectl apply 와 create 차이점

0

893

1

서비스 DNS 연습문제 중 마지막 요청 실패 질문있습니다 (feat. 서비스 생성 실패 해결방법)

0

308

1

master init error

0

551

2

gasbugs/http-go 이미지 에러

1

369

2

GKE 질문입니다

0

300

1

worker에서 join할 때 오류발생

0

560

2

포트포워딩 및 nfs 관련

0

595

1

sessionAffinity 작동관련 질문

0

504

2