目录
一、Kubernetes资源创建方式
- 命令行
- YAML文件
deployment、statefulset、daemonset、job、cronjob
二、Namespace
在 Kubernetes 中,名称空间(Namespace) 提供一种机制,将同一集群中的资源划分为相互隔离的组。 同一名称空间内的资源名称要唯一,但跨名称空间时没有这个要求。 名称空间作用域仅针对带有名称空间的对象,例如 Deployment、Service 等, 这种作用域对集群访问的对象不适用,例如 StorageClass、Node、PersistentVolume 等
作用:用来隔离资源;对集群资源进行隔离划分。默认只隔离资源,不隔离网络。
K8S自带的ns
default
kube-node-lease
kube-public
kube-system
Ⅰ、kubectl命令行工具操作
kubectl get ns(namespace)
查看指定名称空间的pods,
kubectl get pods -n kube-system
#查看名称空间kube-system的所有pod
kubectl get pods -A
#查看所有pod
kubectl get pods
#指查看default名称空间所有的pod
创建指定名称空间
kubectl create ns 【name】
删除指定名称空间,会将名称空间下的pod一并删除【谨慎使用】
kubectl delete ns 【name】
Ⅱ、Yaml配置文件操作
也可以使用Yaml配置文件的形式来创建名称空间,需要我们定义一个yaml文件,有关名称空间的内容如下
vim test.yaml
apiVersion: v1
kind: Namespace
metadata:
name: test
使用kubectl应用该配置文件
kubectl apply -f test.yaml
使用Yaml配置文件创建的名称空间可以使用”kubectl delete“直接删除,但一般一个Yaml文件里还有一些其他的资源配置,想要将该Yaml文件里定义的资源一起完整的删除,可以使用以下命令
kubectl delete -f test.yaml
三、Pod
前面在介绍K8S架构时,我们简单的了解了一下K8S中的重要组件Pod,我们都知道,K8S是用来管理容器的,那么最为这个管理容器工具中的最小单位,Pod实际上是一个什么样的概念,以及该怎样去管理它和其下的容器呢?
Pod是运行中的一组容器,K8S为了更方便的管理,将一组运行中的容器进一步的封装成为了Pod,再通过Pod去管理这些容器,Pod中的容器共同组成、提供了一个应用、服务。Pod和Pod之间就像容器与容器之间一样是