1. 环境

系统:CentOS 7.2

Go:1.10.3

Kubernetes:1.10.4

2. 安装最新版go

  编译的Kubernetes 1.10.4要求go版本在1.9.3以上,使用下面的yum源安装最新版go:

[golang]
name=Golang
baseurl=https://mirror.go-repo.io/centos/7/x86_64/
enable=1
gpgcheck=0
# yum install golang

3. 下载Kubernetes源码到$GOPATH目录

# go get -d k8s.io/kubernetes

如果访问k8s.io有问题,可以从github下载,然后复制到$GOPATH/src/k8s.io/目录。

4. 编译

进入kubernetes目录,切换到要编译的版本,然后编译:

# cd $GOPATH/src/k8s.io/kubernetes
# git checkout tags/v1.10.4
# make clean
# make WHAT=cmd/kubelet

WHAT指定只编译kubelet,减少编译时间。编译完成后会在_output/bin/目录下生成kubelet二进制文件。

5. 更新

将编译生成的二进制文件复制到安装目录,重启服务就完成更新了:

# cp $GOPATH/src/k8s.io/kubernetes/_output/bin/kubelet /usr/local/bin/kubelet
# systemctl restart kubelet

如果kubelet是运行在容器中,则需要打包成镜像,参考Building Kubernetes

参考资料

编译 Kubernetes 二进制文件

最新文章

  1. jQuery基础_1
  2. 树分治 poj 1741
  3. java 8 新特性
  4. java学习第9天
  5. Django项目深入理解
  6. [LintCode] Find the Weak Connected Component in the Directed Graph
  7. 经常遇到Please ensure that adb is correctly located at 'D:\java\sdk\platform-tools\adb.exe' and can be e
  8. Spring初始化 Map 和 解析Json value
  9. MySQL Date 函数
  10. ruby定时脚本
  11. 浅谈java中==与equals的区别
  12. 使用Navicat for MySQL把本地数据库上传到服务器
  13. Java CAS同步机制 原理详解(为什么并发环境下的COUNT自增操作不安全): Atomic原子类底层用的不是传统意义的锁机制,而是无锁化的CAS机制,通过CAS机制保证多线程修改一个数值的安全性。
  14. Ubuntu 16.04 安装 VMware Tools(解决windows和Ubuntu之间不能互相复制粘贴文件的问题)
  15. UESTC1013-我的魔法栈-模拟/排列组合
  16. java Properties
  17. 《Android Studio开发实战 从零基础到App上线》资源下载和内容勘误
  18. vue.js 兄弟组件传值
  19. joomla 的语言翻译
  20. List接口的实现类与ArrayList相似,区别是Vector是重量级的组件,使用使消耗的资源比较多

热门文章

  1. sqlserver2008执行200M以上的大脚本文件,打开脚本总是报“未能完成操作,存储空间不足”
  2. SpringMVC04 很杂很重要(注解,乱码处理,通配符,域属性调用,校正参数名称,访问路径,请求、响应携带参数,请求方法)
  3. 一、Spring-Data-Jpa 初体验(基于SpringBoot)
  4. spring boot 基础 多环境配置
  5. Android-->RxJava2更新体验
  6. Eucalyptus(v4.0)系统需求
  7. 常用CSS3属性整理
  8. Producer & Consumer
  9. [VC]线程
  10. 【BZOJ2754】[SCOI2012] 喵星球上的点名(后缀数组+莫队)