【kubectl详解】

本文详细介绍了Kubernetes的资源管理方法,包括陈述式和声明式两种,展示了kubectl的基本操作,如查看集群状态、命名空间管理、创建和删除资源、应用发布策略、项目生命周期管理和yaml/json配置文件的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、陈述式资源管理方法

陈述式资源管理方法:
1.kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口
2.kubectl 是官方的CLI命令行工具,用于与 apiserver 进行通信,将用户在命令行输入的命令,组织并转化为 apiserver 能识别的信息,进而实现管理 k8s 各种资源的一种有效途径
3.kubectl 的命令大全
kubectl --help
k8s中文文档:http://docs.kubernetes.org.cn/683.html
4.对资源的增、删、查操作比较方便,但对改的操作就不容易了

在这里插入图片描述

//查看版本信息
kubectl version

在这里插入图片描述

//查看资源对象简写
kubectl api-resources

在这里插入图片描述

//查看集群信息
kubectl cluster-info

在这里插入图片描述

//配置kubectl自动补全
source <(kubectl completion bash)
//node节点查看日志
journalctl -u kubelet -f

在这里插入图片描述

二、基本信息查看

kubectl get [-o wide|json|yaml] [-n namespace]
获取资源的相关信息,-n 指定命令空间,-o 指定输出格式
resource可以是具体资源名称,如pod nginx-xxx;也可以是资源类型,如pod;或者all(仅展示几种核心资源,并不完整)
–all-namespaces 或 -A :表示显示所有命名空间,
–show-labels :显示所有标签
-l app :仅显示标签为app的资源
-l app=nginx :仅显示包含app标签,且值为nginx的资源

1、查看 master 节点状态

kubectl get componentstatuses
kubectl get cs

在这里插入图片描述

2、查看命名空间

kubectl get namespace
kubectl get ns

命令空间的作用:用于允许不同 命名空间 的 相同类型 的资源 重名的
在这里插入图片描述

3、查看命名空间的所有资源

kubectl get <资源类型|all> [资源名称] -n 命名空间 -o wide|yaml|json  -w

kubectl get -n kubernetes-dashboard all

在这里插入图片描述

4、创建命名空间app

kubectl create ns dznb
kubectl get ns

在这里插入图片描述

5、删除命名空间app

kubectl delete namespace dznb
kubectl get ns	

在这里插入图片描述

6、在命名空间kube-public 创建副本控制器(deployment)来启动Pod(nginx-dz)

kubectl create <资源类型> <资源名称> -n 命名空间  [选项]
                                                  --image=镜像  --replicas=副本数  --port=容器端口

kubectl create deployment nginx-dz --image=nginx  -n dznb

//描述某个资源的详细信息
kubectl describe deployment nginx-dz -n dznb

在这里插入图片描述

7、描述某个资源的详细信息

kubectl describe <资源类型> <资源名称> -n 命名空间

kubectl describe deployment nginx-dz -n dznb
kubectl describe pod nginx-dz-66b6885c9 -n dznb

在这里插入图片描述

8、查看命名空间kube-public 中的pod 信息


                
kubectlKubernetes的命令行工具,用于与Kubernetes集群进行交互和管理。下面是kubectl的一些常用命令及其详解: 1. kubectl get:用于获取资源的信息。例如,使用kubectl get pods可以获取当前集群中所有的Pod信息。 2. kubectl create:用于创建资源。例如,使用kubectl create deployment可以创建一个新的Deployment。 3. kubectl apply:用于应用配置文件或更新资源。例如,使用kubectl apply -f deployment.yaml可以应用一个Deployment的配置文件。 4. kubectl describe:用于查看资源的详细信息。例如,使用kubectl describe pod my-pod可以查看名为my-pod的Pod的详细信息。 5. kubectl delete:用于删除资源。例如,使用kubectl delete pod my-pod可以删除名为my-pod的Pod。 6. kubectl exec:用于在容器内执行命令。例如,使用kubectl exec my-pod -- ls可以在名为my-pod的Pod中执行ls命令。 7. kubectl logs:用于查看容器的日志。例如,使用kubectl logs my-pod可以查看名为my-pod的Pod中容器的日志。 8. kubectl port-forward:用于将本地端口与Pod或Service的端口进行转发。例如,使用kubectl port-forward my-pod 8080:80可以将本地的8080端口与名为my-pod的Pod中的80端口进行转发。 9. kubectl scale:用于调整资源的副本数。例如,使用kubectl scale deployment/my-deployment --replicas=3可以将名为my-deployment的Deployment的副本数调整为3。 10. kubectl rollout:用于管理资源的滚动更新。例如,使用kubectl rollout restart deployment/my-deployment可以重新启动名为my-deployment的Deployment。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值