来来来,先出题:Rancher可以快速部署Kubernetes,但其使用的gcr.io上的镜像无法下载怎么办?使用Rancher可以快速部署Kubernetes,但我们需要下载哪些镜像?Rancher支持私有镜像仓库,如何设置呢?

 

解题思路:

国内网络虽然不能直接访问gcr.io服务器,但是能够访问hub.docker.com镜像仓库,而hub.docker.com能够访问gcr.io服务器。利用这个特性,以及hub.docker.com自身的“Create Automated Build”功能,读取github.com代码库上的自定义Dockerfile文件,自动创建部署Kubernetes所需的谷歌镜像。然后设置Rancher中Kubernetes模板,让我们的服务器去hub.docker.com中的私有仓库中拉取镜像。从而完成整个Kubernetes的部署过程。

 

问题1:谷歌服务器gcr.io上的镜像无法访问怎么办?

《获取 Kubernetes 镜像的方法》http://blog.csdn.net/shida_csdn/article/details/78480241  这篇文件以及图文并茂的讲解得非常清楚了。

 

问题2:使用Rancher快速部署Kubernetes需要哪些镜像?

《Rancher v1.6.14部署K8S1.8.5所需的镜像列表》http://blog.csdn.net/CSDN_duomaomao/article/details/79127856   ,本文以1.6.14版本为例。

特别说明:

1、rancher_cn打头的镜像中,tiller这个镜像很特殊,它是kubernetes部署工具 helm的服务端组件,原镜像的全名是gcr.io/kubernetes-helm/tiller:v2.6.1 ,rancher中国区的私有仓库镜像名称为:

registry.cn-shenzhen.aliyuncs.com/rancher_cn/tiller:v2.6.1

我在Github中私有代码库中的tiller/v2.6.1/Dockerfile文件内容为:

FROM gcr.io/kubernetes-helm/tiller:v2.6.1

MAINTAINER 397106818@qq.com

2、其他镜像前缀都是gcr.io/google_containers/:

registry.cn-shenzhen.aliyuncs.com/rancher_cn/pause-amd64 3.0

registry.cn-shenzhen.aliyuncs.com/rancher_cn/kubernetes-dashboard-amd64 v1.8.0

registry.cn-shenzhen.aliyuncs.com/rancher_cn/k8s-dns-sidecar-amd64 1.14.5

registry.cn-shenzhen.aliyuncs.com/rancher_cn/k8s-dns-kube-dns-amd64 1.14.5

registry.cn-shenzhen.aliyuncs.com/rancher_cn/k8s-dns-dnsmasq-nanny-amd64 1.14.5

registry.cn-shenzhen.aliyuncs.com/rancher_cn/heapster-influxdb-amd64 v1.3.3

registry.cn-shenzhen.aliyuncs.com/rancher_cn/heapster-grafana-amd64 v4.4.3

registry.cn-shenzhen.aliyuncs.com/rancher_cn/heapster-amd64 v1.4.0

我在Github 中私有代码库中的pause-amd64/3.0/Dockerfile文件内容为:

FROM gcr.io/google_containers/pause-amd64:3.0

MAINTAINER 397106818@qq.com

其余的heapster和k8S 打头的镜像也一样,Dockerfile文件非常简单,就是直接引用gcr.io上的镜像。

......

 

问题3:Rancher中私有仓库如何设置?

《rancher中国区加速安装Kubernetes》https://anjia0532.github.io/2017/11/13/rancher-k8s-china/

Rancher中Kubernetes模板设置要点:

Private Registry for Add-Ons and Pod Infra Container Image index.docker.io

Image namespace for Add-Ons and Pod Infra Container Image dockermaomao

Image namespace for kubernetes-helm Image dockermaomao

Pod Infra Container Image dockermaomao

 

运行截图:

01-github内容

02-其中一个镜像的自动创建设置(pause-amd64)

02-其中一个镜像的自动创建设置(kubernetes-dashboard-amd64)

03-如何生成自动创建镜像

03-如何生成自动创建镜像2

03-如何生成自动创建镜像3

03-如何生成自动创建镜像4

04-自动创建后Dockerhub镜像仓库内容

04-自动创建后Dockerhub镜像仓库内容2

05-Rancher中的Kubernetes模板环境设置-关键4个参数

06-使用Rancher部署Kubernetes后,面板中显示,使用的是私有仓库的镜像

01-github内容

02-其中一个镜像的自动创建设置(pause-amd64)

02-其中一个镜像的自动创建设置(kubernetes-dashboard-amd64)

03-如何生成自动创建镜像

03-如何生成自动创建镜像2

03-如何生成自动创建镜像3

03-如何生成自动创建镜像4

04-自动创建后Dockerhub镜像仓库内容

04-自动创建后Dockerhub镜像仓库内容2

05-Rancher中的Kubernetes模板环境设置-关键4个参数

06-使用Rancher部署Kubernetes后,面板中显示,使用的是私有仓库的镜像

参考链接:

获取 Kubernetes 镜像的方法:

http://blog.csdn.net/shida_csdn/article/details/78480241

Rancher v1.6.14部署K8S1.8.5所需的镜像列表:

http://blog.csdn.net/CSDN_duomaomao/article/details/79127856

rancher中国区加速安装Kubernetes:

https://anjia0532.github.io/2017/11/13/rancher-k8s-china/

rancher安装Kubernetes:

https://anjia0532.github.io/2017/11/10/rancher-k8s/

本文的Github代码:

https://github.com/colindaddy/googlecontainer

本文的dockerhub镜像库:

https://hub.docker.com/u/dockermaomao/

使用Rancher和私有仓库快速搭建Kubernetes集群的更多相关文章

  1. 使用Kubeadm(1.13+)快速搭建Kubernetes集群

    Kubeadm是管理集群生命周期的重要工具,从创建到配置再到升级,Kubeadm处理现有硬件上的生产集群的引导,并以最佳实践方式配置核心Kubernetes组件,以便为新节点提供安全而简单的连接流程并 ...

  2. 【Kubernetes学习笔记】-kubeadm 手动搭建kubernetes 集群

    目录 K8S 组件构成 环境准备 (以ubuntu系统为例) 1. kubernetes集群机器 2. 安装 docker. kubeadm.kubelet.kubectl 2.1 在每台机器上安装 ...

  3. Kubernetes探索学习001--Centos7.6使用kubeadm快速部署Kubernetes集群

    Centos7.6使用kubeadm快速部署kubernetes集群 为什么要使用kubeadm来部署kubernetes?因为kubeadm是kubernetes原生的部署工具,简单快捷方便,便于新 ...

  4. kubeadm搭建kubernetes集群之二:创建master节点

    在上一章kubeadm搭建kubernetes集群之一:构建标准化镜像中我们用VMware安装了一个CentOS7虚拟机,并且打算用这个虚拟机的镜像文件作为后续整个kubernetes的标准化镜像,现 ...

  5. 二进制搭建Kubernetes集群(最新v1.16.0版本)

    目录 1.生产环境k8s平台架构 2.官方提供三种部署方式 3.服务器规划 4.系统初始化 5.Etcd集群部署 5.1.安装cfssl工具 5.2.生成etcd证书 5.2.1 创建用来生成 CA ...

  6. kubeadm搭建kubernetes集群之三:加入node节点

    在上一章<kubeadm搭建kubernetes集群之二:创建master节点>的实战中,我们把kubernetes的master节点搭建好了,本章我们将加入node节点,使得整个环境可以 ...

  7. VMware 克隆linux后找不到eth0(学习hadoop,所以想快速搭建一个集群)

    发生情况:      由于在学习hadoop,所以想快速搭建一个集群出来.所以直接在windows操作系统上用VMware安装了CentOS操作系统,配置好hadoop开发环境后,采用克隆功能,直接克 ...

  8. 快速搭建Jenkins集群

    关于Jenkins集群 在Jenkins上同时执行多个任务时,单机性能可能达到瓶颈,使用Jenkins集群可以有效的解决此问题,让多台机器同时处理这些任务可以将压力分散,对单机版Jenkins的单点故 ...

  9. kubeadm 搭建kubernetes集群环境

    需求 kubeadm 搭建kubernetes集群环境 准备条件 三台VPS(本文使用阿里云香港 - centos7.7) 一台能SSH连接到VPS的本地电脑 (推荐连接工具xshell) 安装步骤 ...

随机推荐

  1. DataGrid表格某单元格数据填入是否正确的验证---MiniUI使用

    示例: <div id="datagrid1" class="mini-datagrid" oncellvalidation="onCellVa ...

  2. 解决键盘输入被JDB占用的问题

    解决键盘输入被JDB占用的问题 本周的任务"迭代和JDB"在使用JDB调试时需要键盘输入数据,但我在正确的位置输入数据后发现JDB提示如图所示的错误. 上网查找后得知该错误的产生是 ...

  3. ASP.NET Core ResponseCaching:基于 VaryByHeader 定制缓存 Key

    ASP.NET Core ResponseCaching 提供了缓存http响应内容的能力,通过它可以在本地内存中直接缓存http响应内容,这是速度最快的服务端缓存,省却了网络传输与生成响应内容的开销 ...

  4. scrapy学习---管道

    使用管道必须实现process_item() 方法 process_item(self, item, spider) 次方法实现数据的过滤处理等操作 open_spider(self, spider) ...

  5. python框架之Flask(4)-上下文管理

    知识储备 偏函数 作用 偏函数,帮助开发者自动传递参数. 使用 import functools def index(a1, a2): return a1 + a2 # 原来的调用方式 # ret = ...

  6. C++的初始化成员列表

    class CExample { public: int a; float b; //构造函数初始化列表 CExample(): a(),b(8.8) {} //构造函数内部赋值 CExample() ...

  7. 【UML】NO.46.EBook.5.UML.1.006-【UML 大战需求分析】- 用例图(Use Case Diagram)

    1.0.0 Summary Tittle:[UML]NO.46.EBook.1.UML.1.006-[UML 大战需求分析]- 用例图(Use Case Diagram) Style:DesignPa ...

  8. repo 获取各个库的tag代码或者分支代码

    关于mainfest.xml中的参数格式和说明,可以自己查阅,此处不详细写,我们知道project中的reversion可以指定分支,tag,commitid等,那么如何书写呢? 首先克隆mainfe ...

  9. #WEB安全基础 : HTTP协议 | 0x2 HTTP有关协议通信

    IP,TCP,DNS协议与HTP协议密不可分 IP(网际协议)位于网络层,几乎所有使用网络的系统都会用到IP协议 IP协议的作用:把数据包发送给对方,要保证确实传送到对方那里,则需要满足各类条件.两个 ...

  10. phpcms网页替换验证码功能 及 搜索功能

    在使用phpcms替换网页的时候,除了正常的替换栏目.内容页等,其他的什么验证码啦,提交表单了,搜索功能了,这些在替换的时候可能会对一些默认文件有一些小小 的改变 下面就是自己在失败中成功的过程,最后 ...