目录

1、简介

2、实验环境

3、应用商店中部署longhorn

4、创建工作负载,使用longhorn存储

5、查看longhorn UI

6、注意事项

1、简介

Longhorn是RancherLab为K8S环境研发的一种分布式块存储系统。Longhorn轻便易用,你可以用Kubectl命令,在一个现有的K8S集群上快速部署。结合Rancher2.0环境中的应用商店,还可以实现一键部署,为K8S集群环境提供动态的StorageClass持久卷支持。

Longhorn使用容器和微服务方式来实现分布式块存储。它为每个块设备创建了专用存储控制器,并在多个节点上跨多个副本同步复制卷,存储控制器和副本本身也是使用K8S编排的,还支持快照和备份功能。

2、实验环境:

4台主机使用Rancher2.0搭建K8S环境,角色及基本信息如下:

机器名      IP地址      主机角色      

Rancher2  192.168.3.220  Rancher Server

Node221  192.168.3.221  etcd、control、worker

Node222  192.168.3.222  etcd、control、worker

Node223  192.168.3.223  etcd、control、worker

图1-使用rancher2.0部署的K8S集群环境

3、应用商店中部署longhorn

图02-在全局环境下启用官方认证应用商店

图03-在项目default中的应用商店中,启动longhorn应用

图04-在项目default中的应用商店中,启动longhorn应用

图05-点击启动按钮,即可完成Longhorn部署,可通过端口访问UI管理面板

图06-部署Longhorn应用以后,各主机上的Pod状态

图07-此时集群Cluster中已经自动创建好了存储类StorageClass

4、创建工作负载

图08-在项目的工作负载中,部署一个服务

图09-部署工作负载-工作负载数量只能是1个Pod

图10-部署工作负载-卷-添加新的持久化卷声明

图11-部署工作负载时,添加卷声明的设置

图12-部署工作负载时,设置挂载点后,启动工作负载2

图13-工作负载nginx部署完毕

图14-工作负载nginx容器中的目录sss

5、查看Longhorn UI

图15-在负载均衡中访问Longhorn UI

图16-LonghornUI中能看到有3台主机和刚刚创建的1个卷

图17-LonghornUI中能看到有3台主机和刚刚创建的1个卷的副本

图18-LonghornUI中卷的信息

图19-LonghornUI中卷的信息

图20-K8S集群中持久卷的信息,已包含刚刚创建的持久卷

6、注意事项:

1、因为是块设备,工作负载中的Pod数量只能是1个;

2、因为是块设备,创建持久卷声明时,只能选择单主机读写,不能像NFS那样可以多主机读写,块设备选择多主机读写会出错。

3、Longhorn是一个正在进行中的项目,目前只发布0.1/0.2/0.3这3个版本。


参考链接:

Longhorn在Github上的链接:

https://github.com/rancher/longhorn

https://github.com/rancher/longhorn-manager

https://github.com/rancher/longhorn-ui

Rancher2.0中部署Longhorn分布式存储实验的更多相关文章

  1. Rancher2.0中使用外置NFS存储部署Nginx实验

    目录: 1.环境准备工作 1.1 准备好Rancher2.0集群环境 1.2 准备好外部NFS服务器 2.Rancher2.0中使用NFS存储的方法 2.1 在集群中创建持久卷(PV) 2.2 在项目 ...

  2. surging+CentOS7+docker+rancher2.0 入门部署教程

    准备工作 开发环境  Visual Studio 2017 15.5 运行环境  虚拟机CentOS 7+Docker+Rancher 2.0+Consul+RabbmitMQ 项目下载地址  htt ...

  3. surging+CentOS7+docker+rancher2.0 菜鸟部署运行笔记

    https://blog.csdn.net/q5934/article/details/82661250 目录 准备工作 开始干活 1.从github 获取surging源码 2.发布Surging. ...

  4. Rancher2.0中邮件通知的设置

    1-邮件通知的设置-中国电信189邮箱 2-2-邮件通知的设置-腾讯免费企业邮箱 **说明:网易163邮箱.QQ邮箱没有设置成功,可能是因为邮箱设置得太安全的缘故.   参考链接: 中国电信189邮箱 ...

  5. [原]CentOS7安装Rancher2.1并部署kubernetes (二)---部署kubernetes

    ##################    Rancher v2.1.7  +    Kubernetes 1.13.4  ################ ##################### ...

  6. [原]CentOS7安装Rancher2.1并部署kubernetes (一)---部署Rancher

    ##################    Rancher v2.1.7  +    Kubernetes 1.13.4  ################ ##################### ...

  7. [原]CentOS7安装Rancher2.1并部署kubernetes (三)---解决登录kubernets超时和部署测试Pod和Containter[nginx为例]

    ##################    Rancher v2.1.7  +    Kubernetes 1.13.4  ################ ##################### ...

  8. 在Ubuntu中部署并测试HyperLedger Fabric 0.6

    最近开始研究区块链,对这个新兴的技术有了基本概念上的了解,所以打算基于一个开源项目做做实验.如果是做数字货币,那么比特币的源代码是最好的了,不过这算是区块链1.0吧,已经有很多改进的竞争币和山寨币出来 ...

  9. Eclipse中部署hadoop2.3.0

    1 eclipse中hadoop环境部署概览 eclipse 中部署hadoop包括两大部分:hdfs环境部署和mapreduce任务执行环境部署.一般hdfs环境部署比较简单,部署后就 可以在ecl ...

随机推荐

  1. 【Android】快速开发偷懒必备(二) 支持DataBinding啦~爽炸,一行实现花式列表[申明:来源于网络]

    [Android]快速开发偷懒必备(二) 支持DataBinding啦~爽炸,一行实现花式列表[申明:来源于网络] 地址:http://blog.csdn.net/zxt0601/article/de ...

  2. 在IOS应用中打开另外一个应用的解决方案

    最近要在IOS中实现一个应用启动另外一个应用的功能,搜了一些资料,使用UIApplication的openURL:的方法就能实现,现在整理和大家分享一下! 注册自定义URL协议 首先被启动的应用需要向 ...

  3. Mycat了解下

    首先说下,因为本身不怎么推荐中间件,所以我对这东西也只是了解,业内mycat用的最好的应该顺风算一个,但是他们是做过二次开发的,咱菜鸡比不了,据说最近出来一个叫cetus的还不错,有空可以关注下 Ⅰ. ...

  4. winfrom弹出窗口用timer控件控制倒计时20秒后关闭

    功能描述: 因为在程序退出时需要确认是否是误操作,所以加了密码输入的子窗体,子窗体在20秒内会自动关闭 代码如下: private int count; private void Form2_Load ...

  5. GitHub的操作

    一.查看自己的信息:git config --list 修改config文件:01.输入vim ~/.gitconfig(回车) 02.点击 i.o或a 进入编辑模式 03.修改所要修改的信息 04. ...

  6. .net core使用ef core操作mysql数据库

    新建.net core webapi项目 在NuGet包管理器中搜索 MySql.Data.EntityFrameworkCore并安装,安装的8.0.14版本,只安装这一个就够了 安装后创建Data ...

  7. 《Java程序设计》第二周学习记录(2)

    目录 3.1 运算符与表达式 3.3 if条件分支语句 3.7 for语句与数组 参考资料 3.1 运算符与表达式 和C语言基本上没有区别,要注意的是关系运算符的输出结果是bool型变量 特别要注意算 ...

  8. Software Testing 3

    Questions: • 7. Use the following method printPrimes() for questions a–d. 基于Junit及Eclemma(jacoco)实现一 ...

  9. netty如何实现零拷贝

    根据 Wiki 对 Zero-copy 的定义: "Zero-copy" describes computer operations in which the CPU does n ...

  10. javascript:void(0) 和 href="#"的区别

    <a href="javascript:void(0);">点击 <a href="#">点击 如果使用下面一种方式,会跳到网页顶部. ...