0

我正在阅读k8s它有两种使用方法。两者互为补充。

今天我尝试了一项功能来获取声明性(清单文件)。

假设我创建namespace实例

$ kubectl create namespace cert-manager
namespace/cert-manager created

然后我导出清单文件以便下次使用声明性方法

kubectl get namespace cert-manager -o yaml --export > cert-manager.yaml

cert-manager.yaml

apiVersion: v1
kind: Namespace
metadata:
  creationTimestamp: null
  name: cert-manager
  selfLink: /api/v1/namespaces/cert-manager
spec:
  finalizers:
  - kubernetes
status:
  phase: Active

与其他示例比较

apiVersion: v1
kind: Namespace
metadata:
  name: nginx-ingress

问题

第二个较短的清单文件是否正确完成?

4

1 回答 1

1

是的,您的第二个清单文件是正确的。

描述了您希望对象的状态——spec您希望对象具有的特征。描述对象的status实际状态,由 Kubernetes 系统提供和更新。

Namespaceobject 只有一个可选字段finalizers,它允许 observables 在命名空间被删除时清除资源。

因此,最简单的命名空间清单文件如下:

apiVersion: v1
kind: Namespace
metadata:
  name: <namespace-name>
于 2019-03-05T10:50:19.413 回答