我指的是以下几个安装包:

-rw-r--r--. 1 root root 8976134 Jul 13 10:19 kubeadm-1.7.0-0.x86_64.rpm
-rw-r--r--. 1 root root 9362110 Jul 13 10:19 kubectl-1.7.0-0.x86_64.rpm
-rw-r--r--. 1 root root 17238982 Jul 13 10:19 kubelet-1.7.0-0.x86_64.rpm
-rw-r--r--. 1 root root 7800450 Jul 13 10:19 kubernetes-cni-0.5.1-0.x86_64.rpm

===============================

参考说法:

官方的文档页面更新并不及时,同时他的 yum 源更新也很慢,再者…那他妈可是 Google 的服务器,能特么连上吗?以前总是在国外服务器使用 yumdownloader 下载,然后 scp 到本地,虽然能解决问题,但是蛋碎一地…最后找到了源头,如下

Kubernetes 编译的各种发行版安装包来源于 Github 上的另一个叫 release 的项目,地址 点这里,把这个项目 clone 下来,由于本人是 CentOS 用户,所以进入 rpm 目录,在安装好 docker 的机器上执行那个 docker-build.sh 脚本即可编译 rpm 包,最后会生成到当前目录的 output 目录下,截图如下

 

https://github.com/kubernetes/release
====================================================
这样,用kubeadm安装之前,rpm就可以先安装好啦。多,快,好,省!
有一个地方注意,默认会自动编译所有平台的,如果只要amd-x64,可以更改一下entry.sh文件,把其它平台去掉。加快时间。
当然,前提是要准备好fedora:24这个docker镜像文件哟。
 
#!/bin/sh
# Entrypoint for the build container to create the rpms and yum repodata:
# Usage: ./entry.sh GOARCH/RPMARCH,GOARCH/RPMARCH,....

set -e

declare -a ARCHS

 ]; then
  IFS=); unset IFS;
else
  #GOARCH/RPMARCH
  ARCHS=(
    amd64/x86_64
    arm/armhfp
    arm64/aarch64
    ppc64le/ppc64le
    s390x/s390x
  )
fi

for ARCH in ${ARCHS[@]}; do
  IFS=/ read GOARCH RPMARCH<<< ${ARCH}; unset IFS;
  SRC_PATH="/root/rpmbuild/SOURCES/${RPMARCH}"
  mkdir -p ${SRC_PATH}
  cp -r /root/rpmbuild/SPECS/* ${SRC_PATH}
  echo "Building RPM's for ${GOARCH}....."
  sed -i "s/\%global ARCH.*/\%global ARCH ${GOARCH}/" ${SRC_PATH}/kubelet.spec
  # Download sources if not already available
  cd ${SRC_PATH} && spectool -gf kubelet.spec
  /usr/bin/rpmbuild --target ${RPMARCH} --define "_sourcedir ${SRC_PATH}" -bb ${SRC_PATH}/kubelet.spec
  mkdir -p /root/rpmbuild/RPMS/${RPMARCH}
  createrepo -o /root/rpmbuild/RPMS/${RPMARCH}/ /root/rpmbuild/RPMS/${RPMARCH}
done

自己编译生成k8s的rpm包的更多相关文章

  1. Linux应用和系统库的2种安装方式---源码安装tarball和二进制rpm包

    一.应用程序和系统库从哪里来? 两种机制,源码安装和二进制安装. 二.源码安装 tarball 1.核心思想是:利用开源代码,自己编译生成应用程序或者库,要求系统上必须已安装TMG(tar, make ...

  2. Centos7.X通过rpm包安装Docker

    目录 前言 1.Docker官网下载rpm包 2.通过liunx命令安装rpm包 3.迁移镜像存储路径 前言 Docker已经火了很多年,现在各大公司都会使用它.那么在我们日常开发中也经常使用,比如我 ...

  3. Linux RPM 命令参数使用详解 查看 rpm包依赖性

    转载自:http://blog.csdn.net/deutschester/article/details/6309521 rpm 执行安装包 二进制包(Binary)以及源代码包(Source)两种 ...

  4. 常见linux系统中RPM包的通用命名规则

    本文重点说一下在常见的linux系统中,RPM包通用的命名规则. RPM包的一般格式为:name-version-arch.rpmname-version-arch.src.rpm 例:httpd-2 ...

  5. 制作rpm包报错问题

    在编译生成rpm包时,报错 ERROR 0001: file '***' contains a standard rpath '/usr/lib64'这是由于代码理由hardcode导致,解决问题有两 ...

  6. k8s的应用包管理工具helm的部署和使用

    1.概述 我们一般是在k8s里面部署一些简单的应用,比如用deployment,daemonset,statefuleset的方式来部署应用,但是如果要部署一些复杂的应用,那么整个配置的编写.部署的过 ...

  7. 利用rpmbuild 打包可执行文件和链接库生成rpm 包

    Background: Background: 遇到一个打包可执行程序和链接库生成rpm 包的需求,查遍了很多网站的资料,现在整理下解决方案. 前期参考的是这篇帖子: https://codeante ...

  8. 解决安装rpm包依赖关系的烦恼 - yum工具介绍及本地源配置方法

    版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...

  9. php-7.1.0 rpm包制作

    nginx-1.8.0 rpm包制作见上篇文章:http://www.cnblogs.com/xiaoming279/p/6251149.html spec文件 Name: php Version: ...

随机推荐

  1. Java API不能远程访问linux服务器HBase的问题

    今天我在虚拟机里面安装了Hbase 1.2.4,说在windows上Java API调用访问下玩玩,结果始终连接不上. 现象是启动程序后,程序出现卡死的状态,没报错也不停止,大约半分钟后才打印一堆日志 ...

  2. zabbix调优PPT

    http://www.slideshare.net/xsbr/alexei-vladishev-zabbixperformancetuning# http://zabbixzone.com/zabbi ...

  3. 学习opencv-------函数使用一

    #include"head.h" //cvResize() /*int main() { IplImage *img = cvLoadImage("e:/picture/ ...

  4. C语言超大数据相加计算整理

    在做ACM 1002题时,整理得到. #include<stdio.h>#include<string.h>#define MAX 1000void zero(char *s, ...

  5. [技巧篇]06.关于防止SQL注入的方式,不使用预处理

    在一期,二期阶段,有一些同学,对于SQL语句总是使用字符串的拼接,这是一个比较坏的毛病,这样非常影响我们的程序的安全性,所以一般情况下我们都推荐预处理模式,针对这种模式希望不了解的同学去努力学习,下面 ...

  6. windows版本redis下载安装

    官方网站:http://redis.io/ 官方下载:http://redis.io/download 可以根据需要下载不同版本 在官方下载网页中有一个window版本的说明,说redis官方没有wi ...

  7. 【设计模式】 模式PK:装饰模式VS适配器模式

    1.概述 装饰模式和适配器模式在通用类图上没有太多的相似点,差别比较大,但是它们的功能有相似的地方:都是包装作用,都是通过委托方式实现其功能.不同点是:装饰模式包装的是自己的兄弟类,隶属于同一个家族( ...

  8. John's trip(POJ1041+欧拉回路+打印路径)

    题目链接:http://poj.org/problem?id=1041 题目: 题意:给你n条街道,m个路口,每次输入以0 0结束,给你的u v t分别表示路口u和v由t这条街道连接,要输出从起点出发 ...

  9. HDU 1465 不容易系列之一 (错排公式+容斥)

    题目链接 Problem Description 大家常常感慨,要做好一件事情真的不容易,确实,失败比成功容易多了! 做好"一件"事情尚且不易,若想永远成功而总从不失败,那更是难上 ...

  10. ASP.NET AjaxControlToolkit-Framework4.0 配置实用(简单介绍CalendarExtender日期控件)

    1:下载:AjaxControlToolkit Ajax Control Toolkit .NET 4 Ajax Control Toolkit .NET 4.5 Ajax Control Toolk ...