首页 > 编程语言 >Kubernetes管理应用程序、服务常用命令、集群监视

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

时间:2023-12-18 17:23:38浏览次数:35  
标签:kubectl Kubernetes 查看 get -- 管理应用程序 deployment 常用命令 Pod

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>: 扩展或缩减部署的副本数。

 


标签:kubectl,Kubernetes,查看,get,--,管理应用程序,deployment,常用命令,Pod
From: https://www.cnblogs.com/uestc2007/p/17911705.html

相关文章

  • 通过备份 Etcd 来完美恢复 Kubernetes 中的误删数据
    误删除或者服务器宕机,会导致Etcd数据的丢失或某个节点的Etcd数据异常时,当误删时,需要恢复数据,这个在实际环境当中是不可避免的。以下描述删除两个namespace下的Pod,如何恢复对应namespace的数据。1、操作环境3个(master、etcd)+1个node新建1个namespace下且创建Pod和......
  • 修改kubernetes-dashboard默认token认证时间
    详解:k8s默认dashboardtoken时间是900s,15分钟,到期后会自动退出登陆。解决办法:修改默认时间找到部署dashboard的yaml文件增加其中这一行[root@master1~]#catrecommended.yaml#Copyright2017TheKubernetesAuthors.##LicensedundertheApacheLicense,Version2.0(th......
  • kubernetes1.18.2安装kube-prometheus
    注:使用kube-prometheus安装非常方便,前面的prometheus+grafana+metrics-server都不用安装,已经集成在里面。1、clonegithub地址gitclonehttps://github.com/coreos/kube-prometheus.gitcdkube-prometheus2、查看manifest路径下所有的yaml文件[root@master1manifests]#lltotal......
  • Kubernetes 网络之 DNS 介绍
    一、服务发现Pod提供的服务可以通过Service生成的ClusterIP(VIP)来访问。怎么知道某个应用的VIP呢?k8s主要有两种Service发现机制:环境变量和DNS。没有DNS服务的时候,k8s会采用环境变量的形式,但一旦有多个service,环境变量会变复杂,为解决该问题,我们使用DNS服务。环境变量在之......
  • K8s - 容器编排引擎Kubernetes
     什么是Kubernetes?背景Kubernetes是开源的容器集群管理项目,诞生于2014年,由Google公司发起前身Borg系统在Google内部应用了十几年,积累了大量来自生产环境的实践经验试图为基于容器的应用部署和管理打造一套强大并且易用的管理平台该项目基于Go语言实现介绍一个基于容......
  • 性能测试复习准备——linux环境下——常用命令简记
       firewalldfirewall-cmd常用命令网址:https://www.cnblogs.com/klvchen/p/10063875.html#开启防火墙systemctlstartfirewalld.service#防火墙开机启动systemctlenablefirewalld.service#关闭防火墙systemctlstopfirewalld.service#查看防火墙状态......
  • Kubernetes 调度场景实战指南
    Kubernetes调度是确保集群中的Pod在合适的节点上运行的关键组件。通过灵活配置调度策略,可以提高资源利用率、负载均衡和高可用性。在本文中,我们将深入研究一些实际的Kubernetes调度场景,并提供相应的配置示例和最佳实践。1.基础场景-NodeSelector场景描述:我们有一些节点标......
  • #yyds干货盘点#一文了解Redis常用命令
    本文包括Redis中常用的一些命令,包括针对所有的键相关的命令,以及5种常用数据类型:字符串、哈希、列表、集合以及有序集合的一些命令。鉴于个人水平有限,文章中若有不对之处,烦请大家留言指正。键相关查看所有的键keys会遍历所有的键,它的时间复杂度是O(n),因此当Redis保存了大量的键时,这......
  • Git——常用命令
    1.第一次初始化gitinit  初始化仓库gitadd.gitcommit-m‘firstcommit’[email protected]:帐号名/仓库名.gitgitpulloriginmastergitpushoriginmaster#-f强推[email protected]:git帐号名/仓库名.git 2.基本操作gitche......
  • Kubernetes: client-go 源码剖析(二)
    上接Kubernetes:client-go源码剖析(一)2.3运行informer运行informer将Reflector,informer和indexer组件关联以实现informer流程图的流程。2.3.1ReflectorList&Watch运行informer:informer.Run(stopCh)//client-go/tools/cache/shared_informer.gofunc(s*s......