首页 > 其他分享 >k8s命令

k8s命令

时间:2024-06-19 20:22:17浏览次数:8  
标签:kubectl get -- 列出 命令 pod k8s 节点

k8s组成

kubectl
// 客户端命令行工具,系统操作入口

kube-apiserver
// 以REST API服务提供接口,作为系统的控制入口

kube-controller-manager
// 执行整个系统的后台任务,包括节点状况状态,Pod个数,Pods和Service的关联等

kube-scheduler
// 负责节点资源管理,接受来自kube-apiserver创建Pods任务,并分配到某个节点

etcd
// 负责节点间的服务发现和资源配置共享

kube-proxy
// 运行在每个节点上,负责Pod网络代理。定时从ectd过去到service信息来做相应的策略

kubelet
// 运行在每个节点上,作为agent,接受分配该节点的Pods任务及管理容器,周期性获取容器状态,反馈给kube-apiserver

DNS
// 一个可选的DNS服务,用于为每个Service对象创建DNS记录,这样所有Pod就可以通过DNS访问服务


kubectl get nodes
// 打印集群信息

kubectl get pod
// 获取pod信息

kubectl logs -f --tail(行数) podName(pod名)
// 查看指定pod的日志信息

kubectl get pod -n (Namespace)
// 查看pod信息,-n 表示Name

kubectl get nodes
// 查看节点信息

kubectl get svc -A
// 查看所有的service信息

kubectl get ns
// 查看所有名称空间

kubectl get pod -A
// 查看所有名称空间的信息

kubectl exec podName env
// 查看指定名称的环境变量

kubectl get pod -o wide
// 获取pod详细信息

kubectl edit pod podName
kubectl edit pod -n Namespace podName -o yaml 指定yaml
// 编辑资源

kubectl cluster-info 、kubectl culster-info dump
// 查看集群信息 、 dump标准输出

kubectl exec -it podName -n nsName /bin/sh、 kubectl exec -it -n naName /bin/bash
// 进入pod容器

kubectl delete pod podName
// 删除指定pod

kubectl delete pod -n Namespace podName
// 删除指定命名空间的pod

kubectl get cs
// 查看集群资源

kubectl get pods -o yaml 、 kubectl get pods -o json
kubectl get pods -n Namespace -o yaml 指定
// 查看pod的详细信息


资源相关

kubectl create -f // 创建对象
kubectl create -f <'url'> // 从url创建对象
kubectl delete -f // 删除对象


集群相关
kubecrl cluster-info --显示集群中主机和服务的端点信息
kubectl version --显示客户端和服务器上运行的Kubernetes版本
kubectl config view --获取集群配置
kubectl config view -o jsonpath='{.users[*].name}' --获取用户列表
kubectl config current-context --查看当前上下文
kubectl config get-contexts --查看上下文列表
kubectl config use-context --设置默认上下文
kubectl api-resources --列出可用的api资源
kubectl api-versions --列出可用的API版本
kubectl get all --all-namespaces --获取所有名称空间


Daemonsets 相关
kubectl get-daemonset --列出一个或多个守护进程
kubectl edit daemonset --编辑和更新一个或多个守护进程的定义
kubectl delete daemonset --删除一个守护进程
kubectl create daemonset --创建一个新的守护进程
kubectl rollout daemonset --管理守护进程的rollout
kubectl describe ds -n <namesoace_name> --显示命名空间内守护进程的详细状态


deployments相关

kubectl get deployment --列出一个或多个部署
kubectl describe deployment <deployment_name> --显示一个或多个部署的详细状态
kubectl edit deployment <deployment_name> --编辑和更新服务器上一个或多个部署的定义
kubectl create deployment <deployment_name> --创建一个新的部署
kubectl delete deployment <deployment_name> --删除多个部署
kubectl rollout status deployment <deployment_name> --查看部署的推出状态
kubectl set image deployment/ =image: --执行滚动更新(K8S默认值),将容器映像设置为特定部署的新版本
kubectl rollout undo deployment/ --回滚以前的部署
kubectl replace --force -f -Perform a replace deployment --强制替换、删除然后重新创建资源

事件相关
kubectl get events --列出系统中所有资源的最近事件
kubectl get events -field-selector type=Warning --仅列出警告
kubectl get events --sort-by=.matadata.creationTimestamp --列出按时间戳排序的事件
kubectl get events --field-selector invovedObjeck.kind!=Pod --列出事件,但不包括Pod事件
kubectl get events --field-selector involvedObjeck.kind=Node,involvedObjeck.name=<node_name> --为具有特定名称的单个节点提取事件
kubectl get events --field-selector type!=Normal --从事件列表中过滤掉正常事件


日志相关
kubectl logs <pod_name> -- 打印一个pod的日志
kubectl logs --since=6h <pod_name> --打印一个pod过去六小时的日志
kubectl logs --tail 50 --打印最后50行日志
kubectl logs -f <service_name> [-c <$container>] --从服务获取日志,并可选地选择容器
kubectl logs -f --打印一个pod的日志并跟踪新的日志
kubectl logs -c --打印pod中容器的日志
kubectl logs pod.log --将一个pod的日志输出到一个名为“pod.log”的文件中
kubectl logs --previous -- 查看先前失败pod的日志


Namespace相关
kubectl create namespace <Namespace_name> --创建一个命名空间
kubectl get namespace --列出一个或多个命名空间
kubectl describe namespace -- 显示一个或多个名称空间的详细状态
kubectl delete namespace -- 删除一个命名空间
kubectl edit namespace -- 编辑更新命名空间
kubectl top namespace kubectl top node 、 kubectl top -n pod -- 显示namespace的资源(CPU/内存/存储)使用情况


node相关
kubectl taint node --更新一个或多个节点上的污点
kubectl get node -- 列出节点
kubectl delete node -- 删除单个或多个节点
kubectl top node -- 显示节点的资源使用情况(CPU/内存/存储)
kubectl get pods -o wide | grep --列出在节点上运行的pod
kubectl annotate node -- 注释节点
kubectl cordon node -- 将节点标记为不可调度的
kubectl uncordon node -- 将节点标记为可调度的
kubectl drain node --将节点沥干,为维护做好准备
kubectl label node --添加或更新一个或多个节点的标签

Pods操作相关
kubectl get pod -- 列出一个或多个pod
kubectl get pods --sort-by='.status.containerStatuses[0].restartCount' --按重启计数排序的pods列表
kubectl get pods --field-selector=status.phase=Running -- 获取命名空间中所有正在运行的pod
kubectl delete pod --删除pod
kubectl create pod -- 创建一个pod
kubectl exec -it /bin/sh --在单容器pod上获得交互式shell
kubectl exec -c --对pod中的容器执行命令。阅读更多:使用Kubectl Exec:连接到Kubernetes容器
kubectl top pod --显示pod的资源使用情况(CPU/内存/存储)。
kubectl annotate pod --添加或更新pod的注释
kubectl label pods new-label= --添加或更新pod的标签
kubectl get pods --show-labels --获取pod,并显示标签
kubecrl port-forward: --监听本地机器上的一个端口,并转发到指定pod上的一个端口

Replication Controller相关
kubectl get rc --列出复制控制器
kubectl get rc --namespace='' --按名称空间列出复制控制器


ReplicaSets相关
kubectl get replicasets --ReplicaSets列表
kubectl describe replicasets 例:kubectl describe replicasets -n dc --显示一个或多个复制集的详细状态
kubectl scale --replicas=[x] --缩放复制集


Sercrets相关
kubectl create secret -- 创建一个秘钥文件
kubectl get secrets --列出密钥文件
kubectl describe secrets --列出秘密的详细信息
kube delete secret -- 删除密钥


Services 相关
kubectl get services --列出一个或多个服务
kubectl describe services --显示服务的详细状态
kubectl expose deployment [deploymentName] --将复制控制器、服务、部署或pod暴露公开为新的Kubernetes服务
kubectl edit services --编辑和更新一个或多个服务的定义


Service Account相关
kubectl get serviceaccounts --列出业务帐户
kubectl describe serviceaccounts --显示一个或多个服务帐户的详细状态
kubectl replace serviceaccount --更换业务帐户
kubectl dalete serviceaccount <service_accountName> --删除一个业务账户


StatefulSets相关
kubectl get statefulset -- 列出statefulset
kubectl delete statefulset/[stateful_set_name] --cascade=false --只删除statfulset(不删除pod)

标签:kubectl,get,--,列出,命令,pod,k8s,节点
From: https://www.cnblogs.com/ht7714/p/18257298

相关文章

  • 虚拟化virsh基础命令
    virsh是一个用于管理和监控虚拟机的命令行工具,提供了丰富的命令来执行各种操作。以下是一些常用的virsh命令及其功能:查看版本与帮助:virsh-version:查看virsh的版本信息12。virsh--help:查看virsh命令的帮助信息12。查看虚拟机:virshlist:显示当前正在运行的虚拟机1234......
  • 【K8s】专题五(4):Kubernetes 配置之 ConfigMap 与 Secret 使用
    以下内容均来自个人笔记并重新梳理,如有错误欢迎指正!如果对您有帮助,烦请点赞、关注、转发!欢迎扫码关注个人公众号!目录一、ConfigMap使用方式1、注入环境变量2、挂载配置文件二、Secret使用方式1、注入环境变量2、设置镜像密钥3、设置TLS凭据一、ConfigMap使用方......
  • 开发Prometheus的redis bigkey exporter,完善k8s下redis容器的性能监控
      好久没来博客园写技术总结了,回顾这些年的职业路径,从自动化测试到python后端到golang后端直到现在的devops,确实积累了很多心得,可惜都没时间来写写这些心得(主要是懒)。自从转为devops后确实有比较多的时间了(主要是加班少:)),看来以后还是要多写写技术总结:)。   废话不......
  • 解决 执行 jar 命令 控制台乱码
    Springboot项目,编码为utf8打包后,为了在控制台运行时不乱码,需要在控制台中依次执行以下命令:第一步:chcp65001第二步:java-jar-Dfile.encoding=utf-8你的.jar......
  • mumu模拟器 adb shell 登录后执行命令 Inappropriate ioctl for device
    前言全局说明mumu模拟器adbshell登录后执行命令Inappropriateioctlfordevice一、说明二、问题执行任何命令,都提示:Inappropriateioctlfordevice三、解决方法方法一:执行过sudo或su重新登录方法二:退出,执行adbroot后再执行adbshell登录四、......
  • k8s学习--OpenKruise详细解释以及原地升级及全链路灰度发布方案
    文章目录OpenKruise简介OpenKruise来源OpenKruise是什么?核心组件有什么?有什么特性和优势?适用于什么场景?什么是OpenKruise的原地升级原地升级的关键特性使用原地升级的组件原地升级的工作原理应用环境一、OpenKruise部署1.安装helm客户端工具2.通过helm安装二、Open......
  • 29.4k star! linux命令大全,带示例,中文易懂!!!
    linux-commandLinux命令大全搜索工具,内容包含Linux命令手册、详解、学习、搜集。离线部署dockerrun--namelinux-command-itd-p9665:3000wcjiang/linux-command:latest离线访问http://localhost:9665/使用命令分类学习资源项目地址:https://github.com/......
  • 使用pkg -r 命令选项向jail虚拟子系统里安装软件@FreeBSD
    刷FreeBSD论坛的时候,看到这样一招:使用pkg-r选项,往jail等虚拟机子系统里安装软件。jails-Howtoinstallapkgofflineintoajail?|TheFreeBSDForumsroot@fbhost:~#pkgpkg:notenoughargumentsUsage:pkg[-v][-d][-l][-N][-j<jailnameorid>|-c<chro......
  • JupyterLab使用指南(四):JupyterLab的Magic 命令
    1.什么是Magic命令Magic命令是JupyterLab中的一类特殊命令,用于简化和增强代码的执行。它们以%或%%开头,可以进行各种操作,如时间测量、环境设置、文件操作等。Magic命令分为行Magic命令和单元Magic命令两种。行Magic命令:以%开头,作用于一行代码。单元Mag......
  • DHorse v1.5.1 发布,基于 k8s 的发布平台
    版本说明新增特性支持k8s的v1.30.x版本;优化特性优化回滚功能;修复注册来源的回滚问题;新增和修改应用时校验应用名;升级kubernetes-client至v6.13.0;调整部署明细表头展示;升级指南升级指南DHorse介绍DHorse是一个轻量级、简单易用的云应用管理平台,具有多云和多环境管......