Difference between revisions of "Kubernetes namespaces"

From wikieduonline
Jump to navigation Jump to search
 
(64 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 +
Kubernetes starts with four initial namespaces: <ref>https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/</ref>
 +
* <code>[[default]]</code> is the default namespace for objects with no other namespace.
 +
* <code>[[kube-system]]</code> for objects created by the Kubernetes system.
 +
* <code>[[kube-public]]</code> is created automatically and is readable by all users (including those not authenticated). This namespace is mostly reserved for cluster usage, in case that some resources should be visible and readable publicly throughout the whole cluster. The public aspect of this namespace is only a convention, not a requirement.
 +
* <code>[[kube-node-lease]]</code> holds [[lease objects]] associated with each node. Node leases allow the <code>[[kubelet]]</code> to send [[heartbeats]] so that the control plane can detect node failure.
  
 +
Additional documentation: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
 +
Other typical namespaces: <code>[[Kubernetes monitoring|monitoring]], [[cluster-autoscaler]]</code>
  
Defaults: default and kube-system
+
== Commands ==
 
+
* <code>[[kubectl get namespaces]]</code>
* <code>[[kubectl create]] [[namespace]] MY_TEST_NAMESPACE</code>
+
* <code>[[kubectl create namespace]] MY_TEST_NAMESPACE</code>
 
+
* <code>[[kubectl create namespace]] [[argocd]]</code>
[[kubectl get pods]] --all-namespaces
+
* <code>[[kubectl describe namespace]]</code>
 +
* <code>[[kubectl get all --all-namespaces]]</code>
 +
* <code>[[kubectl get pods]] --all-namespaces</code>
 +
* <code>[[kubectl label namespace]]</code>
  
 
== Activities ==
 
== Activities ==
* [[CKAD]]: [[Create and configure basic Pods]]: <code>[[kubectl create]]</code>, <code>[[kubectl apply]]</code>
+
* [[CKA]]: [[Create and configure basic Pods]]: <code>[[kubectl create]]</code>, <code>[[kubectl apply]]</code>
  
 +
== Related terms ==
 +
* <code>[[kind:|kind: namespace]]</code>
 +
* <code>[[helm list]]</code>
 +
* <code>[[helm install]] -n, --namespace</code>
 +
* <code>[[No resources found in default namespace.]]</code>
 +
* <code>[[kubectl get configmaps -A]]</code>
 +
* <code>default, [[kube-node-lease]], [[kube-public]], [[kube-system]]</code>
 +
* [[Namespace controller]]
 +
* <code>[[kubens]]</code>
  
 +
EKS namespaces:
 +
* <code>[[logging]]</code>
 +
* <code>[[aws-load-balancer-controller]]</code> [[Ingress controller]]
 +
* [[Terraform resource: kubernetes_namespace]]
  
 
== See also ==
 
== See also ==
* {{Kernel}}
+
* {{kubectl}}
* {{dockerd}}
+
* {{Namespace}}
* {{K8s}}
 
 
 
  
 
[[Category:Kubernetes]]
 
[[Category:Kubernetes]]

Latest revision as of 11:18, 26 January 2024

Kubernetes starts with four initial namespaces: [1]

  • default is the default namespace for objects with no other namespace.
  • kube-system for objects created by the Kubernetes system.
  • kube-public is created automatically and is readable by all users (including those not authenticated). This namespace is mostly reserved for cluster usage, in case that some resources should be visible and readable publicly throughout the whole cluster. The public aspect of this namespace is only a convention, not a requirement.
  • kube-node-lease holds lease objects associated with each node. Node leases allow the kubelet to send heartbeats so that the control plane can detect node failure.

Additional documentation: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ Other typical namespaces: monitoring, cluster-autoscaler

Commands[edit]

Activities[edit]

Related terms[edit]

EKS namespaces:

See also[edit]

  • https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
  • Advertising: