运行部署时出现以下错误:Error from server (NotFound): error when creating "n3deployment.yaml": namespaces "n2" not found
我的n3deployment.yaml没有引用n2?
循序渐进
1.确保所有内容均为空
c:\temp\k8s>kubectl get pods
No resources found.
c:\temp\k8s>kubectl get svc
No resources found.
c:\temp\k8s>kubectl get deployments
No resources found.
c:\temp\k8s>kubectl get namespaces
NAME STATUS AGE
default Active 20h
docker Active 20h
kube-public Active 20h
kube-system Active 20h
1.建立档案
n3namespace.yaml
apiVersion: v1
kind: Namespace
metadata:
name: n3
n3service.yaml
apiVersion: v1
kind: Service
metadata:
name: my-app-n3
namespace: n3
labels:
app: my-app-n3
spec:
type: LoadBalancer
ports:
- name: http
port: 80
targetPort: http
protocol: TCP
selector:
app: my-app-n3
n3deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app-n3
labels:
app: my-app-n3
spec:
replicas: 1
selector:
matchLabels:
app: my-app-n3
template:
metadata:
labels:
app: my-app-n3
spec:
containers:
- name: waiter
image: waiter:v1
ports:
- containerPort: 80
1.应用配置
c:\temp\k8s>kubectl apply -f n3namespace.yaml
namespace "n3" created
c:\temp\k8s>kubectl apply -f n3service.yaml
service "my-app-n3" created
c:\temp\k8s>kubectl apply -f n3deployment.yaml
Error from server (NotFound): error when creating "n3deployment.yaml": namespaces "n2" not found
我曾经有一个名为n2
的名称空间,但是,正如您所看到的,它已经不存在了。
6条答案
按热度按时间bqucvtff1#
我之前创建了两个上下文,我的minikube集群被设置为仍然在
n2
上下文中。我删除了上下文,重新运行命令,它工作了。mdfafbf12#
添加命名空间:n3符合展开规范
yshpjwxd3#
在我的例子中,我创建了context并将--namespace设置为不存在的context,解决方案是使用kubectl命令只切换名称空间:
您可以使用以下方法检查您的情况是否存在相同的问题:
jrcvhitl4#
我认为您可以使用kubens和kubectx来验证您在哪个名称空间和上下文上验证您的kubernetes清单文件
eoxn13cs5#
在您的n3deployment.yaml文件中,在元数据部分下也添加名称空间,如下所示
uxhixvfz6#
在我的情况下,我失踪之前就已经执行了: