k8s-kubectl命令-三种资源管理方式:命令式管理

介绍

就是通过 kubectl 命令创建、查询

查看所有 namespace

namespace 相当于城市的 “区”,城市大到一定程度,为了方便管理,划分为各个区,如:朝阳区、高新区、经济开发区

kubectl get ns

显示结果如下:

NAME              STATUS   AGE
default           Active   33h
kube-node-lease   Active   33h
kube-public       Active   33h
kube-system       Active   33h

default 是默认命名空间,创建pod时,如果不指定命名空间,就创建到 default

kube-node-lease、kube-public、kube-system 是k8s自动创建的 namespace

创建 namespace

kubectl create namespace test

指定命名空间创建并运行Pod

在 test 命名空间下,创建最新版的nginx,并运行

kubectl run pod --image=nginx:latest -n test

查看指定命名空间的 pod

kubectl get pod -n test

显示结果如下:

NAME                   READY   STATUS    RESTARTS   AGE
pod-644584df94-8vvnn   1/1     Running   0          48s

查看执行过程

查看 pod 执行过程(必须指定命名空间,否则从 default 命名空间中查找):

kubectl describe pod pod-644584df94-8vvnn -n test

删除指定的pod

必须指定命名空间,否则从 default 命名空间中查找

提示:执行删除命令,时间较长

kubectl delete pod pod-644584df94-8vvnn -n test

删除后,再次查看 test 空间下的pod

kubectl get pod -n test

执行结果如下:

NAME                   READY   STATUS              RESTARTS   AGE
pod-644584df94-tkhr6   0/1     ContainerCreating   0          16s

这个就是k8s的优点,如果删除一个pod,会自动再次创建并运行一个pod,防止无删除,导致服务不可用

这里可通过删除 test 空间,实现删除所有的资源

删除指定的namespace

删除 test 空间,也就删除所有的资源

提示:执行删除命令,时间较长

kubectl delete ns test

原文出处:/show_1IX6KASKSIhT.html