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 系统一样,查看和调试应用的运行环境和状态。

相关推荐
爱隐身的官人1 小时前
Linux配置Java/JDK(解决Kali启动ysoserial.jar JRMPListener报错)暨 Kali安装JAVA8和切换JDK版本的详细过程
java·linux·kali
Algebraaaaa2 小时前
Linux 基本命令超详细解释第三期 grep | wc | 管道符‘|’ | echo | tail | 重定向符
linux
小生不才yz4 小时前
(三)命令管理-命令历史-history命令的使用
linux
空灵之海6 小时前
Docker部署Nexus Repository Community Edition
运维·docker·容器
aramae6 小时前
Linux开发工具入门:零基础到熟练使用(二)
linux·运维·服务器·网络·笔记
nassi_6 小时前
I/O详解
linux·php
泡沫冰@7 小时前
shell编程:sed - 流编辑器(6)
linux
爱吃喵的鲤鱼7 小时前
仿muduo库One Thread One Loop主从Reactor模型实践——介绍
linux·c++
庄风子7 小时前
In VI, when an arrow key is pressed, a character (e.g. “A“) is sent.
linux·vi
Suger9998 小时前
centos网络打流测试
linux·网络·centos