Kubernetes 排错、调试常用方法总结
<p>在 k8s 云环境中,我们需要在容器内抓包进行 Debug, 但通常大多容器都没有安装 tcpdump 以及其他网络工具;在托管 k8s 中我们想登录 node,不是没权限就是步骤太麻烦。本文的主角<code>nsenter</code>正是很擅长解决这些问题,<code>nsenter</code>可以进入指定...
51工具盒子
<p>在 k8s 云环境中,我们需要在容器内抓包进行 Debug, 但通常大多容器都没有安装 tcpdump 以及其他网络工具;在托管 k8s 中我们想登录 node,不是没权限就是步骤太麻烦。本文的主角<code>nsenter</code>正是很擅长解决这些问题,<code>nsenter</code>可以进入指定...
<h2>前言</h2> <p>本文的目的是在 K8s 集群内搭建 Tailscale 的 DERP 服务器。</p> <h2>背景知识</h2> <h3>Tailscale</h3> <p>Tailscale 允许您轻松管理对私有资源的访问(本质上是个 VPN 工具),快...
<h2>写在前面</h2> <p>ETCD 是 Kubernetes 控制面的重要组件和依赖,Kubernetes 的各类信息都存储在 ETCD 中,所以监控 ETCD 就显得尤为重要。ETCD 在 Kubernetes 中的架构角色如下(只与 APIServer 交互): <img src="http://static.51...
<h2>写在前面</h2> <p>controller-manager 是 Kubernetes 控制面的组件,通常不太可能出问题,一般监控一下通用的进程指标就问题不大了,不过 controller-manager 确实也暴露了很多 <code>/metrics</code> 白盒指标,我们也一并梳理一下相关内容。&l...
<h2>背景</h2> <p>Kubernetes 问世于 2015 年,从一开始秉持着松耦合和可扩展的设计理念,也因此带来了 Kubernetes 生态的蓬勃发展。但这些大部分先限制在单一集群内,然后由于种种原因和目的企业内部创建的集群越来越多,比如单集群故障、监管要求、异地多机房可用区容灾、出于敏捷、降本考虑的混合云、多云部署、单一集群的...
<h2>写在前面</h2> <p>如果是用的公有云托管的 Kubernetes 集群,控制面的组件都交由云厂商托管的,那作为客户的我们就省事了,基本不用操心 APIServer 的运维。个人也推荐使用云厂商这个服务,毕竟 Kubernetes 还是有点复杂的,升级也不好搞,我们自己来维护整个集群,性价比有点低。当然,如果因为各种原因最后我们还...
<p>kubernetes支持VPA(垂直)和HPA(水平)两种扩缩容的方式,通俗的来讲,VPA就是堆配置,调整现有的POD资源,而HPA就是增加POD,VPA缩放是需要停止Pod。</p> <h2>VPA介绍</h2> <p>VPA 全称 Vertical Pod Autoscaler 垂直Pod自动扩容,VPA会基...
<p>HashiCorp Vault 是一个基于身份的 Secret 和加密管理系统。Secret 是您想要严格控制访问的内容,例如 API 加密密钥、密码或证书。Vault 提供由身份验证和授权方法控制的加密服务。使用 Vault 的 UI、CLI 或 HTTP API,可以安全地存储和管理对机密和其他敏感数据的访问、严格控制和可审计。目前的系统需要访问大量 Se...
<p>容器在主机的内核上运行,并获得时钟,但时区不是来自内核,而是来自用户空间。在大多数情况下,默认使用协调世界时 (UTC)。 <img src="http://static.51tbox.com/static/2024-11-22/col/36f44e4eb481687f5f17e814594a6cd5/a85ec50ea22648a49213d...
<p>本文主要介绍我个人在使用 Kubernetes 的过程中,总结出的一套「Kubernetes 配置」,是我个人的「最佳实践」。其中大部分内容都经历过线上环境的考验,但是也有少部分还只在我脑子里模拟过,请谨慎参考。</p> <p>阅读前的几个注意事项:</p> <ul> <li>这份文档比较长,囊括了很...