nsenter 命令之抓包

System 

前言 在k8s 中对 Pod 进行抓包一文中,通过找 veth 网卡方式进行抓包。还有另一个更强大命令同样可以达到抓包的目的。 简介 nsenter是一个可以进入到其他进程的命名空间(Namespace)的程序。 比如进入到一个不含网络调试工具的容器的 Network 命名空间中,使用宿主机的进行各

etcd单节点、多节点的备份与还原


通过 kubeadm 安装的 etcd 单节点环境,和 kubernetes 二进制文件部署的多 etcd节点环境,分别进行 etcd 的备份与还原操作。快照备份后,恢复到/var/lib/etcd--restore 目录里,不将默认的/var/lib/etcd 的目录进行覆盖。以下展示操作过程:

Kubernetes客户端认证(三)-- 使用 CertificateSigningRequest 方式签发客户端证书


概述 通过 CA 双向认证方式因为需要基于根 CA 证书、根 CA 私钥进行证书签发,一般需要在集群的 master 节点上进行配置,用户不一定有权限进入到 master 节点中。但是一般情况都能拿到对应的一个 kubeconfig 文件用来访问 kubernetes集群,基于 kubeconfig

Kubernetes 客户端认证(二)-- CA 证书的双向认证方式


HTTPS双向认证流程 Kubernetes集群的访问权限控制由 API Server 负责,除了 Token 认证外,还支持 CA 证书 Kubernetes CA 认证也叫HTTPS证书认证,执行 ApiServer CA 认证过滤器链逻辑的前提是客户端和服务端完成 HTTPS 双向认证,下面着

Kubernetes 客户端认证(一)-- ServiceAccount 的 JWTToken 认证


什么是服务账号? 服务账号是在 Kubernetes 中一种用于非人类用户的账号,在 Kubernetes 集群中提供不同的身份标识。 应用 Pod、系统组件以及集群内外的实体可以使用特定 ServiceAccount 的凭据来将自己标识为该 ServiceAccount。 这种身份可用于许多场景,

k8s 中对 Pod 进行抓包


以 nginx 为例,找到待抓包的 pod 及分布在哪个节点上: # kubectl get pods -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE

debug 调试运行中的 Pod


在 pod 运行的时候,除了可以通过kubectl describe pod查看 pod 的事件信息,或者通过kubectl exec外,还可以通过临时容器来进行调试。 使用临时容器来调试 可以使用 kubectl debug 命令来给正在运行中的 Pod 增加一个临时容器。 首先,像示例一样创建一

kubeadm单机版部署


基本环境配置 配置信息 备注 系统版本 rocky linux 8.7 Pod网段 10.0.0.0/8 Service网段 172.16.0.0/12 Runtime配置 先卸载已经安装的docker dnf remove docker \ docker-cli

使用 root 安装 minikube


安装 minikube 可以去官网 https://minikube.sigs.k8s.io/docs/start/ 下载对应的版本。 比如通过可以选择二进制的安装方式: curl -LO https://storage.googleapis.com/minikube/releases/latest

Kubernetes组件介绍


Kubernetes组件介绍 控制节点组件 APIServer:APIServer是整个集群的控制中枢(无状态,数据保存在etcd中,看LB调度到哪个节点中的APIServer),提供集群中各个模块之间的数据交换(比如Scheduler和Controller Manager需要进行数据交换,都需要通