我厌倦了删除一个带有12个pod的复制控制器,我可以看到一些pod停留在终止状态.我的Kubernetes设置包括在ubuntu vms中安装的一个主机和三个minons.这个问题可能是什么原因?
NAME READY STATUS RESTARTS AGE
pod-186o2 1/1 Terminating 0 2h
pod-4b6qc 1/1 Terminating 0 2h
pod-8xl86 1/1 Terminating 0 1h
pod-d6htc 1/1 Terminating 0 1h
pod-vlzov 1/1 Terminating 0 1h
Run Code Online (Sandbox Code Playgroud) 在查看文档时,有一个api调用删除'a'pod,有没有办法杀死所有命名空间中的所有pod?
在Mac OS 10.10.3下,我通过输入以下命令安装了gnu-sed:
brew install gnu-sed --default-names
Run Code Online (Sandbox Code Playgroud)
当我再次输入时,我收到消息:
已经安装了gnu-sed-4.2.2
但是,即使重新启动系统并重新启动终端,我仍然无法使用sed的GNU版本.例如:
echo a | sed ’s_A_X_i’
Run Code Online (Sandbox Code Playgroud)
返回:替换命令'i'中的坏标志
我该怎么做才能让GNU版本正常工作?以下是$ PATH变量中的路径.
/Users/WN/-myUnix
/opt/local/bin
/opt/local/sbin
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
/Applications/calibre.app/Contents/MacOS
/opt/ImageMagick/bin
/usr/texbin
Run Code Online (Sandbox Code Playgroud)
如果我的问题看起来很明显,我很抱歉,但我自己学习shell脚本,并且还不太了解UNIX程序的安装方式.任何帮助使用GNU兼容命令(在这种情况下sed,但很快我也需要其他人)在我的Mac上不会造成损害或不必要的混乱将非常感激.
我在终止集群中的命名空间时遇到问题,它在命名空间 JSON 中显示了许多参数。我点击了此链接https://medium.com/@craignewtondev/how-to-fix-kubernetes-namespace-deleting-stuck-in-termination-state-5ed75792647e
"spec": {},
"status": {
"conditions": [
{
"lastTransitionTime": "2021-01-11T08:41:48Z",
"message": "All resources successfully discovered",
"reason": "ResourcesDiscovered",
"status": "False",
"type": "NamespaceDeletionDiscoveryFailure"
},
{
"lastTransitionTime": "2021-01-11T08:41:48Z",
"message": "All legacy kube types successfully parsed",
"reason": "ParsedGroupVersions",
"status": "False",
"type": "NamespaceDeletionGroupVersionParsingFailure"
},
{
"lastTransitionTime": "2021-01-11T08:41:48Z",
"message": "All content successfully deleted, may be waiting on finalization",
"reason": "ContentDeleted",
"status": "False",
"type": "NamespaceDeletionContentFailure"
},
{
"lastTransitionTime": "2021-01-11T08:42:09Z",
"message": "All content successfully removed",
"reason": "ContentRemoved",
"status": "False",
"type": "NamespaceContentRemaining"
},
{
"lastTransitionTime": "2021-01-11T08:41:48Z", …Run Code Online (Sandbox Code Playgroud) 如何强制删除停留在终止中的命名空间?
apiVersion: v1
kind: Namespace
metadata:
name: delete-me
spec:
finalizers:
- foregroundDeletion
Run Code Online (Sandbox Code Playgroud)
kubectl delete ns delete-me
无法删除delete-me。
我发现的唯一解决方法是销毁并重新创建整个集群。
这些都不起作用或修改命名空间。在所有这些之后,有问题的终结器仍然存在。
kubectl apply应用:
apiVersion: v1
kind: Namespace
metadata:
name: delete-me
spec:
finalizers:
Run Code Online (Sandbox Code Playgroud)
$ kubectl apply -f tmp.yaml
namespace/delete-me configured
Run Code Online (Sandbox Code Playgroud)
该命令无错误地结束,但是名称空间未删除。
下面的YAML具有相同的结果:
apiVersion: v1
kind: Namespace
metadata:
name: delete-me
spec:
Run Code Online (Sandbox Code Playgroud)
kubectl editkubectl edit ns delete-me,然后删除终结器。同上完全删除列表。同上删除spec。同上替换finalizers为空列表。
$ kubectl edit ns delete-me
namespace/delete-me edited
Run Code Online (Sandbox Code Playgroud)
这不会显示任何错误信息,但不会更新命名空间。kubectl edit再次查看该对象将显示终结器仍然存在。
kubectl proxy &kubectl …我们有一个集群,看来似乎永远都不想完全删除名称空间,现在无法重新创建自定义指标名称空间以能够收集自定义指标以正确设置HPA。我完全理解,我可以使用所有自定义指标资源创建另一个名称空间,但是由于名称空间陷入了“终止”状态,因此与集群的整体运行状况有些关系
$ kubectl get ns
NAME STATUS AGE
cert-manager Active 14d
custom-metrics Terminating 7d
default Active 222d
nfs-share Active 15d
ingress-nginx Active 103d
kube-public Active 222d
kube-system Active 222d
lb Terminating 4d
monitoring Terminating 6d
production Active 221d
Run Code Online (Sandbox Code Playgroud)
我已经尝试将名称空间导出为JSON,删除终结器并使用已编辑的JSON文件重新创建。还尝试kubectl编辑ns自定义指标并删除“-kubernetes”终结器。一切都无济于事。
是否有人对我如何可以销毁这些“卡住”的命名空间有其他建议?
卷曲到https://master-ip/api/v1/namespace/...../finalize对我来说似乎不适用于Google Kubernetes Engine,我假设在GKE集群上不允许这些操作
尝试类似的事情也不起作用:
$ kubectl delete ns custom-metrics --grace-period=0 --force
Run Code Online (Sandbox Code Playgroud)
警告:立即删除不会等待确认正在运行的资源已终止。资源可能会无限期地继续在群集上运行。服务器错误(冲突):无法在名称空间“自定义指标”上执行操作:系统正在确保从该名称空间中删除所有内容。完成后,该名称空间将由系统自动清除。
并且此命名空间中根本没有列出任何资源:
kubectl get all -n custom-metrics或者循环访问此命名空间中的所有api资源都表明根本不存在任何资源:
kubectl api-resources --namespaced=true -o name | xargs -n 1 kubectl get -n custom-metrics
kubernetes ×5
amazon-eks ×1
bash ×1
gnu ×1
homebrew ×1
macos ×1
namespaces ×1
rancher ×1
rest ×1
sed ×1