Kubernetes管理应用程序、服务常用命令、集群监视

1、如何使用Kubernetes管理应用程序

1.1 查看集群信息:

kubectl cluster-info: 显示集群信息。
kubectl config view: 显示当前kubectl配置信息。

1.2 查看资源状态:

kubectl get pods: 查看所有Pod的状态。
kubectl get deployments: 查看所有部署的状态。
kubectl get services: 查看所有服务的状态。
kubectl get nodes: 查看所有节点的状态。
kubectl get namespaces: 查看所有命名空间的状态。
kubectl describe pod <pod-name>: 显示特定Pod的详细信息。

1.3 创建和管理资源:

kubectl create -f <filename>: 根据YAML文件创建资源。
kubectl apply -f <filename>: 根据YAML文件创建或更新资源。
kubectl delete -f <filename>: 根据YAML文件删除资源。
kubectl scale deployment <deployment-name> --replicas=<replica-count>: 扩展或缩减部署的副本数。
kubectl expose deployment <deployment-name> --port=<port> --type=<service-type>: 创建一个服务来公开部署。

 1.4执行操作:

kubectl exec -it <pod-name> -- <command>: 在Pod中执行特定命令。
kubectl logs <pod-name>: 查看Pod的日志。
kubectl port-forward <pod-name> <local-port>:<pod-port>: 将本地端口与Pod的端口进行转发。

1.5 升级和回滚:

kubectl set image deployment/<deployment-name> <container-name>=<new-image>: 更新部署的容器镜像。
kubectl rollout status deployment/<deployment-name>: 检查部署的滚动更新状态。
kubectl rollout undo deployment/<deployment-name>: 回滚部署到先前版本。

1.6 删除资源:

kubectl delete deployment <deployment-name>: 删除部署。
kubectl delete pod <pod-name>: 删除Pod。
kubectl delete service <service-name>: 删除服务。

2、Kubernetes服务常用命令:

2.1 查看服务状态:

kubectl get services: 查看所有服务的状态。
kubectl describe service <service-name>: 显示特定服务的详细信息。

2.2 创建和管理服务:

kubectl expose deployment <deployment-name> --port=<port> --target-port=<target-port> --type=<service-type>: 创建一个服务来公开部署,并指定端口和类型。
kubectl create service <service-type> <service-name> --tcp=<port>:<target-port>: 创建一个服务并将其绑定到指定的端口和目标端口。
kubectl edit service <service-name>: 编辑服务的配置。

2.3 负载均衡和端口转发:

kubectl port-forward <pod-name> <local-port>:<pod-port>: 将本地端口与Pod的端口进行转发。
kubectl expose deployment <deployment-name> --port=<port> --target-port=<target-port> --type=LoadBalancer: 创建一个负载均衡服务,并将外部流量分发到部署的Pod。

2.4 查看负载均衡器IP:

kubectl get services: 查找负载均衡服务的External IP(在云环境中)或者LoadBalancer Ingress(在本地环境中)。

2.5 删除服务:

kubectl delete service <service-name>: 删除服务。

3、监视Kubernetes集群:

3.1 查看资源状态:

kubectl get pods: 查看所有Pod的状态。
kubectl get deployments: 查看所有部署的状态。
kubectl get services: 查看所有服务的状态。
kubectl get nodes: 查看所有节点的状态。
kubectl get namespaces: 查看所有命名空间的状态。

3.2 监视资源:

kubectl describe pod <pod-name>: 显示特定Pod的详细信息。
kubectl describe deployment <deployment-name>: 显示特定部署的详细信息。
kubectl describe service <service-name>: 显示特定服务的详细信息。
kubectl describe node <node-name>: 显示特定节点的详细信息。

3.3 实时日志:

kubectl logs <pod-name>: 查看Pod的日志。
kubectl logs -f <pod-name>: 实时查看Pod的日志。
kubectl logs -f -l <label-selector>: 根据标签选择器实时查看多个Pod的日志。

3.4 集群事件:

kubectl get events: 查看集群中的事件。
kubectl describe event <event-name>: 显示特定事件的详细信息。

3.5 资源使用情况

kubectl top pods: 查看Pod的资源使用情况。
kubectl top nodes: 查看节点的资源使用情况。

3.6 监视滚动更新:

kubectl rollout status deployment/<deployment-name>: 检查部署的滚动更新状态。
kubectl rollout history deployment/<deployment-name>: 查看部署的更新历史记录。

3.7 扩展和缩减副本数:

kubectl scale deployment <deployment-name> --replicas=<replica-count>: 扩展或缩减部署的副本数。

 


posted on 2023-12-18 17:13  uestc2007  阅读(15)  评论(0编辑  收藏  举报

导航