k8S 命令

kubectl describe pod java-spice-cloud-member-1-69975bd859-jhqvj -n dev

kubectl get pods -n dev

kubectl top pod java-spice-cloud-member-1-69975bd859-jhqvj -n dev

进

kubectl exec -it java-spice-cloud-member-1-69975bd859-jhqvj -n dev -- /bin/sh

在 Kubernetes (k8s) 中进入 Pod 之后,你可以查看很多内容,具体取决于你的需求和 Pod 的用途。以下是一些常见的可以查看的内容:

1. **容器内部的文件系统**

  • **查看文件和目录结构**:进入 Pod 后,你可以像在普通 Linux 系统中一样,使用 `ls`、`cd`、`cat` 等命令查看文件和目录。

  • **配置文件**:许多应用的配置文件会存储在 Pod 的文件系统中,例如 `/etc/` 目录下的配置文件。

  • **日志文件**:应用的日志文件通常存储在 `/var/log/` 或应用指定的日志目录中。

2. **环境变量**

  • 使用 `env` 命令可以查看 Pod 中的环境变量。这些环境变量可能是 Kubernetes 注入的,也可能是应用自身设置的。

  • 例如,Kubernetes 会注入一些与服务发现相关的环境变量,如 `SERVICE_NAME_SERVICE_HOST` 和 `SERVICE_NAME_SERVICE_PORT`。

3. **运行中的进程**

  • 使用 `ps` 或 `top` 命令可以查看 Pod 内运行的进程。这有助于确认应用是否正常运行,以及是否有其他意外的进程在运行。

4. **网络配置**

  • **IP 地址**:使用 `ip addr` 或 `ifconfig` 命令查看 Pod 的网络接口和 IP 地址。

  • **端口监听情况**:使用 `netstat -tuln` 或 `ss -tuln` 查看 Pod 监听的端口,确认应用是否正确绑定了端口。

  • **网络连通性**:使用 `ping` 或 `curl` 命令测试 Pod 是否能够访问其他服务或外部网络。

5. **应用日志**

  • 如果应用将日志输出到标准输出或标准错误,你可以通过 `kubectl logs` 命令在 Pod 外部查看日志。但在 Pod 内部,你也可以查看日志文件(如果应用将日志写入文件)。

  • 例如,对于一个 Web 应用,你可能会查看 `/var/log/nginx/access.log` 或 `/var/log/apache2/error.log`。

6. **应用状态和健康检查**

  • 如果应用有内置的健康检查接口(如 HTTP 端点),你可以使用 `curl` 命令在 Pod 内部访问这些接口,检查应用的健康状态。

  • 例如,`curl http://localhost:8080/healthz\`。

7. **存储卷内容**

  • 如果 Pod 挂载了存储卷(如 PersistentVolumeClaim 或 ConfigMap),你可以查看挂载点的内容。例如,挂载点可能在 `/data` 或 `/etc/config` 等目录。

8. **资源使用情况**

  • 使用 `df -h` 查看磁盘使用情况。

  • 使用 `free -m` 查看内存使用情况。

  • 使用 `top` 或 `htop` 查看 CPU 和内存的实时使用情况。

9. **服务发现信息**

  • Kubernetes 会为每个服务创建 DNS 条目。在 Pod 内部,你可以使用 `nslookup` 或 `dig` 命令查询服务的 DNS 解析情况。

  • 例如,`nslookup my-service` 可以查看服务的 IP 地址。

10. **应用配置和参数**

  • 查看应用启动时的参数,例如通过 `ps` 命令查看进程的启动命令行参数。

  • 查看应用的配置文件,确认配置是否正确。

示例:进入 Pod 并查看内容

```bash

进入 Pod

kubectl exec -it <pod-name> -- /bin/sh

查看文件系统

ls /

cat /etc/hosts

查看环境变量

env

查看运行中的进程

ps aux

查看网络配置

ip addr

netstat -tuln

查看日志文件

cat /var/log/app.log

查看存储卷内容

ls /data

```

总之,进入 Pod 后,你可以像操作普通 Linux 系统一样,查看和调试应用的运行环境和状态。

相关推荐
m0_7436975930 分钟前
DNS的反向域名的相关问题
linux
艾伦_耶格宇1 小时前
【kubernetes - 1.28版本】-10 K8S命名空间
云原生·容器·kubernetes
Android系统攻城狮1 小时前
Linux FFmpeg深度解析之avcodec_parameters_from_context调用流程与实战(十六)
linux·运维·ffmpeg·音视频进阶·ffmpeg音视频·车载音视频进阶
思想觉悟1 小时前
SEAndroid实战
android·linux·c++
前进吧-程序员2 小时前
C++20 协程实战:手写 Task、单线程调度器与 awaiter 的三个钩子
linux
Android系统攻城狮2 小时前
Linux FFmpeg深度解析之avcodec_alloc_context3调用流程与实战(十四)
linux·运维·ffmpeg·车载音视频·音视频进阶·ffmpeg音视频进阶
自由彩虹2 小时前
靶场通关15--bossplayersctf
linux·服务器·网络·安全·web安全·网络安全
叼烟扛炮2 小时前
Linux 学习笔记(四十五):Web 安全基石——Cookie、Session 与 HTTPS 原理解析
linux·前端·网络·笔记·学习·tcp/ip·安全
Linux_cy3 小时前
nginx 502 排查手册:九种原因分类、定位命令与检查顺序
linux·运维·服务器·网络·数据库·nginx·ssh
tedcloud1233 小时前
Docker Compose 部署 Uptime Kuma:配置 HTTPS、QQ 邮箱告警与数据备份
服务器·网络协议·ui·docker·容器·https·开源