博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自己编译生成k8s的rpm包
阅读量:4321 次
发布时间:2019-06-06

本文共 1868 字,大约阅读时间需要 6 分钟。

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

-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 下来,由于本人是  用户,所以进入 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 -edeclare -a ARCHSif [ $# -gt 0 ]; then  IFS=','; ARCHS=($1); unset IFS;else  #GOARCH/RPMARCH  ARCHS=(    amd64/x86_64    arm/armhfp    arm64/aarch64    ppc64le/ppc64le    s390x/s390x  )fifor 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

转载于:https://www.cnblogs.com/aguncn/p/7163441.html

你可能感兴趣的文章
el-tree文本内容过多显示不完全问题(解决)
查看>>
el-table翻页序号不从1开始(已解决)
查看>>
vue-cil 打包爬坑(解决)
查看>>
定位问题 vue+element-ui+easyui(兼容性)
查看>>
四叶草(css)
查看>>
nginx——前端服务环境
查看>>
vue+element-ui 字体自适应不同屏幕
查看>>
Vue 循环为选中的li列表添加效果
查看>>
vue创建脚手架 cil
查看>>
ArcGIS分支版本化( Branch Versioning )技术介绍
查看>>
scrapy过滤重复数据和增量爬取
查看>>
scrapy-redis源码浅析
查看>>
tupian
查看>>
selenium定位非select下拉框的元素 ,定位不到
查看>>
用elasticsearch分析中国大学省份分布
查看>>
elasticsearch 常用查询 + 删除索引
查看>>
sops的配置过程
查看>>
prometheus+grafana监控Linux和kubernetes的例子
查看>>
kubernetes 简单 hello world nginx svc deployment
查看>>
kubenetes 的svc从ClusterPort 改为NodePort
查看>>