240 发简信
IP属地:宁夏
  • POD使用DNS工作原理

    tag: k8s coredns 一、前言 有个同学不小心将CoreDNS干掉了,直接使用helm安装,但是DNS SVC的IP会重新分配一个。部署的POD的dns服务器地址...

  • Metallb调试分析

    零 前言 一 环境信息 集群节点 POD部署 测试LB服务 my-nginx为LoadBalancer类型的服务,分配的IP为主机网段192.168.26.190 二 节点信...

  • Flannel Vxlan网络模拟

    tag: flannel vxlan k8s 前言 有好多科普vxlan的文章,并介绍vxlan的多播模式及bridge模式。由于flannel支持vxlan模式,所以也学习...

  • Helm Namespace设置原理

    前言 Helm chart里的资源设置命名空间为demo,然后helm install demo podinfo -n test安装chart,运行结果会怎样? Helm的r...

  • CNI插件实例分析

    一 前言 之前分析了cni的插件原理,具体的CNI的实现是怎么样?偶然遇到一个cni实现,作者非常厉害,为了方便学习自己做了一些改造,代码见github。 二 节点环境 三 ...

  • OperatorSDK选举机制

    前言 之前分析过K8S的选主流程,整个流程比较复杂。operatorsdk的实现却很简单。 整体流程 以key创建一个configmap,configmap的metadata...

  • K8S-网络插件原理

    一 前言 CNI和kubelet关系kubelet负责创建POD,POD启动和删除(可以类比为虚拟机)需要设置网络环境。kubelet自身不关心网络实现,它调用CNI实现。 ...

  • Nginx Ingress TCP代理实现

    一 前言 一般使用ingress都是代理http流量,但是有些场景希望代理tcp流量,例如:不想占用过多的公网IP。 开源的ingress对tcp支持不是很好,主要原因在于k...

  • 反响代理实现原理

    前言 之前接触的代理是sofa-mosn这种,它client端连接到mosn后,mosn将数据包转发到后端。其中1)mosn到后端服务器有个连接池,连接是可以复用的2)mos...

  • 120
    搭建Prometheus Grafana Go监控平台

    一、前言 监控指标 Go监控指标有好多库,监控指标大致一样。1)https://github.com/bmhatfield/go-runtime-metrics2)https...

  • GO Log统一接口

    一、问题 go日志库有很多:zap、 Logrus等,它们没有统一的接口。作为中间件提供方,中间件的日志怎么输出到业务的日志文件中? 解决方式:统一日志接口,类似于java中...

  • Golang expvar原理

    前言 在学习go的metric的过程中,有些实现支持prometheus、expvar等,expvar是什么,竟然在sdk的库中?另外,发现jaeger(github.com...

  • GO PPROF使用

    一、前言 业务方反馈引入jaeger后,cpu load飙升,无奈只能分析一波。 二、PPROF环境 pprof 文件是二进制的,可以使用 svg 格式,方便分析。go to...

  • Jaeger采样率初始化

    一、采样率配置属性 可以通过环境变量对采样率配置JAEGER_SAMPLER_TYPE 配置采集器的类型JAEGER_SAMPLER_PARAM 采样率(对于概率采集器来说)...

  • 120
    Jaeger Collector Http接口

    一、基本信息 collector端口 调试方法 1)环境变量CGO_ENABLED=0SPAN_STORAGE_TYPE=memory2)应用参数--collector.zi...

  • 120
    Sleuth输出TraceId

    一、环境搭建 1.1包配置 1.2日志配置 二、实现分析 2.1 sleuth日志插件 org.springframework.cloud.sleuth.log.Slf4jC...

  • Jaeger依赖分析

    一、依赖任务 1.1 k8s运行任务 1.2 查看任务状态 1.3 依赖关系结果 二、依赖任务实现 io.jaegertracing.spark.dependencies.e...