【后端】k8s

1. 命令

1.1 获取service服务

  • 获取集群内所有命名空间 的service服务
    sudo kubectl get service --all-namespaces

  • 获取集群内指定 命名空间的service服务
    sudo kubectl get service -n命名空间

  • 当权限限制到一个命名空间 时,只能使用下面这个
    sudo kubectl -n 命名空间 get service

  • 获取集群内当前 命名空间的service服务
    sudo kubectl get service

1.2 获取pod节点

  • 获取集群所有命名空间 的pod
    sudo kubectl get pod --all-namespaces

  • 获取集群内指定 命名空间的pod
    sudo kubectl get pod -n命名空间

  • 当权限限制到一个命名空间 时,只能使用下面这个
    sudo kubectl -n 命名空间 get pod

  • 获取集群内当前 命名空间的pod
    sudo kubectl get pod

1.3 网络

在Kubernetes中,通过Ingress 资源和直接通过 http://servicename.namespace.svc.cluster.local 访问服务(Service)的方式虽然都涉及到服务名(serviceName),但它们的使用场景和目的有所不同,因此不完全等同。
Ingress 资源
Ingress 是 Kubernetes 中的一个 API 对象,它允许你将外部 HTTP(S) 流量路由到你的集群中。Ingress 控制器负责实现这个路由,具体实现方式可能依赖于你的集群配置(例如 Nginx, Traefik, Istio 等)。在 Ingress 资源中,serviceName 字段用于指定将流量路由到的后端服务 的名称。这个 serviceName 指的是 Kubernetes 内部的服务(Service)名称,而不是外部域名或URL。
直接通过 Cluster DNS 访问服务

在 Kubernetes 集群中,每个服务(Service)都会被分配一个集群内部的 DNS 名称,格式为 servicename.namespace.svc.cluster.local。集群中的 Pod 可以通过这个 DNS 名称直接访问服务。这种方式不依赖于 Ingress,它主要用于集群内部的服务发现和通信。

1.4 复制文件

shell 复制代码
##当权限限制命名空间
sudo kubectl -n 命名空间 cp pod-name:/usr/local/logs/error.log  ./error.log

1.5 查看容器日志

shell 复制代码
##当权限限制命名空间
sudo kubectl -n 命名空间 logs -f pod-name #滚动输出 (有点问题)
sudo kubectl -n 命名空间 logs --tail 10 pod-name #查看最后10行
相关推荐
鹤落晴春8 小时前
【K8s】Pod调度、configMaps
云原生·容器·kubernetes
张忠琳8 小时前
【runc 1.4.2】(Part 2)runc 1.4.2 超深度分析 — CLI层:main.go、命令文件、runner、信号处理、TTY
云原生·kubernetes·runc
极客先躯10 小时前
高级java每日一道面试题-2026年02月02日-实战篇[Docker]-如何实现容器的持久化存储?
docker·容器·面试宝典·持久化·存储·韵味·java高级面试题
阿里云云原生11 小时前
AI 提效是“假象”还是“红利”?用 LoongSuite + SLS 构建组织级 AI 编码度量看板
云原生
极客先躯11 小时前
高级java每日一道面试题-2026年02月01日-实战篇[Docker]-Docker Volume 的生命周期管理是怎样的?
java·运维·docker·容器·持久化·架构图·容器卷
Java识堂12 小时前
如何对微服务进行拆分?
微服务·云原生·架构
某林21213 小时前
Isaac Sim 5.1.0 无头服务器部署与 RTX 显存段错误排障全记录
运维·服务器·docker·容器·isaac
m0_7381207213 小时前
Docker 环境下 Vulfocus 靶场搭建全流程(附镜像源问题解决方案)
运维·服务器·网络·安全·docker·容器
Plastic garden14 小时前
K8s知识(3) Pod亲和性,调度
云原生·容器·kubernetes