Web Analytics

Go module机制下升级major版本号的实践

Go module机制在Go 1.11版本引入,虽然也伴随着不小的质疑声,但总体上Go社区多数Gopher是接受go module的,很多标杆式的Go项目(比如kubernetes、kubernetes client-go等)也都逐渐转向了Go module,并且Gopher也在向core team反馈了自己的建议和问题。Go core team也在go module最初设计的基础上持续进行着改进...

June 3, 2019 · 11 min · Tony Bai

Go正走在成为下一个企业级编程语言的轨道上

发展演化了十年的Go语言已经被证明了是云计算时代的首选编程语言,但Go的用武之地显然不局限于此。Kevin Goslar近期在Hacker Noon发表了一篇名为:《Go is on a Trajectory to Become the Next Enterprise Programming Language》的文章,阐述了Go可能成为下一个企业编程语言的理由,这里是那篇文章的中文译文,分享给大家...

May 3, 2019 · 14 min · Tony Bai

使用nomad在weave网络中部署工作负载

当初Kubernetes网络的设计目标是**使得开发者使用pod时在网络这一层面可以像使用传统物理主机或虚拟机一样**。具体的基本要求如下: * 所有pod间均应可以在无需NAT的情况下直接通信; * 所有集群节点与所有集群的Pod之间均应可以在无需NAT的情况下直接通信; * 容器自身的地址和其他pod看到的它的地址是同一个地址; 按照这样的要求,集群中的每个pod都在一个平坦的、共享网络命名空...

April 20, 2019 · 16 min · Tony Bai

Kubernetes网络插件(CNI)基准测试的最新结果

本文翻译自Alexis Ducastel的文章《Benchmark results of Kubernetes network plugins (CNI) over 10Gbit/s network (Updated: April 2019)》。 本文是我之前的基准测试的最新更新,这次测试在最新版Kubernetes 1.14上运行,其中CNI版本在2019年4月更新。 首先,非常感谢Cilium...

April 18, 2019 · 10 min · Tony Bai

使用nomad实现工作负载版本升级

书接上文。 在《使用nomad实现集群管理和微服务部署调度》一文中,我们介绍了使用nomad进行集群管理和工作负载调度的轻量级方案(相较于Kubernetes方案)。在本文中,我们继续对方案进行延展,介绍一下在nomad集群中工作负载版本升级的一些常用模式和实现方法,包括滚动升级、蓝绿部署和金丝雀部署。 一. 初始状态 ------- 这里我们利用基于tcp+sni路由(listener端口为99...

April 9, 2019 · 13 min · Tony Bai