摘要:
现有集群是docker默认的bridge网络模型,不支持跨节点通信。因此部署网络插件calico. 另外需要把kubelet的网络模型改成cni(--network-plugin=cni).calico官网(https://docs.projectcalico.org/getting-started 阅读全文
摘要:
Neutron 是 OpenStack 项目中负责提供网络服务的组件,它基于软件定义网络的思想,实现了网络虚拟化下的资源管理。Openstack常用三种网络模式:GRE、VLAN、VXLAN. GRE模式 在OpenStack中,所有网络有关的逻辑管理均在Network节点中实现,例如DNS、DHC 阅读全文
摘要:
informer用途 获取 kubernetes 中某个资源,同步k8s中的数据到本地缓存,并watch各种资源变化,触发相应的eventHandler. 在访问 k8s apiserver 的客户端作为一个 client 缓存对象使用 在一些自定义 controller 中使用,比如 operat 阅读全文
摘要:
构造pod驱逐: kubectl edit deployment修改sizeLimit改成100Mi,等待容器重建 进容器执行 dd if=/dev/zero of=/opt/logs/tmp.txt bs=10M count=100 过一会儿驱逐发生 阅读全文
摘要:
容器网络概览 容器之间如何联通是个重要的问题。Docker官方文档 https://docs.docker.com/network/ 介绍了多种网络模式,本文加以阐述: bridge host container none overlay macvlan netplugin 一般网络选择none时, 阅读全文
摘要:
kube-apiserver架构 每个master节点上都有一个kube-apiserver,kube-apiserver是无状态的,客户端如kubelet可通过启动参数"--api-servers"指定多个api-server,但只有第一个生效,即指定的多个api-server并没有达到高可用的目 阅读全文
摘要:
大家都知道TCP是一种可靠的链接,之所以说它可靠是因为它在发送数据包之前会建立一个通道,待通道建立完毕后再发送数据,确保数据可以收到。而建立连接的过程和删除连接的过程也是很可靠的。建立连接是通过三次握手,删除连接是四次握手。下图是一个TCP三次握手的图,一个手机向一个服务器建立TCP连接: 为什么建 阅读全文
摘要:
Kubernetes Pods 是有生命周期的. 当你使用Deployment来运行你的应用是,它会动态创建Pod,使Pod的数量总是维持着Replicas的数目。每个Pod会获得一个IP,但是在Deployment中,在某一时刻运行的Pod集合可能与稍后运行该应用程序的Pod集合不同。这样就会导致 阅读全文
摘要:
策略路由简介 定义 策略路由PBR(Policy-Based Routing)是一种依据用户制定的策略进行路由选择的机制。 策略路由与路由策略(Routing Policy)存在以下不同: 策略路由的操作对象是数据包,在路由表已经产生的情况下,不按照路由表进行转发,而是根据需要,依照某种策略改变数据 阅读全文
摘要:
WithTimeout 超时自动取消方法,当执行一个go 协程时,超时自动取消协程 package main import ( "fmt" "time" "context" ) func main() { ctx, _ := context.WithTimeout(context.Backgroun 阅读全文