kubectl知多少
kubectl 是 K8S 中的一个命令行工具,主要用于管理和操作 K8S 集群。kubectl 通过向 K8S API 发送 REST 请求,允许用户与 K8S 集群中的各种资源进行交互,例如 Pod、Service、Deployment 等。kubectl 提供了一种简单而灵活的方式来管理和操作 K8S 集群,它支持交互式和批处理操作,可以轻松地进行自动化处理。
kubectl 通过向 API Server 发送 REST API 请求来管理 K8S 集群中的资源,它接收来自 kubectl、kubelet、kube-proxy 和其他 K8S 组件的请求,并响应这些请求。
在 K8S 运维中,会经常使用kubectl,本篇梳理了kubectl常用的维护命令和选项,并按场景进行了分类。关于更多详情,可参考官方文档:https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands
获取信息
kubectl get:获取 Kubernetes 资源的信息,例如节点、服务、Pod、配置等。
kubectl describe:显示特定资源的详细信息。
kubectl logs:获取 Pod 的日志。
kubectl top:查看节点和 Pod 的 CPU 和内存使用情况。
调试和诊断
kubectl exec:在容器中执行命令。
kubectl port-forward:将本地端口转发到 Pod 端口。例如:
kubectl --namespace monitoring port-forward --address 0.0.0.0 svc/prometheus-k8s 9090
kubectl run:在集群中创建一个新的 Pod,并在其中运行一个容器。
kubectl attach:连接到正在运行的容器。
kubectl debug:启动一个调试容器并将其连接到指定的 Pod 上。
状态管理
kubectl create:创建 Kubernetes 资源。
kubectl apply:对已存在的 Kubernetes 资源进行更新操作。
kubectl delete:删除 Kubernetes 资源。
kubectl edit:在编辑器中编辑资源配置文件。
kubectl label:为资源添加或修改标签。
kubectl annotate:为资源添加或修改注释。
扩缩容
kubectl scale:扩展或缩小 Deployment、StatefulSet等的副本数。
kubectl autoscale:创建 Horizontal Pod Autoscaler 对象,根据 CPU 或自定义指标来自动扩缩容 Pod。
部署管理
kubectl rollout:对 Deployment、DaemonSet、StatefulSet 等进行滚动升级。
kubectl rollout history:查看部署历史记录。
kubectl rollout undo:回滚部署操作。
kubectl patch:通过部分更改来更新 Kubernetes 资源。
安全和身份验证
kubectl auth:管理身份验证和授权。
kubectl create secret:创建用于身份验证和授权的 Kubernetes 密钥。
kubectl certificate:管理 TLS 证书和私钥。
最后
以上就是 kubectl 常用的一些维护命令和选项,需要的朋友请收藏。关于更多详情,可直接参考官方文档:https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands
本文转载自:「不背锅运维」,原文:https://url.hi-linux.com/K2ofQ,版权归原作者所
《Docker中Image、Container与Volume的迁移》
免责声明:本文内容来源于网络,所载内容仅供参考。转载仅为学习和交流之目的,如无意中侵犯您的合法权益,请及时联系Docker中文社区!
温馨提示:文章内容系作者个人观点,不代表Docker中文社区对观点赞同或支持。
版权声明:本文为转载文章,来源于 互联网 ,版权归原作者所有,欢迎分享本文,转载请保留出处!
发表评论