使用Rancher和私有仓库快速搭建Kubernetes集群
来来来,先出题: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集群的更多相关文章
- 使用Kubeadm(1.13+)快速搭建Kubernetes集群
Kubeadm是管理集群生命周期的重要工具,从创建到配置再到升级,Kubeadm处理现有硬件上的生产集群的引导,并以最佳实践方式配置核心Kubernetes组件,以便为新节点提供安全而简单的连接流程并 ...
- 【Kubernetes学习笔记】-kubeadm 手动搭建kubernetes 集群
目录 K8S 组件构成 环境准备 (以ubuntu系统为例) 1. kubernetes集群机器 2. 安装 docker. kubeadm.kubelet.kubectl 2.1 在每台机器上安装 ...
- Kubernetes探索学习001--Centos7.6使用kubeadm快速部署Kubernetes集群
Centos7.6使用kubeadm快速部署kubernetes集群 为什么要使用kubeadm来部署kubernetes?因为kubeadm是kubernetes原生的部署工具,简单快捷方便,便于新 ...
- kubeadm搭建kubernetes集群之二:创建master节点
在上一章kubeadm搭建kubernetes集群之一:构建标准化镜像中我们用VMware安装了一个CentOS7虚拟机,并且打算用这个虚拟机的镜像文件作为后续整个kubernetes的标准化镜像,现 ...
- 二进制搭建Kubernetes集群(最新v1.16.0版本)
目录 1.生产环境k8s平台架构 2.官方提供三种部署方式 3.服务器规划 4.系统初始化 5.Etcd集群部署 5.1.安装cfssl工具 5.2.生成etcd证书 5.2.1 创建用来生成 CA ...
- kubeadm搭建kubernetes集群之三:加入node节点
在上一章<kubeadm搭建kubernetes集群之二:创建master节点>的实战中,我们把kubernetes的master节点搭建好了,本章我们将加入node节点,使得整个环境可以 ...
- VMware 克隆linux后找不到eth0(学习hadoop,所以想快速搭建一个集群)
发生情况: 由于在学习hadoop,所以想快速搭建一个集群出来.所以直接在windows操作系统上用VMware安装了CentOS操作系统,配置好hadoop开发环境后,采用克隆功能,直接克 ...
- 快速搭建Jenkins集群
关于Jenkins集群 在Jenkins上同时执行多个任务时,单机性能可能达到瓶颈,使用Jenkins集群可以有效的解决此问题,让多台机器同时处理这些任务可以将压力分散,对单机版Jenkins的单点故 ...
- kubeadm 搭建kubernetes集群环境
需求 kubeadm 搭建kubernetes集群环境 准备条件 三台VPS(本文使用阿里云香港 - centos7.7) 一台能SSH连接到VPS的本地电脑 (推荐连接工具xshell) 安装步骤 ...
随机推荐
- java JVM虚拟机
JVM垃圾处理方法(标记清除.复制.标记整理) 1.标记清除 标记阶段:先通过根节点,标记所有从根节点开始的对象,未被标记的为垃圾对象. 清除阶段:清除所有未被标记的对象. 2.复制算法 将原有的空间 ...
- Saltstack如何修改主机名或者minion id
参考:http://www.mamicode.com/info-detail-2241784.html 在生产维护的过程中,由于某种需要,可能需要给一些服务器改名,比如根据服务器的用途重新进行定义主机 ...
- phpredis Redis集群 Redis Cluster
官方url: https://github.com/phpredis/phpredis/blob/develop/cluster.markdown#readme 2017年10月29日20:44:25 ...
- [dpdk][sysfs][pci] 在dpdk程序中操纵PCI设备
〇 需求 在DPDK程序运行时,希望能够实时的操纵PCI 网卡设备的驱动绑定与解绑. 本文的目的是为了调查满足以上需求的,kernel提供的,标准的API都有几种,分别是什么.以确定实施方案. 一 ...
- JS — 数组去重(4种方法)
第一种:双重循环 var strCode='zxcvbnmasdfghjklopiuytrewqAWEDRFTGYHUJIK'; var str=''; for(var i=0;i<4;i++) ...
- 解决docker镜像pull超时问题
第一步:通过dig @114.114.114.114 registry-1.docker.io找到可用IP dig @114.114.114.114 registry-1.docker.io 第二步: ...
- (转载)Java多线程返回值处理
一.概述 到目前为止,我们已经能够声明并使一个线程任务运行起来了.但是遇到一个问题:现在定义的任务都没有任何返回值,那么加入我们希望一个任务运行结束后告诉我一个结果,该结果表名任务执行成功或失败,此时 ...
- python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告(二)
可以参考 python+requests接口自动化完整项目设计源码(一)https://www.cnblogs.com/111testing/p/9612671.html 原文地址https://ww ...
- 正则表达式(re模块)
s='hello world' print(s.find('llo')) #找到llo ret=s.replace('ll','xx') #用xx代替ll print(ret) print(s.spl ...
- z-tree学习笔记
做项目时,需要用到带复选框的tree.经比较后优选了ztree,功能强大,文档清晰. http://www.treejs.cn/v3/api.php 直接上代码吧. 1.下载ztree后.将里面需要用 ...