如何删除Kubernetes服务

tzcvj98z  于 2023-03-17  发布在  Kubernetes
关注(0)|答案(7)|浏览(187)

命令kubectl get service返回在某个时间点创建的服务列表:

NAME                     CLUSTER-IP   EXTERNAL-IP   PORT(S)                         AGE
car-example-service      10.0.0.129   <nodes>       8025:31564/TCP,1025:31764/TCP   10h
circle-example-service   10.0.0.48    <nodes>       9000:30362/TCP                  9h
demo-service             10.0.0.9     <nodes>       8025:30696/TCP,1025:32047/TCP   10h
example-servic           10.0.0.168   <nodes>       8080:30231/TCP                  1d
example-service          10.0.0.68    <nodes>       8080:32308/TCP                  1d
example-service2         10.0.0.184   <nodes>       9000:32727/TCP                  13h
example-webservice       10.0.0.35    <nodes>       9000:32256/TCP                  1d
hello-node               10.0.0.224   <pending>     8080:32393/TCP                  120d
kubernetes               10.0.0.1     <none>        443/TCP                         120d
mouse-example-service    10.0.0.40    <nodes>       9000:30189/TCP                  9h
spring-boot-web          10.0.0.171   <nodes>       8080:32311/TCP                  9h
spring-boot-web-purple   10.0.0.42    <nodes>       8080:31740/TCP                  9h

我不想再列出这些服务中的任何一项,因为当我列出资源时:% kubectl get rs
我希望我只看到列出的spring-boot-web资源。

NAME                         DESIRED   CURRENT   READY     AGE
spring-boot-web-1175758536   1         1         0         18m

请帮助澄清为什么我看到列出的服务,而资源只显示1个资源。

3duebb1j

3duebb1j1#

只需调用此命令。
1.获取所有可用服务:

kubectl get service -o wide

1.然后,您可以删除类似以下内容的任何服务:

kubectl delete svc <YourServiceName>
ddarikpa

ddarikpa2#

显示部署

$ kubectl get deployments;

NAME              DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
spring-hello      1         1         1            1           22h
spring-world      1         1         1            1           22h
vfe-hello-wrold   1         1         1            1           14m

演出服务

$kubectl get services;

NAME              TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
kubernetes        ClusterIP   10.96.0.1        <none>        443/TCP          2d
spring-hello      NodePort    10.103.27.226   <none>        8081:30812/TCP   23h
spring-world      NodePort    10.102.21.165    <none>        8082:31557/TCP   23h
vfe-hello-wrold   NodePort    10.101.23.36     <none>        8083:31532/TCP   14m

删除部署

$ kubectl delete deployments vfe-hello-wrold

deployment.extensions "vfe-hello-wrold" deleted

删除服务

$ kubectl delete service vfe-hello-wrold

service "vfe-hello-wrold" deleted
u59ebvdq

u59ebvdq3#

Kubernetes对象(如Service和Deployment/ReplicaSet/Pod)是独立的,它们的删除不会相互级联(如Deployment/RS/Pod)。您需要独立于其他对象来管理您的服务,因此您只需要删除那些仍然延迟的服务。

hvvq6cgz

hvvq6cgz4#

如果要同时删除多个相关或非相关对象

kubectl delete <objType>/objname <objType>/objname <objType>/objname

示例

kubectl delete service/myhttpd-clusterip service/myhttpd-nodeport

 kubectl delete service/myhttpd-lb deployment/myhttpd

这个也行

kubectl delete deploy/httpenv svc/httpenv-np
wecizke3

wecizke35#

要删除所有名称空间中的所有服务,只需运行:

kubectl delete --all services --namespace=*here-you-enter-namespace

另一个选项是使用以下命令删除部署:

kubectl delete deployment deployment-name

这也将删除服务!
重要提示:在生产环境中运行此命令时要小心!
干杯!

wvt8vs2t

wvt8vs2t6#

首先查找服务:

kubectl get service -A

记下要删除的服务的名称空间,然后使用

kubectl delete service <YourServiceName> --namespace <YourServiceNameSpace>

另外,仔细检查@Dragomir Ivanov的回答是否更符合您的需要

oprakyz7

oprakyz77#

如果遇到问题,可能是忘记指定名称空间:

-n some-namespace

这让我犯了不少错误。

相关问题