值得收藏:K8S的kubectl常用命令已经按场景分好类,请您查阅。

简介: 值得收藏:K8S的kubectl常用命令已经按场景分好类,请您查阅。

kubectl知多少

kubectl 是 K8S 中的一个命令行工具,主要用于管理和操作 K8S 集群。kubectl 通过向 K8S API 发送 REST 请求,允许用户与 K8S 集群中的各种资源进行交互,例如 Pod、Service、Deployment 等。kubectl 提供了一种简单而灵活的方式来管理和操作 K8S 集群,它支持交互式和批处理操作,可以轻松地进行自动化处理。

下面是一个简单的逻辑结构图,说明 kubectl 命令如何与 K8S API Server 交互,以管理 K8S 集群中的资源。

kubectl 通过向 API Server 发送 REST API 请求来管理 K8S 集群中的资源,它接收来自 kubectl、kubelet、kube-proxy 和其他 K8S 组件的请求,并响应这些请求。

在 K8S 运维中,会经常使用kubectl,本篇梳理了kubectl常用的维护命令和选项,并按场景进行了分类。关于更多详情,可参考官方文档:https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands

获取信息

  1. kubectl get:获取 Kubernetes 资源的信息,例如节点、服务、Pod、配置等。
  2. kubectl describe:显示特定资源的详细信息。
  3. kubectl logs:获取 Pod 的日志。
  4. kubectl top:查看节点和 Pod 的 CPU 和内存使用情况。

调试和诊断

  1. kubectl exec:在容器中执行命令。
  2. kubectl port-forward:将本地端口转发到 Pod 端口。例如:
kubectl --namespace monitoring port-forward --address 0.0.0.0 svc/prometheus-k8s 9090
  1. kubectl run:在集群中创建一个新的 Pod,并在其中运行一个容器。
  2. kubectl attach:连接到正在运行的容器。
  3. kubectl debug:启动一个调试容器并将其连接到指定的 Pod 上。

状态管理

  1. kubectl create:创建 Kubernetes 资源。
  2. kubectl apply:对已存在的 Kubernetes 资源进行更新操作。
  3. kubectl delete:删除 Kubernetes 资源。
  4. kubectl edit:在编辑器中编辑资源配置文件。
  5. kubectl label:为资源添加或修改标签。
  6. kubectl annotate:为资源添加或修改注释。

扩缩容

  1. kubectl scale:扩展或缩小 Deployment、StatefulSet等的副本数。
  2. kubectl autoscale:创建 Horizontal Pod Autoscaler 对象,根据 CPU 或自定义指标来自动扩缩容 Pod。

部署管理

  1. kubectl rollout:对 Deployment、DaemonSet、StatefulSet 等进行滚动升级。
  2. kubectl rollout history:查看部署历史记录。
  3. kubectl rollout undo:回滚部署操作。
  4. kubectl patch:通过部分更改来更新 Kubernetes 资源。

安全和身份验证

  1. kubectl auth:管理身份验证和授权。
  2. kubectl create secret:创建用于身份验证和授权的 Kubernetes 密钥。
  3. kubectl certificate:管理 TLS 证书和私钥。

最后

以上就是 kubectl 常用的一些维护命令和选项,需要的朋友请收藏。

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
存储 Kubernetes 持续交付
介绍一下Kubernetes的应用场景
【10月更文挑战第18天】介绍一下Kubernetes的应用场景。
1344 3
|
存储 Kubernetes 容器
Kubernetes 存储选项:持久化卷与存储类
【8月更文第29天】随着容器化的普及,越来越多的应用程序需要持久化数据以保持状态信息。Kubernetes 提供了一套完整的解决方案来管理和配置持久化存储,包括持久卷 (Persistent Volume, PV)、持久卷声明 (Persistent Volume Claim, PVC) 和存储类 (StorageClass)。本文将详细介绍这些概念,并通过实际示例来演示如何在 Kubernetes 中配置存储。
1260 3
|
Kubernetes API 网络安全
当node节点kubectl 命令无法连接到 Kubernetes API 服务器
当Node节点上的 `kubectl`无法连接到Kubernetes API服务器时,可以通过以上步骤逐步排查和解决问题。首先确保网络连接正常,验证 `kubeconfig`文件配置正确,检查API服务器和Node节点的状态,最后排除防火墙或网络策略的干扰,并通过重启服务恢复正常连接。通过这些措施,可以有效解决与Kubernetes API服务器通信的常见问题,从而保障集群的正常运行。
1436 17
|
存储 Kubernetes 安全
k8s存储类型:emptyDir、hostPath、nfs、pvc及存储类storageclass的静态/动态创建pv
Kubernetes提供了多种存储类型,满足不同的应用需求。`emptyDir`和 `hostPath`适用于临时和宿主机存储需求,`nfs`适用于共享存储,`PersistentVolumeClaim`和 `StorageClass`实现了持久存储的灵活管理。通过理解和配置这些存储类型,可以有效提升Kubernetes集群的存储管理能力。
887 13
|
人工智能 运维 监控
容器服务Kubernetes场景下可观测体系生产级最佳实践
阿里云容器服务团队在2024年继续蝉联Gartner亚洲唯一全球领导者象限,其可观测体系是运维的核心能力之一。该体系涵盖重保运维、大规模集群稳定性、业务异常诊断等场景,特别是在AI和GPU场景下提供了全面的观测解决方案。通过Tracing、Metric和Log等技术,阿里云增强了对容器网络、存储及多集群架构的监控能力,帮助客户实现高效运维和成本优化。未来,结合AI助手,将进一步提升问题定位和解决效率,缩短MTTR,助力构建智能运维体系。
|
缓存 Kubernetes 应用服务中间件
k8s学习--helm的详细解释及安装和常用命令
k8s学习--helm的详细解释及安装和常用命令
809 0
k8s学习--helm的详细解释及安装和常用命令
|
Kubernetes 监控 API
在K8S中,什么是 Minikube、Kubectl、Kubelet?
在K8S中,什么是 Minikube、Kubectl、Kubelet?
|
存储 Kubernetes API
在K8S中,etcd 适应的场景?
在K8S中,etcd 适应的场景?
|
Kubernetes Shell Docker
在K8S中,如果容器没有bash命令,如何进⼊容器排查问题?
在K8S中,如果容器没有bash命令,如何进⼊容器排查问题?
|
Kubernetes 应用服务中间件 nginx
【赵渝强老师】Kubernetes命令行管理工具:kubectl
kubectl 是 Kubernetes 的命令行工具,用于管理和操作 Kubernetes 集群。本文通过视频讲解和具体示例,介绍了 kubectl 的常用命令,包括显示 Pod 信息、创建 Deployment 和 Service、更新和回滚 Deployment、以及删除资源等操作。
444 0

推荐镜像

更多