K8S资源管理

本文介绍了Kubernetes中的资源管理,包括命令式对象管理和声明式对象配置。kubectl作为命令行工具用于创建、查看和删除namespace、pod等资源。通过yaml文件进行声明式配置,可以创建并更新资源状态。此外,文章还提及kubectl在node节点上的使用。
摘要由CSDN通过智能技术生成

目录

一 资源管理介绍

二 资源管理方式

2.1 命令式对象管理

2.2命令对象配置

2.3 声明式对象配置


一 资源管理介绍

        kubernetes本质上就是一个集群系统,用户可以在集群中部署各种服务,所谓部署服务,其实就是在k8s中运行一个个容器,并将指定的程序跑在容器中

        k8s最小管理单元是pod而不是容器,所以只能将容器放在pod中,而k8s一般也不会直接管理pod,二十通过pod控制器来管理

        pod提供服务,k8s提供service资源实现这个功能

二 资源管理方式

2.1 命令式对象管理

        kubectl是k8s集群命令行工具

kubectl [comand] [type] [name] [flags]
  • comamd: 指定要对资源执行的操作,例如create , get , delete
  • type:指定资源类型,比如deployment、pod、service
  • name:指定资源名称
  • flags:指定额外可选参数
#查看所有pod
kubectl get pod

#查看某个pod
kubectl get pod pod_name

##查看某个pod 以yaml格式展示结果
kubectl get pod pod_name -o yaml

简单演示namespace /pod 创建和删除简单演示下命令的使用

1.创建一个namesapce
[root@master ~]# kubectl create namespace dev
namespace/dev created

2.获取namespace

[root@master ~]# kubectl get ns
NAME              STATUS   AGE
default           Active   3h12m
dev               Active   10s

3.在namespace创建并运行也该nginx pod
[root@master ~]# kubectl run pod --image=nginx -n dev
pod/pod created

4.查看新创建的pod
[root@master ~]# kubectl get pod  -n dev
NAME   READY   STATUS    RESTARTS   AGE
pod    1/1     Running   0          39s

5.删除指定的pod
[root@master ~]# kubectl delete pod pod -n dev
pod "pod" deleted

6,删除指定的namespace
[root@master ~]# kubectl delete ns dev
namespace "dev" deleted

2.2命令对象配置

1.编写yaml文件
[root@master ~]# cat nginxpod.yaml 
apiVersion: v1
kind: Namespace
metadata:
       name: dev

---

apiVersion: v1
kind: pod
metadata:
      name: nginxpod
      namespace: dev
spec:
 containers:
   - name: nginx-containers
     mage: nginx

2.执行create命令 创建资源
[root@master ~]# kubectl create -f nginxpod.yaml

3.查看资源
[root@master ~]# kubectl get ns dev
NAME   STATUS   AGE
dev    Active   10m
[root@master ~]# kubectl get pod -n dev
NAME       READY   STATUS    RESTARTS   AGE
nginxpod   1/1     Running   0          67s

4.删除资源
[root@master ~]# kubectl delete -f nginxpod.yaml 


2.3 声明式对象配置

 

##apply 只能创建,如继续执行未改变,若修改文件内容则会更新配置。
[root@master ~]# kubectl apply -f nginxpod.yaml 
namespace/dev created
pod/nginxpod created

扩展:kubectl可以在node节点运行吗

只需要在master节点 将home下的./kub 拷贝node节点即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值