08 2021 档案
摘要:背景介绍 为了使资源被Kubernetes平台接管,基础资源得到统一管理、平台管理,RabbitMQ也可以实现部署到Kubernetes集群平台中 本文安装RabbitMQ-3.8.3版本,使用官方镜像rabbitmq:3.8.3-management 参考官方文档 Cluster Formatio
阅读全文
摘要:PodCIDRs问题 Kubernetes v1.18.5 + Cilium 1.9.4 安装遇到的问题 报错信息 E0827 21:08:22.925379 1 controller_utils.go:245] Error while processing Node Add: failed to
阅读全文
摘要:Native-Routing 原生路由/主机路由,二者是一样,二种叫法 参考官方文档 官方Gitlab目录 cilium/install/kubernetes/cilium/values.yaml 在本地路由模式下,Cilium 会将本节点网络地址范围外的IP数据包委托给 Linux 内核的路由子系
阅读全文
摘要:Encapsulation 封装 官方文档 缺省模式,Cilium 会自动运行在封装模式下,因为这种模式对底层网络基础设施(特别是云厂商)依赖性比较低,只要2层网络通城,执行封装技术即可达到Pod通信目的 在这种模式下,所有集群节点使用基于 UDP 的封装协议 VXLAN 或 Geneve 形成隧道
阅读全文
摘要:介绍 官方文档https://kubernetes.io/zh/docs/tutorials/stateful-application/zookeeper/ 在部署之前,你需要熟悉以下Kubernetes概念 Pods Cluster DNS Headless Services Persistent
阅读全文
摘要:官方文档:https://kubernetes.github.io/ingress-nginx/deploy/#bare-metal There are three ways to customize NGINX: ConfigMap: using a Configmap to set global
阅读全文
摘要:本文档基于阿里云平台,自建Kubernetes平台部署文档,版本是v1.18.5 Kubernetes组件安装 各组件如下 组件 描述 docker Container runtime 需要在集群中的每个节点部署 kubelet Kubernetes集群守护组件,用来启动Pod & Containe
阅读全文
摘要:系统要求 操作系统要求,内核版本 Linux kernel >= 4.9.17 如果是独立安装在裸OS上(不是使用官方的cilium/cilium镜像),需要满足 clang+LLVM >= 10.0 iproute2 with eBPF templating patches [1] 如果不在Kub
阅读全文
摘要:三方镜像网站https://dl.lamp.sh/kernel/el7/ 安装elrepo源,如下 <root@iZj6c8bzfr4cvcyc42e6kqZ ~># rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org <root@i
阅读全文
摘要:volume Container 中的文件在磁盘上是临时存放的,使之Container中运行的相对重要的应用业务带来一些问题 第一个问题是当容器崩溃时文件丢失。kubelet 会重新启动容器, 但容器会以干净的状态重启 第二个问题是会在同一 Pod中运行多个容器并共享文件时出现,Kubernetes
阅读全文
摘要:Pod Priority 在Kubernetes集群环境中,可以设置Pod的优先级,优先级的高低代表Pod之间的重要性可以相互比较,如果一个Pod无法被调度器调度时,或者集群资源缺乏时,调度器会抢占与之优先级较低的Pod的资源 PriorityClass 在Kubernetes集群平台中,存在二个系
阅读全文
摘要:功能描述 垃圾回收是kubelet的一个功能,用来清理节点上未使用的镜像及容器 kubelet 每分钟执行一次容器的垃圾回收 kubelet 每5分钟执行一次对镜像的垃圾回收 Kubernetes不建议使用外部的命令及工具垃圾对此类资源的回收,以免影响kubelet正常执行垃圾回收而引起资源回收失败
阅读全文
摘要:介绍 概念功能说明 kubelet主动监测和防止Kubernetes集群的资源使用情况,在资源短缺时,如何判断资源短缺根据系统设置的eviction保留策略,当节点资源使用触发到该阈值,开始执行驱逐(主动的结束一个或者多个Pod以回收资源,Pod的状态变为Failed),如果被驱逐的Pod被depl
阅读全文
摘要:根据节点具体的PID如何定位到指定的容器,三种方法 笨方法,根据进程PID定位,如节点运行了很多的java进程,在部署设计时没有什么区别及环境变量,很难区分进程对应的容器 列出具体应用的进程,如下 <root@SIT-K8S-WN7 ~># ps -ef | grep java nflow 1272
阅读全文
摘要:后续 继Kubernetes 资源预留(一),查阅相关资料及参考阿里云ACK的资源预留配置,深思熟虑后,决定采取以下配置,分为二个部分 阿里云ACK配置 具体配置 # 阿里云kubelet详细配置 iZj6c1ubia3yzi7sohsjtpZ:/etc/systemd/system/kubelet
阅读全文
摘要:Kubernetes日志路径配置 Kubernetes各组件默认不将日志输出到文件,可能是不好控制吧,默认只输出到控制台 kubelet 具体配置如下,kuberlet.service.d/10-kubeadm.conf 一共四个环境变量,真是吃饱撑得没事做,可能是为了功能更明确一点吧 具体日志修改
阅读全文
摘要:Kubernetes Cluster add node 加入过程 kubeadm 从 API 服务器下载需要的集群信息。 默认情况下,使用引导token和 CA 密钥哈希来验证数据的真实性。 也可以通过文件或 URL 直接发现根 CA 拿到集群验证信息后,kubelet进入TLS bootstrap
阅读全文
摘要:Redhat/Centos /proc/meminfo各参数详细解释,如下 • MemTotal Total amount of usable RAM, in kibibytes, which is physical RAM minus a number of reserved bits and t
阅读全文
摘要:具体参数官方地址,如下 英文地址:https://kubernetes.io/releases/version-skew-policy/ 中文地址:https://kubernetes.io/zh/docs/setup/release/version-skew-policy/
阅读全文
摘要:Node Allocatable Resources Allcatable 除了 kubelet、runtime 等 kubernetes 守护进程和用户 pod 之外,Kubernetes 节点通常还运行许多操作系统系统守护进程。 Kubernetes 假设节点中的所有可用计算资源(称为容量)都可
阅读全文
摘要:资源requests如何影响调度 调度器如何判断Pod调度到某个节点上 通过设置资源requests,可以设置Pod的最小资源分配请求,调度器在调度时只考虑那些未分配资源量满足Pod需求量的节点 调度器在调度时并不关心各类资源在当前的实际使用量,而是关注节点上部署所有Pod的资源requests的总
阅读全文
摘要:tunnel模式 helm install cilium cilium/cilium --version 1.9.9 \ --namespace kube-system \ --set tunnel=vxlan \ --set kubeProxyReplacement=strict \ --set
阅读全文