【下一代核心技术DevOps】:(六)Rancher集中存储及相关应用
1. 前言
为什么要使用集中存储? 使用集中存储有个很大的优势是数据安全和统一管理,和集群完美配合。 产品集成存储经历过几个阶段:
1.单机本机存储。 系统使用本地硬盘存储
2.单网络集中存储。 局域网主机使用同一网络内的磁盘阵列存储单元
3.分布式集群本地存储。 集群节点使用自己本地硬盘存储。
4.分布式集群集中存储。集群节点使用集中存储(其背后可以是单一存储也可以是分布式存储,集中存储相当于一个代理入口)
其中云计算用的最多的是 3,4 这几个。主要适应于网络架构的分布式设计和基本云计算存储,如多机房,多地存储。使用集中存储给运维带来的最大
优势就是核心数据保存,不怕应用崩溃,各种docker容器都可以随时抛弃,重建。不用担心数据问题。
2. Rancher中使用集中存储NFS
Rancher对Docker集群的管理已经是非常方便,默认是没有加载共享存储的,我们这里使用RancherNFS插件来实现一个统一的存储,
当然也可以选择其他的插件,目前官方只有这一个,其他非官方的如CephFS,FastDfs等请自行添加插件或自写插件来实现。在此不做过多解读
点击Rancher应用商店,搜索nfs,找到官方插件并添加
填写主机地址:IP
目录: 建议不要填 / 而是指向NFS服务器存储的一个目录
ON_Remove: Purge: 删除映射目录时会删除NFS远程对应的数据 Retain:不删除远程数据
点“启动”即可 ,Rancher会在各个宿主机上面添加NFS驱动
查看NFS驱动,每个宿主机都已启动完毕
使用NFS:
我们在添加服务的时候, 可以配置下卷 name:/容器对应目录
填 logs:/opt/logs 会对应远程NFS里面 新建的 logs目录
如果填 /logs:/opt/logs 则是常用的卷映射,会写入宿主机本地的/logs目录
驱动填写默认的 rancher-nfs
这样 容器里面读写的文件就直接操作远程Nfs服务器了
查看效果:
启动应用后,容器的日志已经输出到NFS里面了。
用途及注意事项:
主要是针对日志类的,可以统一做日志搜集。
针对于数据持久化的,如MySQL数据 可以 通过映射 mysql/data:/var/lib/mysql 把数据集中存储到NFS上
注意:1. 集中存储要考虑到同时读写的问题,即Lock。 有的程序无法同用一套数据,这时候要考虑到单独读写或放到多个变量子目录
如MySQL无法同时起2个实例读写一套数据。
2. NFS插件还有不完善的地方, 如只能映射目录,无法映射文件 ,我们常用的 -v /nginx.conf:/nginx.conf 就无法使用了。
3. 多NFS服务器配置,无法从UI界面添加, 只能从YML文件来处理。
4. 集中存储一定要考虑速度问题,毕竟网络传输没有本地传输速度快,尽量选择公有云/私有云网络是走光纤通道的。尽量不要跨地域传输,如深圳的使用上海的NFS服务器
5. 尽可能使用可靠性有保障的存储,毕竟服务器,容器神码的都可以丢弃,数据是要绝对安全的。推荐阿里云的NFS服务,可以保障9个9的安全性。
【下一代核心技术DevOps】:(六)Rancher集中存储及相关应用的更多相关文章
- 【下一代核心技术DevOps】:(五)微服务CI与Rancher持续集成
1. 引言 DevOps的核心魅力是快速的持续集成交付,降低研发和实施运维之间的交互,使得传统的各种扯皮现象统统消失.最重要的是降低成本 保障产品交付可靠性. 使用Rancher作为持续集成的关键环节 ...
- 【下一代核心技术DevOps】:(一)容器服务的Rancher选型
为什么说是下一代核心技术 其实经过互联网的多次变革说起,早期的C/S架构,到后来的B/S架构,一直到现在最普遍的M/S架构,他们的背后都是技术不断的优化改进,以适应促进IT技术的发展 整体而言在过去1 ...
- 【下一代核心技术DevOps】:(二)Rancher的应用及优点简介
1.环境选择 安装Rancher环境,一定要在干净的linux主机上进行,避免出现因配置导致的莫名其妙的问题.服务器操作系统建议CentOS7.4(内核3.10以上)低于这个版本的系统 如7.3 7. ...
- 【下一代核心技术DevOps】:(七)持续集成Jenkins的应用(Aliyun Pipiline持续构建)
1. 前言 使用Jenkins比较好的就是可以在整个构建顺序中增加自定义的动作,比如构建成功给Leader发个邮件,给团队核心发个微信什么的. 当然最基本的核心还是它可以构建多种开发语言的项目,此类构 ...
- 【下一代核心技术DevOps】:(四)私有镜像库阿里云Docker服务使用
1.使用阿里云镜像库有很多优点 稳定可靠,阿里技术,放心使用. 国内cdn多节点加速,下载速度非常快 可以和阿里云Git代码集成,不需要第三方CI工具,当然带的自动构建服务也可以和其他的Git库集成, ...
- 【下一代核心技术DevOps】:(三)私有代码库阿里云Git使用
1. 引言 使用DevOps肯定离不开和代码的集成.所以要想跑通整套流程,代码库的选型也是非常重要的.否则无法实现持续集成.目前比较常用的代码管理有SVN和GIt 如果还使用SVN的,建议尽早迁移到G ...
- spark 源码分析之十六 -- Spark内存存储剖析
上篇spark 源码分析之十五 -- Spark内存管理剖析 讲解了Spark的内存管理机制,主要是MemoryManager的内容.跟Spark的内存管理机制最密切相关的就是内存存储,本篇文章主要介 ...
- Kubernetes学习之路(十六)之存储卷
目录 一.存储卷的概念和类型 二.emptyDir存储卷演示 三.hostPath存储卷演示 四.nfs共享存储卷演示 五.PVC和PV的概念 六.NFS使用PV和PVC 1.配置nfs存储 2.定义 ...
- rancher中级(一)(rancher的存储,网络)
容器的存储机制 参考 http://dockone.io/article/128:http://dockone.io/article/129: Docker镜像是由多个文件系统(只读层)叠加而成.当我 ...
随机推荐
- 大表分批删除脚本之MySQL版
经常需要定期对某些表删除历史数据,通常这样的表的数据又是非常巨大,为了减轻对线上环境的影响,删除时必须分成小批量来进行. 以前分享过SQLServer的版本. 下面是MySQL版本: delimite ...
- MySQL5.7 GTID学习笔记,[MySQL 5.6] GTID实现、运维变化及存在的bug
GTID(global transaction identifier)是对于一个已提交事务的全局唯一编号,前一部分是server_uuid,后面一部分是执行事务的唯一标志,通常是自增的. 下表整理 ...
- cmd 命令
cmd 在桌面或任意磁盘新建一个TXT--输入CMD并保存--修改扩展名为.BAT md 文件夹名 新建文件夹cd 文件夹名 进入到该目录cd.. 返回上一层目录cd\ 返回根目录cd.>文件名 ...
- PHP实现简单下载功能
PHP实现简单下载 PHP文件为download.php,供下载的文件为1.jpg. <?php $filename="1.jpg"; if(!file_exists($fi ...
- Visualbox与CentOS 6.4之间鼠标切换
按住键盘右边的Alt键,再按一下(右边)ctrl键,这样可以实现鼠标能在主机与虚拟机之间自由切换.
- CMD(命令提示符)命令大全及网络安全课程中所用到的命令
CMD命令大全详解: 1.arp -a 获得IP地址,MAC地址. 2.arp -d * 命令用于清空arp缓存表. 3.arp –s 网关IP 网关MAC 命令则是将网关IP地址与其相应的MAC地址 ...
- Frameworks(不定时更新)
iOS8.4 Frameworks 更新时间:2015年8月17日 Accelerate iOS4.0引入了Accelerate框架,该框架的接口可用于执行数学.大数字以及DSP运算.和开发者个人编写 ...
- Android Studio入门问题汇总
1.如何设置 AS 中的字体大小 2.如何切换 AS 的皮肤颜色,默认为黑色,修改为白色,改为 default 3.首次安装 Android Studio并打开时,如果创建了一个新工程并将工程保存在另 ...
- 控件_TimePicker
import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view ...
- cronolog分割tomcat日志文件
tomcat日志备份磁盘压力解决方案,使用cronolog每日生成文件uat部署操作如下,,观察两天,下周一部署生产message系统,后续根据需求部署到其它业务线 示例方案:uat—message0 ...