博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Rancher2.x--stable版本环境搭建
阅读量:2068 次
发布时间:2019-04-29

本文共 3860 字,大约阅读时间需要 12 分钟。

序言

    目前K8S是大趋所示,对容器的编排管理有一统江湖的意思。

  • Rancher 2.0发布之后,基础编排平台从Cattle变成了Kubernetes,Rancher 2.0使用的编排技术完成转向成为Kubernetes,
  • Rancher 2.0与Rancher 1.6有了很大区别。目前,在这两个版本之间还没有直接的升级路径。

    基于如上的种种原因我们直接从Rancher2.X开始学习,没有必要再去学习一定会被取代的东西和知识点了。

本文主要内容来自于:

  1.   -----------api说明
  2.                ----------------------rancher2.X版本总说明页面
  3.                  ------------2.4.X版本的安装与2.5.X版本的安装不一样.
  4.     (特别鸣谢+>+)

准备工作

安装失败处理办法

如果内置启动创建K8S会有很多问题,这时候就需要清空下实例,重新搭建.方法如下(心酸的血泪史,建议不要安装最新版本的rancher因为未知的坑在等待你,选择rancher/rancher:stable版本):

docker stop $(docker ps -aq)docker system prune -fdocker volume rm $(docker volume ls -q)for mount in $(mount | grep tmpfs | grep '/var/lib/kubelet' | awk '{ print $3 }') /var/lib/kubelet /var/lib/rancher; do umount $mount; donerm -rf /etc/ceph \       /etc/cni \       /etc/kubernetes \       /opt/cni \       /opt/rke \       /run/secrets/kubernetes.io \       /run/calico \       /run/flannel \       /var/lib/calico \       /var/lib/etcd \       /var/lib/cni \       /var/lib/kubelet \       /var/lib/rancher/rke/log \       /var/log/containers \       /var/log/pods \       /var/run/calico

 

安装Rancher 2.x

首先需要安装Docker,具体参考

#修改时区[cuiyaonan2000@mzdssop soft]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime#首先同步时间,这个在集群环境中非常重要[cuiyaonan2000@mzdssop soft]# yum -y install ntp[cuiyaonan2000@mzdssop soft]# systemctl enable ntpd[cuiyaonan2000@mzdssop soft]# systemctl start ntpd[cuiyaonan2000@mzdssop soft]# timedatectl set-ntp yes[cuiyaonan2000@mzdssop soft]# ntpdate -u cn.pool.ntp.org[cuiyaonan2000@mzdssop soft]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime   [cuiyaonan2000@mzdssop soft]# watch -n 1 'date'#关闭Selinux[cuiyaonan2000@mzdssop soft]# sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config#修改语言环境[cuiyaonan2000@mzdssop soft]# sudo echo 'LANG="en_US.UTF-8"' >> /etc/profile;source /etc/profile#安装anchore最新版本 #注意这里增加了一个 --privileged,如果不加则会报错#privileged 的作用其实就是启动的 container内的root拥有真正的root权限#2.4.X即以前不需要使用privileged#2.5.X需要使用privileged[cuiyaonan2000@mzdssop soft]# sudo docker run -d --restart=unless-stopped --name myRancher  -p 80:80 -p 443:443 rancher/rancher

设置账号密码,以及设置能访问该rancher的ip或者域名

 

右下角将英文切换成中文,左下角是rancher的版本号

创建K8S集群

点击集群选项卡右上角的----添加集群--》选择自定义创建

可以看到K8S的服务商有很多哈,这里我们是选择从现有节点中创建。cuiyaonan2000@163.com

这里只输入个集群名称就行了,同时也可以选择K8S的版本这里我就用的默认

 

如下的这个步骤很重要(这里的命令是用于添加集群,同时给运行的集群设置角色,------即不同机器添加不同的角色,运行不同的命令)

  • 主机选项中勾选 Etcd 与 Control 两个选项,复制命令,然后在 master 主机执行命令---如此表示该主机是管理机器
  • 主机选项中勾选 Worker ,复制命令,然后在 node 主机执行命令----如此表示该主机是工作主机
  • 官方文档说明的是,在主机和工作机器上都分别执行后再点击如下截图的完成。但是后续应该可以再动态添加的。cuiyaonan2000@163.com

执行完上面的步骤后--其实要很长时间这里我就做了2台虚拟机。

如下所示:红色字体表示当前正在做的事情-----全自动。中间如果服务器挂掉了也没事它也会自动重启然后在继续搭建k8s服务器

因为--restart=unless-stopped   总之这是个很漫长的过程 慢慢等待吧,除非有什么问题。

如下可以看到2个角色 一个是 所有角色 一个 worker角色,且都在配置阶段------这个有点坑为啥呢,因为中间如果有问题你不知道啊,然后程序就会不断的重启去搭建K8S。。。。。。很坑

 

最终如果现实如下的内容就表示成功了.状态是active,处理器和内存占有率可以看到,最新版本的安装把我坑惨了,各种问题~~~~~~~~~~~~~~~~~~~~~~~~~

 

部署服务--官方说法部署工作负载

工作负载即 Kubernetes 对一组 Pod 的抽象模型,用于描述业务的运行载体,包括 Deployment、Statefulset、Daemonset、Job、CronJob 等多种类型,详情请参考。

官网上提供了两种类型的工作负载:它们都是将集群外部流量导入到集群内的方式,只是实现方式不同-----cuiyaonan2000

NodePort

NodePort 服务是引导外部流量到你的服务的最原始方式

NodePort,正如这个名字所示,在所有节点(虚拟机)上开放一个特定端口,任何发送到该端口的流量都被转发到对应服务。

 

Ingress---所以选你了

Ingress 事实上不是一种服务类型。相反,它处于多个服务的前端,扮演着“智能路由”或者集群入口的角色。

例如:任何发往域名 foo.yourdomain.com 的流量转到 foo 服务,将路径 yourdomain.com/bar/path 的流量转到 bar 服务。

用例部署

Rancher Server 中存在一个项目的概念,默认存在两个项目:default 和 system,类似于 namespaces 但是并不是 namespaces,而且 namespaces 还率属于某项目下,项目可以配置 Pod 安全策略以及资源配额,可以理解为更好的划分各个项目资源隔离。default 项目可以理解为非系统项目的个人自定义项目system 项目可以理解为具有所有 Kubernetes 和 Rancher 系统命名空间的系统项

在我们成功创建一个集群后,系统会自动创建2个项目一个是Default,一个是System,如下图所示.这里我们选择Default里面进行相关容器的部署

 

选择-->部署服务

你可以在部署页中输入你的应用名称,可以指定部署多少个Pod(k8s中的概念),选择对应的镜像,然后配置各种参数策略,

如果你想进行数据持久化可以到数据卷的tab中进行配置,

如果你有参数的定义可以到环境变量的tab中进行指定,最后再启动它。

这看起来似乎是更方便的让我们执行了docker run命令,前提是你得熟悉docker中各种命令的使用及含义

如下我们启动一个tomcat镜像----这里有个小问题就是tomcat镜像没法用,启动了访问不了,使用tomcat:alpine镜像就没问题cuiyaonan2000@163.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载地址:http://hbcmf.baihongyu.com/

你可能感兴趣的文章
计算机英语编程中一些单词
查看>>
JavaScript 经典例子
查看>>
判断数据的JS代码
查看>>
js按键事件说明
查看>>
AJAX 初次体验!推荐刚学看这个满好的!
查看>>
AJAX 设计制作 在公司弄的 非得要做出这个养的 真晕!
查看>>
AJAX 自己研究玩的
查看>>
javascript(js)数组操作
查看>>
用JavaScript脚本实现Web页面信息交互
查看>>
window 窗口对象操作
查看>>
公司一位老员工愤然离去的留信!崩溃!
查看>>
C#技巧:网页表单自动填写技术(以gmail为例)
查看>>
C#基础概念二十五问
查看>>
C#在Excel中将连续多列相同数据项合并
查看>>
C#如何把html中的相对路径变成绝对路径
查看>>
用C#编写发手机中文短信息Windows服务
查看>>
C#的四个基本技巧
查看>>
编程实例 使用C#的BitmapData
查看>>
区分Oracle和SQL Server常用函数调用方法
查看>>
详解Visual C#数据库基本编程
查看>>