物联网架构成长之路(45)-容器管理平台Rancher
0.前言
按照上一篇博客,我已经把需要下载的rancher docker 依赖镜像下载上传到Harbor了。
1. 安装
执行如下,实现一键安装
docker run -d --restart=unless-stopped -p : -p : -v /opt/rancher:/var/lib/rancher/ rancher/rancher:stable
具体看这个文档 https://rancher.com/docs/rancher/v2.x/en/
后续所有练习都是基于本地仓库执行,方便后面测试
docker pull 172.16.23.203:/rancher/rancher:v2.3.2
docker tag 172.16.23.203:/rancher/rancher:v2.3.2 rancher/rancher:v2.3.2
docker rmi 172.16.23.203:/rancher/rancher:v2.3.2
docker run -d --restart=unless-stopped -p : -p : -v /opt/rancher:/var/lib/rancher/ rancher/rancher:v2.3.2
执行以下命令,然后等一段时间,运行rancher还需要初始化1-2分钟。然后就可以访问了
apt-get install -y docker.io
wget http://172.16.23.203/res/docker-compose
chmod +x docker-compose
cp docker-compose /usr/local/bin cat >/etc/docker/daemon.json <<-EOF
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"],
"insecure-registries": ["http://172.16.23.203:20000"]
}
EOF
systemctl daemon-reload
systemctl restart docker docker login 172.16.23.203: -u admin -p #install rancher
docker pull 172.16.23.203:/rancher/rancher-agent:v2.3.2
docker tag 172.16.23.203:/rancher/rancher-agent:v2.3.2 rancher/rancher-agent:v2.3.2
docker rmi 172.16.23.203:/rancher/rancher-agent:v2.3.2 docker pull 172.16.23.203:/rancher/rancher:v2.3.2
docker tag 172.16.23.203:/rancher/rancher:v2.3.2 rancher/rancher:v2.3.2
docker rmi 172.16.23.203:/rancher/rancher:v2.3.2
docker run -d --restart=unless-stopped -p : -p : -v /opt/rancher:/var/lib/rancher/ rancher/rancher:v2.3.2

创建一个集群 Add Cluster , 选择Custom 本地节点方式
填写Cluster Name后,就下一步。在 Node Options 角色部分,就全选。其中Worker角色,表示可以在该节点安装Pod。其他两个就是一些集群的配置信息。
用VMs创建一台新的虚拟机,执行以下脚本(注,每个人的脚本都有所不一样)
apt-get install -y docker.io
wget http://172.16.23.203/res/docker-compose
chmod +x docker-compose
cp docker-compose /usr/local/bin cat >/etc/docker/daemon.json <<-EOF
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"],
"insecure-registries": ["http://172.16.23.203:20000"]
}
EOF
systemctl daemon-reload
systemctl restart docker docker login 172.16.23.203: -u admin -p #install rancher
#docker pull 172.16.23.203:/rancher/rancher-agent:v2.3.2
#docker tag 172.16.23.203:/rancher/rancher-agent:v2.3.2 rancher/rancher-agent:v2.3.2
#docker rmi 172.16.23.203:/rancher/rancher-agent:v2.3.2
#docker pull 172.16.23.203:/rancher/rancher:v2.3.2
#docker tag 172.16.23.203:/rancher/rancher:v2.3.2 rancher/rancher:v2.3.2
#docker rmi 172.16.23.203:/rancher/rancher:v2.3.2
#docker run -d --restart=unless-stopped -p : -p : -v /opt/rancher:/var/lib/rancher/ rancher/rancher:v2.3.2 #install worker node
docker pull 172.16.23.203:/rancher/rancher-agent:v2.3.2
docker pull 172.16.23.203:/rancher/hyperkube:v1.15.5-rancher1
docker pull 172.16.23.203:/rancher/rke-tools:v0.1.50
docker pull 172.16.23.203:/rancher/calico-node:v3.7.4
docker pull 172.16.23.203:/rancher/calico-cni:v3.7.4
docker pull 172.16.23.203:/rancher/coreos-flannel:v0.11.0
docker pull 172.16.23.203:/rancher/coreos-etcd:v3.3.10-rancher1
docker pull 172.16.23.203:/rancher/pause:3.1
docker pull 172.16.23.203:/rancher/metrics-server:v0.3.3
docker pull 172.16.23.203:/rancher/coredns-coredns:1.3.
docker pull 172.16.23.203:/rancher/cluster-proportional-autoscaler:1.3.
docker pull 172.16.23.203:/rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1
docker tag 172.16.23.203:/rancher/rancher-agent:v2.3.2 rancher/rancher-agent:v2.3.2
docker tag 172.16.23.203:/rancher/hyperkube:v1.15.5-rancher1 rancher/hyperkube:v1.15.5-rancher1
docker tag 172.16.23.203:/rancher/rke-tools:v0.1.50 rancher/rke-tools:v0.1.50
docker tag 172.16.23.203:/rancher/calico-node:v3.7.4 rancher/calico-node:v3.7.4
docker tag 172.16.23.203:/rancher/calico-cni:v3.7.4 rancher/calico-cni:v3.7.4
docker tag 172.16.23.203:/rancher/coreos-flannel:v0.11.0 rancher/coreos-flannel:v0.11.0
docker tag 172.16.23.203:/rancher/coreos-etcd:v3.3.10-rancher1 rancher/coreos-etcd:v3.3.10-rancher1
docker tag 172.16.23.203:/rancher/pause:3.1 rancher/pause:3.1
docker tag 172.16.23.203:/rancher/metrics-server:v0.3.3 rancher/metrics-server:v0.3.3
docker tag 172.16.23.203:/rancher/coredns-coredns:1.3. rancher/coredns-coredns:1.3.
docker tag 172.16.23.203:/rancher/cluster-proportional-autoscaler:1.3. rancher/cluster-proportional-autoscaler:1.3.
docker tag 172.16.23.203:/rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1 rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1
docker rmi 172.16.23.203:/rancher/rancher-agent:v2.3.2
docker rmi 172.16.23.203:/rancher/hyperkube:v1.15.5-rancher1
docker rmi 172.16.23.203:/rancher/rke-tools:v0.1.50
docker rmi 172.16.23.203:/rancher/calico-node:v3.7.4
docker rmi 172.16.23.203:/rancher/calico-cni:v3.7.4
docker rmi 172.16.23.203:/rancher/coreos-flannel:v0.11.0
docker rmi 172.16.23.203:/rancher/coreos-etcd:v3.3.10-rancher1
docker rmi 172.16.23.203:/rancher/pause:3.1
docker rmi 172.16.23.203:/rancher/metrics-server:v0.3.3
docker rmi 172.16.23.203:/rancher/coredns-coredns:1.3.
docker rmi 172.16.23.203:/rancher/cluster-proportional-autoscaler:1.3.
docker rmi 172.16.23.203:/rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1 sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.3.2 --server https://172.16.23.103 --token xvrvrg8s6shxg6bq2qc6v42fdmjm9dsbdzbff7hnfpp5mwtlfblmsg --ca-checksum 2cb3135fa308dcbd6bf6a73632072a05c03a1a8b42afc53acc594d8b440a159b --etcd --controlplane --worker
在Worker节点执行以上命令,将在Node节点部署rancher-agent,这个过程需要等待一段时间,如果是从hub.docker.com上下载的,或者aliyuncs.com镜像下载的,也是需要花一段时间,因为下载的东西很大。
理论执行上面一句命令就可以完成节点Node的部署。但是实时没有那么简单,有时候会因为网络问题,卡住不动。我一直以为是自己的原因。还有,下载的依赖,可能有1-2G,下载也是慢,所以要查查资料,看怎么使用私有repo。哎,都是泪。
还有就是之前宿主主机系统安装过etcd,这个需要卸载掉。

同理这样的机器安装多几台,这个过程完全自动化,还是比较花时间安装和服务发现的。吃个饭回来,就基本好了。
2.说明
前面博客有说到安装Kubernetes 花了将近3天,真从入门安装到放弃。现在试一下用RKE(Rancher Kubernetes Engine) 安装k8s
Rancher 所需的文件可以到这里下载 https://www.rancher.cn/docs/rancher/v2.x/cn/install-prepare/download/
简单入门: https://www.rancher.cn/docs/rancher/v2.x/cn/overview/quick-start-guide/
3. 附录,JS生成Bash脚本
var list = ["rancher/rancher-agent:v2.3.2",
"rancher/hyperkube:v1.15.5-rancher1",
"rancher/rke-tools:v0.1.50",
"rancher/calico-node:v3.7.4",
"rancher/calico-cni:v3.7.4",
"rancher/coreos-flannel:v0.11.0",
"rancher/coreos-etcd:v3.3.10-rancher1",
"rancher/pause:3.1",
"rancher/metrics-server:v0.3.3",
"rancher/coredns-coredns:1.3.1",
"rancher/cluster-proportional-autoscaler:1.3.0",
"rancher/nginx-ingress-controller:nginx-0.25.1-rancher1",
"rancher/kube-api-auth:v0.1.3",
"rancher/coredns-coredns:1.3.1",
"rancher/cluster-proportional-autoscaler:1.3.0",
"rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1"
]; var url = "172.16.23.203:20000/";
var log = "";
for(var i=; i<list.length; i++){
log += "docker tag " + list[i] + " " + url + list[i] +"\n"
}
console.log(log)
log = "";
for(var i=; i<list.length; i++){
log += "docker push " + url + list[i] +"\n"
}
console.log(log)
log = "";
for(var i=; i<list.length; i++){
log += "docker rmi " + url + list[i] + "\n"
}
console.log(log)
log = "";
for(var i=; i<list.length; i++){
log += "docker pull " + url + list[i] + "\n"
}
console.log(log);
log = "";
for(var i=; i<list.length; i++){
log += "docker tag " + url + list[i] + " " + list[i] + "\n"
}
console.log(log);
本文地址: https://www.cnblogs.com/wunaozai/p/11822386.html
本系列目录:https://www.cnblogs.com/wunaozai/p/8067577.html
个人主页:https://www.wunaozai.com/

物联网架构成长之路(45)-容器管理平台Rancher的更多相关文章
- 物联网架构成长之路(31)-EMQ基于HTTP权限验证
看过之前的文章就知道,我之前是通过搞插件,或者通过里面的MongoDB来进行EMQ的鉴权登录和权限验证.但是前段时间发现,还是通过HTTP WebHook 方式来调用鉴权接口比较适合实际使用.还是实现 ...
- 物联网架构成长之路(25)-Docker构建项目用到的镜像1
0. 前言 现在项目处于初级阶段,按照规划,先构建几个以后可能会用到的Image,并上传到阿里云的Docker仓库.以后博客中用到的Image,大部分都会用到这几个基础的Image,构建一个简单的物联 ...
- 企业级容器管理平台 Rancher 介绍入门及如何备份数据
企业级容器管理平台 Rancher 介绍入门及如何备份数据 是什么 Rancher 是一个为 DevOps 团队提供的完整的 Kubernetes 与容器管理解决方案的开源的企业级容器管理平台.它解决 ...
- Docker容器管理平台Rancher高可用部署——看这篇就够了
记得刚接触Rancher时,看了官方文档云里雾里,跟着官网文档部署了高可用Rancher,发现不管怎么折腾都无法部署成功(相信已尝试的朋友也有类似的感觉),今天腾出空来写个总结,给看到的朋友留个参考( ...
- [转帖]devops 容器管理平台 rancher 简介
https://testerhome.com/topics/10828 chenhengjie123 for PPmoney · 2017年11月13日 · 最后由 c19950809 回复于 201 ...
- 物联网架构成长之路(24)-Docker练习之Compose容器编排
0.前言 一开始学的之后,是想一步到位直接上Kubernetes(K8s)的,后面没想到,好像有点复杂,有些概念不是很懂.因此学习东西还是要循序渐进,慢慢来.先了解单机编排技术Docker Compo ...
- 物联网架构成长之路(29)-Jenkins环境搭建
0. 说明 哈哈,前面中间插入了一篇Eclipse增加Git插件,在此之前真的没有用过GIT. 1. 运行Jenkins 这里为了方便,还是用Docker方式安装,由于这个是标准的war报,不对Doc ...
- 物联网架构成长之路(16)-SpringCloud从入门到吹水
1.前言 Spring Cloud 现在比较流行,版本更新也是蛮快的,网上资料也是很多.很多参考网上资料就可以学到了.这里给个 http://blog.csdn.net/forezp/article/ ...
- 物联网架构成长之路(22)-Docker练习之Etcd服务搭建
0. 前言 时隔多日,前段时间忙完一个可有可无的项目后,又进入摸鱼时间,没有办法,非互联网公司,就是闲得蛋疼.又开始了自学之路.以前入门过Docker,然后又很久没有看了,最近重新看了一下,推荐一下这 ...
随机推荐
- csrf攻击与csrf防御
CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站 ...
- SEH hook 的一种方法
Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html 技术学习来源:火哥(QQ:471194425) 该方法的一些原理暂 ...
- c# winform 窗体失去焦点关闭(钩子实现)
先来一个辅助类 using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Inte ...
- 面试题-JavaScript交换两个变量的方法
在平时的业务开发或者面试过程中,经常会遇到交换两个变量这种问题,于是,个人总结以下几种交换变量的方法: 1.方案一 使用一个临时变量来交换 2.方案二 使用ES6解构赋值语法来交换 3.方案三利用数 ...
- DDoS攻击工具
DDoS攻击工具 综合性工具 综合性工具除了可以进行DDoS攻击外,还可用于其他的用途,例如:端口扫描.安全审计.防火墙等.实际上,大部分综合性工具开发的原始目的并不是用于DDoS,而是"网 ...
- 从0系统学 Android--1.1认识 Android
一转眼工作也有几年的时间了,一直想沉下心来,再回过头来重新系统的学习一遍 Android.所以就有了这个读书笔记.俗话说温故而知新,下面就请大家再跟着我系统的学习一篇 Android 吧! 这一系列主 ...
- 5个 JS 解构有趣的用途
摘要: 玩转ES6解构赋值. 原文:5个 JS 解构有趣的用途 译者:前端小智 1. 交换变量 通常交换两个变量的方法需要一个额外的临时变量,来看看例子: let a = 1; let b = 2; ...
- ACM-ICPC 2018 南京赛区网络预赛 I. Skr(回文树)
题意 https://nanti.jisuanke.com/t/A1955 求所有本质不同的回文串转成数后的和. 思路 如果了解回文树的构造原理,那么这题就很简单了,回文树每个结点代表一个回文串,每添 ...
- TensorFlow Federated:基于分散式数据的机器学习
https://www.tensorflow.org/federated/ TensorFlow Federated (TFF) 是一个开源框架,用于对分散式数据进行机器学习和其他计算.我们开发 TF ...
- (六)Amazon Lightsail 部署LAMP应用程序之升级到Amazon EC2
升级到Amazon EC2 将Amazon Lightsail实例升级为Amazon EC2 您将进行以下操作: ①创建使用 Amazon RDS的Web前端实例的快照 ②将该快照导出到 Amazon ...