kubernetes环境搭建(Rancher篇)

主要内容

1.Rancher介绍
2.通过Rancher部署kubernetes环境(国内加速)
3.问题分析
4.总结

1.Rancher介绍

中文官网:https://www.cnrancher.com/
官方简介:http://rancher.com/docs/rancher/v1.6/zh/
- 容器管理平台
- 一套解决容器平台网络、存储、负载均衡等的基础设施服务
- 集成主流的容器编排工具Docker Swarm, Kubernetes, 和Mesos,基本实现一键部署
- 应用商城,方便添加常用第三方开源工具
- 企业级权限管理
- 部署便捷,提供官方开源容器镜像和RancherOS

2.通过Rancher部署kubernetes环境(国内加速)

准备工作:
1.关闭防火墙,启动iptables,清空iptables规则
2.修改host配置主机名(放在hosts文件开始,首先被匹配),/etc/rc.d/init.d/network restart
3.删除可能相关的容器,镜像可以保留
4.删除相关文件
5.启用ipv4转发

2和4可参考https://www.cnrancher.com/optimizing-rancher-k8s-use-experience-in-china/,慎用!!!

2.1.安装Rancher

Rancher2.0 release 将在近期发布(目前alpha),提供大量新的特性并且对于kubernetes将会提供更友好的支持,本文使用上一个稳定版1.6.12

sudo docker run -d --restart=unless-stopped -p 28080:8080 rancher/server:1.6.12

2.2.配置管理员登录密码

通过用户名密码的方式

等待server容器启动完成,进入UI,启用local权限控制,配置管理员登录名/密码;

2.3.设置国内加速kubernetes环境模板

应为Rancher默认从gcr.io下载kubernetes环境所需要的镜像,然而由于墙的原因并不能;
这里提供Rancher官方群里一位大神(anjia0532)同步在dockerhub上的镜像(https://hub.docker.com/u/anjia0532/)

进入 环境–》环境管理,点击添加环境模板

kubernetes环境搭建(Rancher篇)_第1张图片

配置环境模板基本信息,选择“Kubernetes”作为编排工具,点击“编辑设置”,修改环境默认镜像地址;

kubernetes环境搭建(Rancher篇)_第2张图片

仅修改如下几个选项的配置:

  • Private Registry for Add-Ons and Pod Infra Container Image: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

kubernetes环境搭建(Rancher篇)_第3张图片

kubernetes环境搭建(Rancher篇)_第4张图片

保存配置,回到“环境管理“界面;

2.4.创建Kubernetes环境

使用2.3创建的环境模板创建kubernetes环境

点击”添加环境“,填写环境基本信息,并选择之前创建的kubernetes环境模板,点击创建;
回到”环境管理“界面,设置新建环境为默认环境;

kubernetes环境搭建(Rancher篇)_第5张图片

kubernetes环境搭建(Rancher篇)_第6张图片

2.5.添加主机

环境创建完成后,如果之前没有添加过主机,Rancher进入等待部署阶段;

点击导航栏,进入新创建的环境,查看环境状态,确认其处于待添加主机状态(无截图…);

kubernetes环境搭建(Rancher篇)_第7张图片

按提示,添加主机

在主机上运行的容器会自动完成注册,建议添加两台以上主机


主机名和标签应该合理,后期可通过标签定义调度规则

kubernetes环境搭建(Rancher篇)_第8张图片

2.6.环境自动部署

主机添加成功后,Rancher会自动部署Kubernetes环境,等到当前环境出现如下界面,表示环境部署完成;
kubernetes环境搭建(Rancher篇)_第9张图片

kubernetes环境搭建(Rancher篇)_第10张图片

3.问题分析

  • 添加主机名不一致或都为localhost

Rancher通过host确定主机名,而host第一条匹配规则对应的别名为localhost,修改主机host文件即可重命名主机名;

  • 作为Rancher主机的服务器应该有合理的性能配置,否则会导致某些服务无规则的重启(可见Rancher的故障恢复功能还是挺强大的)

  • 主机一直处于”未激活“状态,即使agent容器已经启动

    在保证没有其他因素的前提下,可以尝试重启主机的Docker服务

4.总结

Rancher作为全栈式的容器管理平台,不仅在常见容器编排工具的基础上实现了容器的编排、调度和管理;同时通过第三方应用(平台提供的应用商店),可以实现持续集成(CI)/持续部署(CD)、环境管理等;并且,在后续版本中,Rancher会加大力度优化对目前最常见的编排工具Kubernetes的支持,这也一定会使得Kubernetes环境的部署、管理和运维变得更加便捷;

你可能感兴趣的:(Rancher,&,K8s)