00:00 / 01:22
连播
清屏
智能
倍速
点赞24
00:00 / 01:47
连播
清屏
智能
倍速
点赞21
00:00 / 02:35
连播
清屏
智能
倍速
点赞317
启用k8s监控指标 90%的人都会遇到的K8S问题 现在我们想执行 kubectl top 命令 以查看节点和pod资源使用情况 可以看到 K8S提示我们没有安装 metrics server K8S默认是不安装metrics server的 这样K8S就无法获取集群监控指标 而kubectl top 命令就是通过读取集群监控指标实现的 自然也就不无正常工作了 别外 像HPA、VPA这样依赖集群监控指标的功能也无法工作 接下来我们来安装metrics server 从 K8S metrics server github 发布页面下载最新helm chart 然后使用 helm install 命令进行安装 安装完后你很有可能会发现镜像拉取失败 因为默认镜像在k8s.io.registry这个仓库 在国内即使使用了镜像加速也无法拉取 解决的办法是使用 docker hub上的镜像代替 现在我们编辑 metrics server Deployment image 然后保存 可以看到镜像拉取成功 但一直不能 Ready 我们查看下日志 通过错误日志可以看到 是因为kubelet的服务端证书SAN 没有包含节点IP地址而验证失败 这时我们可以再次编辑metrics server Deployment 往启动参数中新增一个配置项 --kubelet-insecure-tls 这样证书验证成功 metrics server pod进入 ready状态 这时 我们再次执行 kubectl top node 命令 可以看到命令工常工作 增加 --kubelet-insecure-tls 配置项不适用于生产环境 另一种办法是修改kubelet配置文件 具体修改方式我已写在metrics server详细安装手册中 需要的小伙伴可以评论区回复 #程序员 #每天学习一点点 #k8s #干货分享 #编程
00:00 / 01:49
连播
清屏
智能
倍速
点赞288
00:00 / 04:03
连播
清屏
智能
倍速
点赞154
00:00 / 14:15
连播
清屏
智能
倍速
点赞1
00:00 / 00:50
连播
清屏
智能
倍速
点赞160
两项k8s最重要的设计思想 在传统的软件开发中,我们常见的编程范式有: 面向过程 面向对象 面向数据库 面向服务 面向事件等 kubernetes则有所不同,有其独特之处 面向 API 编程 Kubernetes是一个面向 API 编程的软件系统 这一理念转变源于Kubernetes作为 现代云原生平台的核心定位 它必须具备强大的灵活性和可扩展性 在Kubernetes中 API Server是一个关键组件 负责管理所有资源 每种资源类型都有对应的API 例如: Namespace、Pod、Deployment 新增一种资源类型 本质上就是新增一个API 比如 当你使用kube control命令创建一个Pod 时 其实是通过kube control命令调用了API Server的Pod创建接口 随后将相关信息存储到ETCD数据库中 声明式编程 kubernetes还是一个声明式的软件系统 用户定义资源时 只是提供了一份yaml格式的声明 声明了用户对该资源的期望状态 而资源的实际状态会因为某些原因而偏离期望状态 所以需要有一个角色来持续监控这些资源的状态 当资源的实际状态与期望状态不一致时 采取相应的措施让资源重新回到用户的期望状态 这个角色就是控制器 Controller 例如,当你创建了一个副本数为2的Deployment资源时: 对应工作节点的kubelet会创建pod ReplicaSet Controller会持续监控其对应的Pod数量 如果发现副本数少于2,如某个 Pod 崩溃 Controller会创建一个新的Pod 并由节点上的kubelet启动该pod 以确保副本数恢复到设定值 此机制也适用于大部分其他资源类型 #程序员 #每天学习一点点 #编程 #干货分享 #云原生
00:00 / 01:42
连播
清屏
智能
倍速
点赞173
00:00 / 15:18
连播
清屏
智能
倍速
点赞40
00:00 / 01:24
连播
清屏
智能
倍速
点赞2
下一代容器管理神器podman 见了Docker!下一代容器管理神器podman来了 podman由Red Hat主导开发 旨在提供一个更安全、更灵活的容器管理工具 完全开源,在github已斩获24.4k star 名字podman中的pod指的是kubernetes pod 那man指的是男人吗? 当然不是 man是单词manager的前三个字母 连起来就是pod管理器的意思,是不是很直观? 与docker高度兼容 podman提供了与Docker高度兼容的命令行接口 例如,用户可以使用 podman run 代替 docker run podman ps 代替 docker ps 你甚至可以为podman取别名为docker 这样可以轻松过渡到podman 无需重新学习新的命令 此外 Podman还支持Docker镜像和Docker Hub 因此用户可以使用现有的容器镜像进行部署 无守护进程架构 docker依赖一个root用户运行的守护进程(dockerD) 创建容器时 docker CLI先调用dockerD dockerD再调用containerD 进而调用低级别容器运行时runC 最后由runC与系统内核交互创建出容器 而podman本身只是一个轻量级的客户端工具 不需要依赖守护进程 而是直接调用runC与操作系统交互 进而管理容器 这大大降低了系统的复杂性 此外,得益于podman不需要守护进程 使得podman允许用户 在没有管理员权限的情况下创建和管理容器 从而提高了安全性 支持k8s pod 与Docker相比 Podman引入了“Pod”的概念 允许用户将多个容器组织在同一个Pod中 Podman还可以生成 k8s 所需的yaml文件 Podman对Pod的支持使得 它在本地开发和测试 k8s 应用时非常有用 并且方便用户将本地容器迁移到生产环境 #知识分享 #编程 #程序员 #干货分享
00:00 / 02:13
连播
清屏
智能
倍速
点赞NaN
00:00 / 05:02
连播
清屏
智能
倍速
点赞88
00:00 / 11:07
连播
清屏
智能
倍速
点赞0
00:00 / 05:11
连播
清屏
智能
倍速
点赞55
00:00 / 13:35
连播
清屏
智能
倍速
点赞33
00:00 / 02:03
连播
清屏
智能
倍速
点赞1
00:00 / 05:24
连播
清屏
智能
倍速
点赞6