目前创建K8S集群的安装程序最受欢迎的有Kops,Kubespray,kubeadm,rancher,以及个人提供的脚本集等。

Kops和Kubespary在国外用的比较多,没有处理中国的网络问题,没法使用。

kubeadm是Kubernetes官方提供的k8s部署工具,不过不支持HA,且支持的docker版本、K8S版本也有限,因此无法作为生产级安装程序。

Rancher2016年的新起之秀,可以做到极简快速部署管理Docker,并支持多种编排方式:Cattle、Kubernetes、Mesos、Swarm等。通过修改镜像库的方式可以实现在国内的使用。所以我们选择Rancher作为Docker管理部署框架。

目前Rancher主要分两个大版本:1.6stable,2.0preview。

1.6需要手动选择编排工具,rancher2.0则是完全构建在K8S之上的容器管理平台,包含内置的Kubernetes Master。这也意味着通过命令启动rancher的时候,就立刻启动了一个kubernetes集群。使用上也相比1.6优化了许多。不过目前2.0只是预览版,安装的过程中还有bug,无法成功。2018年初将会推出正式版,希望会解决这个问题。

现在1.6stable已经安装成功,Docker的编排、Kubernetes的部署也都没有问题。

部署

操作系统:CentOS7.4 (必须要CentOS7.3以上)

启动

docker run -d --restart=unless-stopped -p 8080:8080 rancher/server:stable

这里先说一下注意事项:

①rancher分为master和agent。二者最好分开部署,不要让一个节点既是master又是agent

②节点的资源要求:内存要不小于4G,推荐8G以上。4G以下,运行时服务经常会停止。

③所有节点都要配置时间同步

④提前将镜像下载到节点并加载,可以大幅度提升安装速度。(也可以搭建docker镜像私库)

⑤启用Docker的中国加速器,否则部署会很慢

参照 https://www.docker-cn.com/registry-mirror 或者 https://www.daocloud.io

安装Docker

在CentOS7+上可以通过yum直接安装(这个版本是1.12.6)。

yum -y install docker

启用中国加速器

echo '{"registry-mirrors": ["http://bcfb7352.m.daocloud.io"]}' > /etc/docker/daemon.json

如果之前装有其他版本的,需要删除所有镜像和容器,并卸载docker重装,rancher k8s 目前只支持 docker 1.12.3+ 的版本

安装rancher

docker run -d --restart=unless-stopped --name=rancher-server -p 8080:8080 rancher/server:stable && docker logs -f rancher-server

安装k8s

如果之前安装过docker和k8s,需要运行

docker rm -f -v $(docker ps -aq)

docker volume rm $(docker volume ls)

rm -rf /var/etcd/

创建环境模板

修改k8s模板

修改模板中的以下属性

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

Image namespace for Add-Ons and Pod Infra Container Image:anjia0532

Image namespace for kubernetes-helm Image:anjia0532

Pod Infra Container Image: anjia0532/pause-amd64:3.0

创建k8s环境

选择k8s环境并添加主机

查看k8s基础服务状态

当基础服务都是绿色后,即可使用

查看k8s 仪表板 dashboard

参照:

rancher中国区加速安装Kubernetes

Rancher+K8S部署手册的更多相关文章

  1. Kubernetes 1.13 的完整部署手册

    前言: 非常详细的K8s的完整部署手册,由于Kubernetes版本和操作系统的版本关系非常敏感,部署前请查阅版本关系对应表 地址:https://github.com/kubernetes/kube ...

  2. MariaDB Galera Cluster部署手册

    MariaDB Galera Cluster部署手册 galara保证双主数据库的同步及一致性 1.环境准备 基于新部署.最小化安装centos6.5 1>  yum install opens ...

  3. LVS+MYCAT+读写分离+MYSQL主备同步部署手册

    LVS+MYCAT+读写分离+MYSQL主备同步部署手册 1          配置MYSQL主备同步…. 2 1.1       测试环境… 2 1.2       配置主数据库… 2 1.2.1  ...

  4. 【转载】LVS+MYCAT+读写分离+MYSQL主备同步部署手册(邢锋)

    LVS+MYCAT+读写分离+MYSQL主备同步部署手册 1          配置MYSQL主备同步…. 2 1.1       测试环境… 2 1.2       配置主数据库… 2 1.2.1  ...

  5. Python服务Dokcer化并k8s部署实例

    这篇文章记录了我试验将一个基于python的服务docker化并k8s部署的过程. 服务介绍Docker化设计业务代码改造创建docker镜像K8S部署设计yaml文件运行服务介绍这是一个用 pyth ...

  6. OpenStack Kilo版加CEPH部署手册

    OpenStack Kilo版加CEPH部署手册 作者: yz联系方式: QQ: 949587200日期: 2015-7-13版本: Kilo 转载地址: http://mp.weixin.qq.co ...

  7. [转帖]Oracle 11G RAC For Windows 2008 R2部署手册

    Oracle 11G RAC For Windows 2008 R2部署手册(亲测,成功实施多次) https://www.cnblogs.com/yhfssp/p/7821593.html 总体规划 ...

  8. ballerina 学习二十七 项目k8s部署&& 运行

    ballerina k8s 部署和docker 都是同样的简单,编写service 添加注解就可以了 参考项目 https://ballerina.io/learn/by-guide/restful- ...

  9. Javamelody部署手册

    Javamelody部署手册 1.  Javamelody下载 下载地址:http://code.google.com/p/javamelody/downloads/list(注:需要FQ才能打开下载 ...

随机推荐

  1. Apache-ActiveMQ transport XmlMessage

    前言 本文原创,转载请说明出处! Apache-ActiveMQ:是Apache提供的一款开源的消息传送服务,不论是安装还是使用都非常简单实用,可以作为消息缓存管理器来使用(个人观点),看看Activ ...

  2. js实现查询关键词,使其高亮

    今天做了一个功能:在页面上查询关键,使其高亮显示,实现代码如下: css: <style type="text/css"> .highlight { backgroun ...

  3. As of Flume 1.4.0, Avro is the default RPC protocol.

    Flume 1.8.0 Developer Guide — Apache Flume http://flume.apache.org/FlumeDeveloperGuide.html The remo ...

  4. JQuery基础与事件和动画

    JQuery语法 1.JQuery("选择器").action; 通过选择器调用时间函数 但Jquery可以用$符号代替,即$("选择器").action; ① ...

  5. 在Linux下查找文件内容包含某个特定字符串的文件

    如何在Linux下查找文件内容包含某个特定字符串的文件? 我的目录下面有test1和test2两个文件夹,里面都含有很多文件,其中test2里面还包含一个test文件夹 我想请问的是,如何通过查找关键 ...

  6. 添加github ssh 公钥

    1.在控制台输入命令: ssh-keygen -t rsa -C "github上的邮箱地址" 2.将公匙复制后添加到github网站:    id_rsa.pub文件 3.测试是 ...

  7. php strtotime 函数UNIX时间戳

    int strtotime ( string time [, int now]) 本函数预期接受一个包含英文日期格式的字符串并尝试将其解析为 UNIX 时间戳. 如果 time 的格式是绝对时间则 n ...

  8. c++ 模板 不能 分离编译

    C++Template头文件和定义分开编译的问题 (1) // Foo.htemplate<typename T>class Foo{public:void f();}; // Foo.c ...

  9. Appium的Java封装

    文章出处 http://blog.csdn.net/niubitianping/article/details/52612211 一.为什么需要封装? 封装的本意就是为了方便.简洁. 二.Androi ...

  10. Delphi 正则表达式语法(1): 关于大小写与中文

    Delphi 正则表达式语法(1): 关于大小写与中文 //替换一般字符串 var   reg: TPerlRegEx; begin   reg := TPerlRegEx.Create(nil); ...