Kubectl命令行工具是与Kubernetes交互的主要工具,你可以使用Kubectl在Kubernetes集群中创建、更新和管理资源,例如Pod,Service和Deployment等。接下来我们将了解Kubernetes运维必须掌握的12个Kubectl命令。
1.kubectl cluster-info
使用以下命令提供有关Kubernetes集群当前状态信息,包括API服务器地址、集群状态等信:
2.kubectl version
使用以下命令显示系统上当前安装的 kubectl 版本,以及它连接到的 Kubernetes 集群的版本:
3.kubectl get
此命令将提供 Kubernetes 集群中可用资源的列表,常用资源列表如下:
- Namespace
- Deployment
- Pod
- Node
- Service
- ReplicaSets
使用以下命令查看当前default命名空间的所有可用资源:
使用以下命令查看当前default命名空间的deployment资源:
指定特定的命名空间:(-n 参数是指定特定命名空间 -namespace 的缩写形式):
查看指定资源的更多详细信息:(-o参数是查看更多详细信息):
4.kubectl create
Kubernetes 命令 kubectl create 用于向集群添加新资源。用户可以使用此命令创建 Pod、Service和Deployment等资源。
使用以下命令,将使用 nginx 映像创建一个名为my-nginx 的新deployment:
使用以下命令创建新的 cronjob 的另一个示例:
命令参数:
- --schedule 指定cron语法中任务计划
- --image 指定运行容器镜像
- --command 执行容器运行的命令
5.kubectl edit
kubectl edit 命令,可以编辑集群中的现有资源对象。您可以使用 kubectl edit 直接修改资源的配置,这样您就无需手动生成新的 YAML 文件。以下命令修改名为my-nginx的deployment的资源配置:
6.kubectl delete
Kubectl delete 命令将帮助您删除 Kubernetes 集群中的任何资源,例如 pod、deployment、service、cornjob等资源。使用以下命令删除名为my-nginx的deplyment资源:
7.kubectl apply
kubectl apply命令使您能够通过YAML编排文件,在集群中创建或修改资源:
8.kubectl config
在 Kubernetes 中,命令 kubectl config 允许您管理 kubectl 客户端的配置。config 命令可用于查看、编辑或在多个集群配置之间切换,以及管理用户凭据和上下文设置:
kubectl config set-context 是 Kubernetes 中的一个命令,允许您修改 kubectl 配置的上下文。上下文定义了 kubectl 命令操作的集群、用户和命名空间。在此示例中,此命令将当前命名空间设置为“NAMESPACE”。
9.kubectl describe
kubectl describe 提供了一种快速方法来获取有关资源的全面信息,从而更轻松地了解资源的当前状态并发现任何问题。它显示有关资源状态、事件和元数据的详细信 使用以下命令可以查看Pod名称为metrics-server-85bd976946-rlk6c的详细信息:
10.kubectl logs
kubectl logs 获取 pod 中容器的日志,可用于跟踪容器的问题或解决容器的问题。执行以下命令可以查看Pod名称为metrics-server-85bd976946-rlk6c的日志:
11.kubectl exec
kubectl exec 在 pod 的正在运行的容器中执行命令。它对于调试、故障排除和监视应用程序的状态很有帮助 执行以下命令可以进入Pod命令为metrics-server-85bd976946-rlk6c容器中:
12.kubectl cp
kubectl cp 允许您在本地文件系统和 pod 中的容器之间或同一 pod 中的两个容器之间复制文件和目录。这对于在主机和容器之间传输文件,或者在 pod 内的容器之间复制文件非常有用:
参数:
- kubectl cp 用于将本地文件复制到 pod 中的容器中。
- local-file-path 指定本地文件系统上文件的路径。
- pod-name 和 container-destination-path 指定容器内文件的目的地。